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