COOKIES: By using this website you agree that we can place Google Analytics Cookies on your device for performance monitoring. |
University of Cambridge > Talks.cam > Logic and Semantics Seminar (Computer Laboratory) > Lightweight Monadic Programming in ML
Lightweight Monadic Programming in MLAdd to your list(s) Download to your calendar using vCal
If you have a question about this talk, please contact Bjarki Holm. Many useful programming constructions can be expressed as monads. Examples include probabilistic computations, time-varying expressions, parsers, and information flow tracking, not to mention effectful features like state and I/O. In this paper, 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 t as if they were of type t, and our algorithm inserts the necessary binds, units, and monad-to-monad morphisms so that the program typechecks. Our algorithm is based on Jones’ qualified types and enjoys three useful properties:
Throughout the paper we present simple examples from the domains listed above. Our most complete example, which illustrates the expressive power of our system, proves that ML programs rewritten by our algorithm to use the information flow monad are equivalent to programs in FlowCaml, a domain-specific information flow tracking language. This is joint work with Nataliya Guts (Maryland), Nikhil Swamy and Daan Leijen (MSR Redmond). A draft paper is available from http://www.cs.umd.edu/~mwh/papers/mwh.html. This talk is part of the Logic and Semantics Seminar (Computer Laboratory) series. This talk is included in these lists:
Note that ex-directory lists are not shown. |
Other listsWhiston Society Science Talks SciBar Finance & Accounting Seminar SeriesOther talksGenomic Approaches to Cancer Active Subspace Techniques to Construct Surrogate Models for Complex Physical and Biological Models MicroRNAs as circulating biomarkers in cancer Wetting and elasticity: 2 experimental illustrations Private Statistics and Their Applications to Distributed Learning: Tools and Challenges Eurostar with Philippe Mouly TBC Sustainability of livestock production: water, welfare and woodland Refugees and Migration Autumn Cactus & Succulent Show Public Lecture: Development of social behaviour in children from infancy: neurobiological, relational and situational interactions |