Skip to content
This repository has been archived by the owner on Jun 24, 2018. It is now read-only.

ocharles/Xapian-Haskell

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hi!

This is my attempt at getting Xapian to be usable from Haskell. What I'm doing
is writing a C wrapper to Xapian, and then exposing this in Haskell with the FFI
support.

To get going, here's what you'll need to do:

    cd cbits
    make
    cd ..
    mv cbits/libcxapian.so .

Which will generate "libcxapian" (which may need a better name). You can then
use this with Xapian.hs:

    ghci -isrc -lcxapian -L.

And away you go! There are some examples of how far we've got in the `examples`
directory.



ACHTUNG! WARNING! HERE BE GREMLINS!

I'm currently learning Haskell, so I don't know the "right" way of doing some
things, I just do enough to get a result for now. Feel free to rip it apart and
change the API as much as you like. My C is even worse :) I don't really enjoy C
programming so that could well be bug ridden (though I will say, the current C
is even worse than what I'd normally write... anything for results at the
moment!)

TODO

    - We're are almost entirely trapped in the IO monad - should we be? Could
      we move some stuff to the ST monad and act more pure?

    - ...lots more :)

About

A FFI to Xapian for Haskell

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published