Tom Lokhorst and Sebastiaan Visser present the AwesomePrelude. A reimplementation of the Haskell prelude in which all data types have been replaced with type classes.
Embedded Domain Specific Languages (DSLs) can implement these type classes in the AwesomePrelude to get access to the functions defined in terms of the type classes. For example: by implementing the `BoolC` type class, a DSL gets to use the `(&&)`, `(||)` and `not` functions.
Blog post: tom.lokhorst.eu/2010/02/awesomeprelude-presentation-video
This talk was giving at a meeting of the Dutch Haskell User Group on February 8, 2010.
Dutch HUG website: dutchhug.nl
Dutch HUG mailing list: groups.google.com/group/dutch-hug