This project has retired. For details please refer to its Attic page.
Apache Lucy FAQ
Apache Lucy™

Are Lucy and Lucene compatible?

No. Lucy is a "loose" port of Lucene designed to take full advantage of C's unique feature set, rather than a line-by-line translation from Java. The two libraries are not compatible in terms of either file format or API, and there are no plans to establish such compatibility.

Is Lucy faster than Lucene? It's written in C, after all.

That depends. As of this writing, Lucy launches faster than Lucene thanks to tighter integration with the system IO cache, but Lucene is faster in terms of raw indexing and search throughput once it gets going. These differences reflect the distinct priorities of the most active developers within the Lucy and Lucene communities more than anything else.

Does Lucy provide a search server like Solr?

Lucy is a low-level library, like Lucene. We'd like to provide a search server eventually, but it will likely be a thin wrapper rather than a comprehensive application like Solr. The low-level capabilities are our core mission.

Why don't you use Swig?

A major design goal of Lucy is to present bindings which are as idiomatic as possible so that our users feel as though they are programming in their native language and not in C. Swig is a great tool, but it does not offer support for many of the features which make Lucy so user friendly: subclassing, named parameters, default argument values, etc.

What's the relationship between Lucy and KinoSearch?

The present incarnation of Lucy is based on a software grant for the KinoSearch code base. KinoSearch is no longer actively developed; all activity has moved to Apache.

What are these .cfh files?

Clownfish header files.

What's Clownfish?

A small, high performance object system, written in C, which is designed to live embedded within a "host" language such as Perl, Python or Ruby. Lucy's core uses Clownfish-based OO.

How can I contribute bindings for language X?

You will need to write a Clownfish binding module for X which maps between Clownfish's data structures and those of X. We'd love to work with you -- write to the dev list.