[Haskell-cafe] Consensus about databases / serialization

Jeff Polakow jeff.polakow at db.com
Wed Jan 2 09:54:31 EST 2008


I use HDBC for ODBC database access, and HAppS as a web server. I am 
fairly happy with both. Here are some further thoughts...

> Finally some practical questions:
> ·        regarding Haskell and databases, the page http://haskell.
> org/haskellwiki/Libraries_and_tools/Database_interfaces describes a 
> few, but which are the ones that are stable and practical? Any user 
> experiences?
HDBC is fairly stable (although its ODBC driver crashes ghc 6.8 on 
windows). I think HSQL is similarly stable. Takusen offers a slightly 
higher-level interface and some performance guarantees; it is a nice 
system but lacks support for ODBC (supposedly this is in the works). 
HaskelDB is probably the ideal database access system for Haskell, however 
the distribution was in bad shape (no documentation, hard to compile, 
etc.) the last I looked maybe 6 months ago.

> ·        HApps is not listed in the page above, because it does not 
> use databases? Is HApps reliable or experimental, and does it scale 
> well? Any success stories?
HAppS is a general server framework for Haskell. HAppS is very appealing 
because it allows you to dynamically create pages directly with Haskell. 
HAppS encourages storing your server state in memory, but it is easy to 
read in state on the fly from external sources. The only caveat with HAppS 
is that the system has been in active development for the past few months 
is just starting (I hope) to settle down; thus useful 
documentation/examples are hard to find, but the HAppS developers are 
pretty good at replying to help requests on the HAppS IRC and the HAppS 
mailing list. I am currently using an old (and stable) version of HAppS 
but expect to upgrade to the latest version soon.

> ·        If I would want to experiment with say HAppS, the way I 
> understand it, I first would first have to study ?Scratch your 
> boilerplate? and Template Haskell, and maybe some other language 
> features? I?m still new to Haskell, and the road to understanding 
> all language elements and extensions is very long, so sequentially 
> learning it would be insane I guess. I have no practical experience 
> with TH, but I spent a long time trying to do ?aspect oriented 
> programming? in C# without success, so TH looks uber to me?
While HAppS does use SYB and TH, you don't need to understand them to 
effectively use HAppS; of course you'll need to understand them, at least 
basic TH, to understand the details of what HAppS is doing.

hope that helps,


This e-mail may contain confidential and/or privileged information. If you 
are not the intended recipient (or have received this e-mail in error) 
please notify the sender immediately and destroy this e-mail. Any 
unauthorized copying, disclosure or distribution of the material in this 
e-mail is strictly forbidden.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.haskell.org/pipermail/haskell-cafe/attachments/20080102/61713847/attachment-0001.htm

More information about the Haskell-Cafe mailing list