QDBM / Hyper Estraier bindings for haskell
Jun Mukai
mukai at jmuk.org
Wed Jun 28 01:58:11 EDT 2006
Hello all,
I pleased to announce the QDBM and Hyper Estraier bindings for haskell.
If you are interested in, they can be obtained from
http://www.city5.org/haskellprog/qdbm/
http://www.city5.org/haskellprog/hstraier/
These are darcs repository, so you can obtain them via darcs.
These bindings are already cabalized, you have to type only as follows
to install them:
% runghc ./Setup.hs configure
% runghc ./Setup.hs build
# runghc ./Setup.hs install
the online API documentation generated by haddock is also shown at
http://www.city5.org/doc/qdbm/
http://www.city5.org/doc/hstraier/
* What is QDBM?
QDBM, stands for Quick DBM, is a database module similar to GDBM or
NDBM or Berkeley-DB, but the specific feature is performance and
simple API.
By now, my QDBM binding supports only Depot, Curia, Villa, and a part
of Cabin.
QDBM can handle several kinds of DBM, and Depot and Curia and Villa is
a name of each DBM. Depot is a basic DBM. Curia is a `large' DBM and
bundles many Depot files for its internal implementation. Curia also
can store `large objects' as a file. Villa is B+Tree DBM and uses a
function to compare keys. Villa also has faculty of cursors and
transactions. Vista, `large' version of Villa, is not supported.
Odeum, inverted index, is also not supported.
Cabin is auxiliary functions collection module and contains a kind of
utility functions of string operation such as Base64 encode/decode,
URL encode/decode, quoted printable encode/decode, mime analysis, csv
reading and so on. These functions will be useful for many
Haskellers, and run faster.
If you are interested in QDBM itself, see http://qdbm.sourceforge.net/
* What is Hyper Estraier
Hyper Estraier is a full-text search system using QDBM. You can
search documents according to the keywords specified and so on.
My Hyper Estraier binding supports only `core' API. Core API can
handle document object, conditionals, and full-text search DB. Hyper
Estraier itself has `node' API, which invokes search queries to remote
servers using HTTP. Node API is not supported yet in my binding now.
If you are interested in Hyper Estraier itself,
see http://hyperestraier.sourceforge.net/
Any comments are welcome.
Thanks,
Jun Mukai
mukai at jmuk.org
More information about the Libraries
mailing list