I am looking forward to a pure Lua version of Lucene. Lua looks like
a neat and amazingly compact programming language. I especially like
Lua's "table" container type which is both a list and a hash/dictionary.
One issue to watch out for is LUCENE-510, which has been an issue
with other Lucene implementations trying to match the Lucene index
format exactly:
http://issues.apache.org/jira/browse/LUCENE-510
I'm working on this one but not sure when exactly it will be fixed
since it's a difficult tradeoff (loses some indexing performance)...
Mike
Petite Abeille wrote:
Hi Marvin,
On Mar 1, 2008, at 2:33 AM, Marvin Humphrey wrote:
How fast is Lua's method dispatch, compared to Java's?
Fast enough.
http://luajit.org/luajit_performance.html
That has a huge impact on performance, since *everything* is a
method in Lucene -- down to writeByte().
The plan is not to mimic Lucene's Java implementation, but rather
it's file format and query syntax:
http://lucene.apache.org/java/2_3_1/fileformats.html
http://lucene.apache.org/java/2_3_1/queryparsersyntax.html
There have been several attempts at pure dynamic language ports of
Lucene, including Plucene (Perl), Lupy (Python), and the original
pure-Ruby implementation of Ferret. All of those have proven
unacceptably slow. The ports which have achieved good
performance, including CLucene (C++), Lucene.NET, the latter-day
Ferret (C/Ruby), and KinoSearch (C/Perl) (and possibly others, I
haven't reviewed them all) all get close to the metal. None rely
on hash-based method dispatch for inner-loop code, and all
manipulate primitive types directly.
Thanks for the head up :)
Cheers,
PA.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]