Personal tools

Applications and libraries/Database interfaces/HaskellDB

From HaskellWiki

< Applications and libraries | Database interfaces(Difference between revisions)
Jump to: navigation, search
m (a typographic correction and a more precise phrase (,,domain specific embedded''))
m (typographic correction)
Line 23: Line 23:
   
 
== Appendix ==
 
== Appendix ==
Concepts which are concerned by the papers of the two official HaskeDB homes
+
Concepts which are concerned by the papers of the two official HaskellDB homes
 
* [[Extensible record]]
 
* [[Extensible record]]
 
* [[Phantom type]]
 
* [[Phantom type]]

Revision as of 13:53, 3 April 2006

Contents

1 Introduction

A combinator library for declarative, type safe database management. A domain specific embedded language, containing the concept of extensible record and a special Query monad (among other powerful ideas, see #Appendix).

2 Homes

2.1 Daan Leijen's original version

It makes possible to use Haskell's typecheck system for a type-safe, declarative database management -- a combinator library. It can prevent the user even from using multiple labels in the same record, but the price for this: it needs a special extension of Haskell called Trex (providing extensible records).

2.2 Chalmers version

A student project by Björn Bringert, Anders Höckersten, Conny Andersson, Martin Andersson, Mary Bergman, Victor Blomqvist, Torbjörn Martin.

It works well with the most common Haskell implementations, because extensible records (without check for multiple labels) are implemented in a way which does not need the Trex extension of Haskell.

See also Björn Bringert's slides HaskellDB -- Type safe declarative database combinators.

3 Other materials

3.1 ICS Wiki

ICS Wiki is a huge resource of Haskell materials (among others).

4 Appendix

Concepts which are concerned by the papers of the two official HaskellDB homes