Bringing Back Monad Comprehensions and Improving Database Supported Haskell

Date(s)
Friday 2nd March 2012 (15:00-16:00)
Contact

Laurence Day

Description

Speaker: George Giorgidze 

Abstract: The first half of my talk will be about a Glasgow Haskell Compiler (GHC) extension that generalises Haskell's list comprehension notation to monads. The monad comprehension notation implemented by the extension supports generator and filter clauses, as was the case in the Haskell 1.4 standard. In addition, the extension generalises the recently proposed parallel and SQL-like list comprehension notations to monads. I will give a formal definition of the aforementioned generalisations. The extension has been available in GHC since the version 7.2. I will argue why the do notation is not always a good fit for monadic libraries and embedded domain-specific languages, especially for those that are based on collection monads. I will briefly discuss the related GHC extension for the list notation overloading that we are currently working on.

The second half of my talk will be about how we use monad comprehensions in Database Supported Haskell (DSH). DSH is a Haskell library that allows execution of idiomatic, list processing program fragments on a relational database management system (RDBMS). DSH can be used to allow existing Haskell programs to operate on large scale data (e.g., larger than the available heap) or to query existing database resident data with Haskell. In addition to the standard list processing combinators, database-executable program fragments can also be written using the monad comprehension notation.

At the end of my talk, if time permits, I will briefly describe our ongoing work that uses Haskell's new generic deriving mechanism to extend the database-supported program execution to all algebraic data types.

(This is a joint work at various times with Torsten Grust, Andres Löh, Tom Schreiber, Nils Schweinsberg, Alexander Ulrich, and Jeroen Weijers.)

 

School of Computer Science

University of Nottingham
Jubilee Campus
Wollaton Road
Nottingham, NG8 1BB

For all enquires please visit:
www.nottingham.ac.uk/enquire