Tomas Petricek, Author of "Real-World Functional Programming

Tomas Petricek

Biography: Tomas Petricek

Tomas is a C# MVP, long-time F# enthusiast and author of a book Real-World Functional Programming ( which explains functional programming concepts using C# 3.0 teaching F# alongside. He writes a programming blog ( and is an active member of the F#unctional Londoners group. He contributed to the development of F# during two internships at Microsoft Research in Cambridge. Before starting PhD at Cambridge, he studied in Prague and worked as an independent .NET consultant and trainer.

Presentation: "Accessing loosely structured data from F# and C#"

Track: The New and Awesome in .NET / Time: Wednesday 16:50 - 17:50 / Location: Room 204/205

There are many data sources that have only a loosely defined structure. Examples include REST services and XML files. Using them from statically typed languages has always been problematic. Although all of these data sources have a structure, there is an impedance mismatch between explicit types in our languages and a structure that is implicit in our data sources.

In this talk, we look how to solve the problem at three different scales. At small scale, we can use support for dynamic typing in C# and F#. At medium scale, we can define the structure using functional data types and view the world through the "structural glasses" we defined. At the larger scale, we will be able to solve the problem using type providers. Type providers is a future F# technology that gives us a way to automatically import external data sources into our language and treat them as first-class citizens.