Thu 16 Jun 2016 16:00 - 16:30 at Grand Ballroom San Rafael - Types II Chair(s): Jean Yang

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!

In this paper, we integrate external structured data into F# programming. As most real-world data does not come with an explicit schema, we develop a shape inference algorithm that infers a shape from representative sample documents and transforms the shape into F# types using type providers. We present a formalization and a relative type soundness theorem for a simplified version of this process.

Our library significantly reduces the amount of data access code and it provides additional safety guarantees when contrasted with the widely used weakly typed techniques.

Thu 16 Jun

Displayed time zone: Tijuana, Baja California change

15:30 - 17:00
Types IIResearch Papers at Grand Ballroom San Rafael
Chair(s): Jean Yang Carnegie Mellon University
15:30
30m
Talk
Just-in-Time Static Type Checking for Dynamic Languages
Research Papers
Brianna M. Ren University of Maryland, College Park, Jeffrey S. Foster University of Maryland, College Park
Media Attached
16:00
30m
Talk
Types from data: Making structured data first-class citizens in F#
Research Papers
Tomas Petricek University of Cambridge, UK, Don Syme Microsoft, Gustavo Guerra Microsoft Corporation, London
Pre-print Media Attached
16:30
30m
Talk
Automatically Learning Shape Specifications
Research Papers
He Zhu Purdue University, Gustavo Petri LIAFA, Université Paris Diderot, Suresh Jagannathan Purdue University
Media Attached