ANN: Takusen 0.5

Alistair Bayley alistair at abayley.org
Fri Jul 14 04:19:53 EDT 2006


Oleg and I are pleased to announce the release of a new version of Takusen
(it's been a while; so long that we don't remember the last version number
we used).

The most significant code change is a new internal design (courtesy of Oleg)
which gives better separation of concerns like statement preparation,
binding, and result-set processing.

Also of note is a conversion to darcs, and hosting at haskell.org
(thanks to Simon Marlow):

  darcs get http://darcs.haskell.org/takusen

... which also has the nice property that the Haddock documentation is
browseable online:

  http://darcs.haskell.org/takusen/doc/html/index.html

A comprehensive description of API usage can be found in the documentation
for module Database.Enumerator:

  http://darcs.haskell.org/takusen/doc/html/Database-Enumerator.html

We hope that the use of darcs will encourage contributions...

Other changes:
  - support for multiple result sets returned from functions (PostgreSQL only).
    Oracle support for this is in the pipeline, which will allow
    use of nested cursors, and processing RefCursors returned as output
    parameters from procedure calls.

Future plans:
  - Cabalisation
  - use of Data.Time instead of System.Time
  - ODBC and MS Sql Server backends

For those of you unfamiliar with Takusen, here is our HCAR blurb:

Takusen is a library for accessing DBMS's. It is a low-level library like HSQL,
in the sense that it is used to issue SQL statements.
Takusen's "unique-selling-point" is a design for processing query results using
a left-fold enumerator. For queries the user creates an iteratee function,
which is fed rows one-at-a-time from the result-set.
We also support processing query results using a cursor interface,
if you require finer-grained control.
Currently we fully support Oracle, Sqlite, and PostgreSQL.


Alistair


More information about the Libraries mailing list