School of Computing

Feb 5
15:00 - 16:00
PLAS: Tomas Petricek (
PLAS Group Seminar
Teaching old type systems new tricks with type providers

Accessing data in statically typed languages is hard - type systems do not understand the structure of external data sources and only make data access more cumbersome, rather than providing useful safety guarantees. Should we give up and leave the messy world of external data to dynamic typing and runtime checks? Of course, not! 

In this talk, I'll show how type providers [1] simplify programming with data and recover some of the properties that programmers love about static types. First, I'll discuss how F# Data [2] uses shape inference to allow typed programming against data files and services that don't have a formal schema. Second, I'll show how the pivot type provider in TheGamna [2] takes the idea further by automatically exposing not just valid fields, but also valid data aggregation operations. 

Underlying the work is a simple question - what does safety really mean for a program which accesses data sources that it cannot control? 





Cornwallis South West,
University of Kent,
United Kingdom


Contact: O.Chitil
School of Computing

School of Computing, University of Kent, Canterbury, Kent, CT2 7NF

Enquiries: +44 (0)1227 824180 or contact us.

Last Updated: 14/08/2015