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
