Proceedings of the 37th ACM SIGPLAN Conference on Programming Language Design and Implementation 2016
DOI: 10.1145/2908080.2908115
|View full text |Cite
|
Sign up to set email alerts
|

Types from data: making structured data first-class citizens in F#

Abstract: Most modern applications interact with external services and access data in structured formats such as XML, JSON and CSV. Static type systems do not understand such formats, often making data access more cumbersome. Should we give up and leave the messy world of external data to dynamic typing and runtime checks? Of course, not! We present F# Data, a library that integrates external structured data into F#. As most real-world data does not come with an explicit schema, we develop a shape inference algorithm th… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
11
0

Year Published

2019
2019
2022
2022

Publication Types

Select...
4
2
1

Relationship

2
5

Authors

Journals

citations
Cited by 17 publications
(11 citation statements)
references
References 23 publications
0
11
0
Order By: Relevance
“…On column type inference, we compare our method with F# (Petricek et al, 2016), hypoparsr (Döhmen et al, 2017a), messytables (Lindenberg, 2017), readr (Wickham et al, 2017), TDDA (Stochastic Solutions, 2018) and Trifacta (2018). Note that some of the related works are not directly applicable for this task, and these are not included in these experiments.…”
Section: Methodsmentioning
confidence: 99%
See 2 more Smart Citations
“…On column type inference, we compare our method with F# (Petricek et al, 2016), hypoparsr (Döhmen et al, 2017a), messytables (Lindenberg, 2017), readr (Wickham et al, 2017), TDDA (Stochastic Solutions, 2018) and Trifacta (2018). Note that some of the related works are not directly applicable for this task, and these are not included in these experiments.…”
Section: Methodsmentioning
confidence: 99%
“…However, this leads to a poor type detection performance since the Pandas reader is not robust against missing data and anomalies, where only empty string, NaN, and NULL are treated as missing data. Petricek et al (2016) propose another use of regular expressions with F#, where types, referred as shapes, are inferred w.r.t. a set of preferred shape relations.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…However, The Gamma supports type providers [9,54], which can generate types based on an external file or a REST service call, e.g. [47]. For this reason, type checking can be relatively time consuming and can benefit from the same caching facilities as those available for instant previews.…”
Section: Type Checkingmentioning
confidence: 99%
“…Scribble-Refined Recent work [27] has extended Scribble specifically for F# to leverage the language's support for refinement types [17] and type providers [31]. The authors present an expressive refinement language to specify boolean refinements related to messages being sent.…”
Section: Related Workmentioning
confidence: 99%