Lecture

Lightweight Monadic Programming in ML
(to appear in ICFP 2011)
01.08.2011
Speaker: Nikhil Swamy, Daan Leijen (Microsoft Research), Nataliya Guts, Michael Hicks (University of Maryland)
Date: 01 August 2011 Time: 12:00 - 13:30
Location: Stelios Orphanoudakis Seminar Room
Host: Polyvios Pratikakis

Abstract:

Many useful programming constructions can be expressed as monads. Examples include probabilistic modeling, functional reactive programming, parsing, and information flow tracking, not to mention effectful functionality like state and I/O. We present a type-based rewriting algorithm to make programming with arbitrary monads as easy as using ML's built-in support for state and I/O. Developers write programs using monadic values of type m τ as if they were of type τ, and our algorithm inserts the necessary binds, units, and monad-to-monad morphisms so that the program type checks. Coco is a prototype implementation of our approach for core ML. We will demonstrate how to take advantage of Coco to facilitate using monadic libraries in practice.

Bio:

Nataliya Guts is a PostDoctoral researcher, working with Mike Hicks at the Programming Languages group of the University of Maryland. She obtained a PhD at the MSR-INRIA Joint Centre, and a License d'Informatique and Master's MPRI from the University Paris 6. Her research interests focus on typed programming languages and security.

© Copyright 2007 FOUNDATION FOR RESEARCH & TECHNOLOGY - HELLAS, All rights reserved.