Re: another universal software hub
Ralf Juengling <[email protected]> Sat, 4 Mar 2006 13:56:36 -0800 (PST)
| Newsgroups | gmane.lisp.lush.devel |
|---|---|
| Message-ID | <[email protected]> |
On Fri, 24 Feb 2006, Raymond Martin wrote: >> I found this today, thought you may find it also cool: >> Ch from www.softintegration.com > > Looks almost like a Lush rip-off. > > Notice how they don't compare there language to Lisp, Python, or similar. The list of interfaces to external libraries is impressive and probably even longer than Lush's at this point. I don't mean to say that it is important how long this list is, but it is important how easy it is to create interfaces to external libraries. Both, Lush and Ch claim to be strong on this point. I'm interested in how far you can automate the process of creating interfaces to C (and C++) libraries. The ideal would be a function that you give the pathname of a shared library and a pathname of a header file with definitions for all the symbols the library exports, and as a result you get proxy objects representing all the things defined in the header file (constants, types, functions). No need to write a wrapper function by hand, the import machinery creates those for you behind the scenes. I don't know yet if Ch is able to do that, I haven't found enough time to look at it closely. But the advertisement says it comes with tools that help you create wrappers. And it's not hard to imagine that Ch surpasses Lush on this count as Ch is a superset of C and thus knows all the C data types. That means the process of translating objects native to the "hub language" (Ch in this case) to objects taken by an external library--and the other way around-- is trivial. We should study Ch to see if we can reuse ideas to improve Lush's ability of interfacing external libraries. FYI, the Professional Edition of Ch, which you may download for free, comes with tools for creating such wrappers. Ralf ------------------------------------------------------- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642