lucy-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Torsten Curdt <tcu...@apache.org>
Subject Re: [lucy-dev] building withOUT perl
Date Mon, 04 Jul 2011 08:33:15 GMT
Thanks, Marvin

>> would love to give Lucy a whirl ...but the build system ...hmm.
>
> For background...  The code base that is now Lucy began life as a pure Perl
> distribution.  It has evolved towards C over time, but it still retains its
> Perl heritage.  Perhaps that helps to explain why the build system is the way
> it is.

Indeed it does ...but I already figured that ;-)

> That said, we are continuing the process of migrating away from Perl.  The
> transition is largely complete for one of Lucy's layers[1]

Yeah, I did see that.

>> Let's say it would be great to have "normal" build system that
>> builds a lib and then have Perl stuff on top of that.
>> Would that be something of common interest?
>
> Peter Karman answered a nearly identical question a few weeks ago:

>    Instead of that traditional model, Lucy provides a nearly-complete C
>    implementation, like a kit. Each dynamic host language then needs to write
>    some required functions in a binding module using Clownfish, and then the
>    whole thing is compiled once into a language-specific binary. There is no
>    independent, linkable C library. That's actually a feature.

Hm. So there would be a dedicated release dist per language binding.

>  IMO the Clownfish approach offers some nice advantages, not
>  least the ability to override C classes in the native host language.

Interesting ...is there more?

> These days, the majority of our development energies are going towards
> expanding Lucy's availability (as opposed to say, improving search-related
> features).  The first step was getting all the licensing issues resolved and
> getting our inaugural release out.

How far is that process?

> We're not quite at a place where adding a new binding is a turnkey process.
> Once our next release is done, I'm going to go back to working on
> <https://issues.apache.org/jira/browse/LUCY-142>, "Port Clownfish compiler to
> C".  We're whittling down the barriers, inch by inch.

Uff ... that sounds like quite a task.

> If you want to wait until it's more straightforward to bind Lucy to Objective
> C, feel free to lurk as some of our Ruby and TCL volunteers are doing right
> now.

/me also enters lurk mode

>  If you'd like to help us move along that path more quickly, as Joe
> Shaefer has, we'll be happy to match you up with the tasks you'd find most
> interesting to work on.

I have looked at "example-lang" but implementing the "Object" seems to
require quite some low-level foo for every language impl.
Is that even feasible in every language? Or maybe I have misunderstood
the purpose of it?

The perl/xs is the one and only "example-lang" implementation at this
stage IIUC?

cheers,
Torsten

Mime
View raw message