Personal tools

Applications and libraries/Database interfaces/CoddFish

From HaskellWiki

< Applications and libraries | Database interfaces(Difference between revisions)
Jump to: navigation, search
(Added HList link under related concepts)
(Introduction changed (to appear less dense))
Line 3: Line 3:
 
== Introduction ==
 
== Introduction ==
   
[http://wiki.di.uminho.pt/wiki/bin/view/PURe/CoddFish CoddFish] is contained by the Pure Project and written by [http://wiki.di.uminho.pt/wiki/bin/view/Xana/WebHome Alexandra Silva] and [http://wiki.di.uminho.pt/wiki/bin/view/Joost/WebHome Joost Visser].
+
[http://wiki.di.uminho.pt/wiki/bin/view/PURe/CoddFish CoddFish] is a strongly-typed model that can be used to design and experiment with typed languages for modelling, programming, and migrating databases.
It is a strongly-typed model of relational databases and operations
+
on them. In this model, table meta-data is represented
+
It is encoded in the functional programming language Haskell and it makes extensive use of typeclass bounded, parametric polymorphism and [http://homepages.cwi.nl/~ralf/HList/ heterogeneous collections].
by type-level entities that guard the semantic correctness of all
+
database operations at compile time. The model relies on typeclass
 
bounded and parametric polymorphism and it is encoded in the functional programming language Haskell.
 
 
Apart from the standard relational database operations, such as
 
Apart from the standard relational database operations, such as
 
selection and join, it contains functional dependencies, normal
 
selection and join, it contains functional dependencies, normal
forms, and operations for database transformation. Functional dependency information is represented at the type
+
forms, and operations for database transformation.
level, and can be transported through operations. This means that
+
type inference statically computes functional dependencies on the
+
Further details can be found in the draft paper available from the [http://wiki.di.uminho.pt/wiki/bin/view/PURe/CoddFish project webpage].
result from those on the arguments.
+
The model can be used to design and experiment with typed languages
+
== Availability ==
for modelling, programming, and migrating databases.
 
   
  +
CoddFish is available as part of the [http://wiki.di.uminho.pt/wiki/bin/view/PURe/PUReSoftware UMinho Haskell Libraries].
   
  +
== Credits ==
  +
* [http://wiki.di.uminho.pt/wiki/bin/view/Xana/WebHome Alexandra Silva]
  +
* [http://wiki.di.uminho.pt/wiki/bin/view/Joost/WebHome Joost Visser]
   
 
== Related concepts ==
 
== Related concepts ==

Revision as of 08:49, 19 June 2006

Contents


1 Introduction

CoddFish is a strongly-typed model that can be used to design and experiment with typed languages for modelling, programming, and migrating databases.

It is encoded in the functional programming language Haskell and it makes extensive use of typeclass bounded, parametric polymorphism and heterogeneous collections.

Apart from the standard relational database operations, such as selection and join, it contains functional dependencies, normal forms, and operations for database transformation.

Further details can be found in the draft paper available from the project webpage.

2 Availability

CoddFish is available as part of the UMinho Haskell Libraries.

3 Credits

4 Related concepts