[Haskell-cafe] RE: [Haskell] Haskell DB bindings (was Re: ANN: HDBC (HaskellDatabase Connectivity)

Bayley, Alistair Alistair_Bayley at ldn.invesco.com
Tue Jan 10 08:58:46 EST 2006

[Moving to café, too] 

> There are three active database libraries: HDBC, HSQL and Takusen. It
> is quite disappointing from my point of view. Recently there was the
> same situation with the GUI libraires. The Haskell Community is quite
> small to waste efforts, developing different libraries for the same
> things. When I started with HSQL there were only two database
> libraries: HaSQL for ODBC and libpq for PostgreSQL. They both are
> dead, I think. I decided that it is useful to have one abstract API
> that can cover all database bindings. I imagine something like JDBC,
> ADO or DBI for Haskell. If you guys would like this to happen then
> lets discuss what we want. I would be happy to work on single project
> that can satisfy all needs.
> Cheers,
>   Krasimir

> ... The Haskell Community is quite
> small to waste efforts, developing different libraries for the same
> things.

Yes, that could be considered undesirable. However, there is the choice for users over which API to choose that best supports their needs. In the use of an enumerator, Takusen has chosen quite a different design space from HSQL and HDBC. Whether or not that proves to be a good idea, or attractive to users, remains to be seen :-)

HaskellDB+HSQL seems to be to be the most mature, and actively maintained. Although I'm keen to progress Takusen, I find it hard at present to take the necessary time, so work seems to stall. I'd have no bone to pick with HaskellDB+HSQL being promoted as the default database API, but I still want to work on Takusen, because I think there are some ideas worth exploring.

When I started Takusen, I was specifically interested in using HaskellDB to interface to Oracle. At the time, HaskellDB did not use HSQL, and HSQL lacked a unifying interface, so I started work on a low-level library to Oracle (I was also keen to learn to use the FFI). The design later evolved towards the enumerator approach (Oleg persuaded me that it was a good idea) and the HaskellDB goal was never reached. Now that HSQL supports Oracle, I can choose to use HaskellDB with Oracle, so I suppose my original goal has been satisfied.

Confidentiality Note: The information contained in this message,
and any attachments, may contain confidential and/or privileged
material. It is intended solely for the person(s) or entity to
which it is addressed. Any review, retransmission, dissemination,
or taking of any action in reliance upon this information by
persons or entities other than the intended recipient(s) is
prohibited. If you received this in error, please contact the
sender and delete the material from any computer.

More information about the Haskell-Cafe mailing list