Functional Programming in the Wild


July 17, 2012


Antonio Cisternino, Don Syme, and Manuel Chakravarty


Microsoft Research Cambridge, University of Pisa, University of New South Wales


Kenji Takeda from Microsoft Research chairs this session at Faculty Summit 2012.

This session highlights some of the latest developments and applications of functional programming and explores how functional programming can transform business, science, and engineering in the real world, for today and tomorrow.

Information-rich programming is changing how we think about language design, with F# type providers bringing information to developers over the web. Discover how Haskell is being extended into parallel and cloud computing. And learn how functional programming is being used in the wild, from bioengineering and chemistry to engineering and finance.


Antonio Cisternino, Don Syme, and Manuel Chakravarty

I graduated from the Australian National University in 1993, and joined Microsoft Research in 1998. Before that I was a PhD. student at the University of Cambridge Computer Laboratory A while ago I spent three months at SRI and a six month jaunt at Intel Clearly my ultimate aim is to work for every multinational mega corporation in the computing game, so I’ll throw in links to IBM, Sun and Compaq for good measure.
My research interests include the formal modeling of programming languages and abstract machines and techniques for the verification of their properties. Example machines include high level languages defined by operational semantics, stack machines such as the JVM, and hardware devices at various levels of abstraction. Typical properties include correctness (by correlating the machine against a higher-level specification) and type soundness (by proving the preservation of an appropriate invariant, which is implied by a statically checked condition). Typical techniques include model checking, automated reasoning, abstract interpretation and manual declarative proof declare/index.htm.
Since joining MSR I’ve worked extensively with the COM+ team analyzing their code verification mechanism along with Andy Gordon.