On 12/02/2015 12:51 PM, A.M. wrote:
Hello,
Project:M36 is an open-source, relational algebra engine database
management system written in Haskell. When used as a backend with other
Haskell frameworks such as yesod, Project:M36 completes a fully-Haskell
application stack.
https://github.com/agentm/project-m36
Project:M36 adheres strongly to the relational algebra principles laid
out by Chris Date in his books and, thus, includes a TutorialD
interactive interpreter for learning about the relational algebra. Thus,
Project:M36 does not suffer from the typical type-system impedance
mismatch or SQL inconsistencies common in ORMs.
Of particular interest to Haskellers is the existentially-quantified
value type which allows any Haskell data type adhering to a set of basic
typeclasses to be used directly as a database value. This feature
includes creating database functions to operate directly on these values.
In addition, the transaction model is similar to git: instead of
continually contending for the "latest committed" state, the DBMS
maintains a transaction graph which allows for branching and time travel
to past commits.
Naturally, through the use of immutable data structures, Project:M36
opens the door for parallelization of every query.
Project:M36 includes two native Haskell interfacing libraries: a) a
driver for the "persistent" library and b) a client library which allows
direct access to the relational algebra DSLs.
Thanks for looking at Project:M36!
Best regards,
Team Project:M36
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe