Skip to content
This repository


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Yet another alternative Haskell Prelude, but this one is awesome!

tree: 45d766d9de

Fetching latest commit…


Cannot retrieve the latest commit at this time

Octocat-spinner-32 src
Octocat-spinner-32 .gitignore Added .gitignore October 14, 2009
Octocat-spinner-32 AwesomePrelude.cabal Updated to mtl 2 May 16, 2011
Octocat-spinner-32 LICENSE Added some LANGUAGE pragmas January 07, 2010
Octocat-spinner-32 I'm merely a contributor. February 15, 2010
Octocat-spinner-32 Setup.lhs Added Setup.lhs file February 12, 2010


The AwesomePrelude is 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 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.

Background information

  • The blog post "Deeply embedded DSLs in Haskell" from september 2009 explains some of the ideas behind the AwesomePrelude, however the implementation of the AwesomePrelude is radically different now.
  • At the february 2010 meeting of the Dutch Haskell User Group, Tom and Sebastiaan presented the current state of the project. See the video recording of that presentation.


  • Tom Lokhorst
  • Sebastiaan Visser

    Additional contributions by:

  • Chris Eidhof

Something went wrong with that request. Please try again.