Hi all,
I am looking for a way to run LISP code from a C program. Is this possible? If
so how is it done? I have looked all over the net but I have not had any luck
in finding a solution. I am using Allegro CL and MS Visual C++.
Thanks for your time,
Jeff
Jeff Pennal wrote:
>
> Hi all,
>
> I am looking for a way to run LISP code from a C program. Is this possible? If
> so how is it done? I have looked all over the net but I have not had any luck
> in finding a solution. I am using Allegro CL and MS Visual C++.
>
> Thanks for your time,
> Jeff
Check out http://www.elwood.com/eclipse-info/index.htm
Eclipse...
- provides all of ANSI Common Lisp as a combinatin of C functions and
other C utilities that can be used from arbitrary C programs.
- links all these with a simple main() into an executable, so you get a
complete Common Lisp top-level implementation along with the library.
- has a COMPILE-FILE that produces readable C code from Lisp source,
where this generated code can be linked with the library and arbitrary
C programs. The generated C code is in the same style as the rest of
the library, so one can think of compile-file as a means of extending
the primitives in the library with your own Lisp code.
There are other systems you can use, too. Some other non-commerical
Lisp systems generate (usually non-readable/non-maintainable) C code
that can be linked with arbitrary C code. Most other commercial systems
allow you to load most compiled C code into a running Lisp system, and
allow the Lisp functions to call C functins, and sometimes vice versa.
Some things to watch out for is whether these other systems allow you to
define a main() in C, what restrictions there are on passing data
between Lisp and C, restictions on calling Lisp code, interference
between loaded code and system code, etc. Check the FAQ:
ftp://ftp.cs.cmu.edu/user/ai/lang/lisp/faq/0.html