From: Jeff Wabik
Subject: Calling LISP from C
Date: 
Message-ID: <6632@shamash.UUCP>
I am posting this for a friend.  Please respond only via e/mail to:

	UUCP:      shamash!halcdc!tciaccio
	    or
	Internet:  ···············@shamash.cdc.com
	    or
		   ······@shamash.cdc.com


Thanks ..  

	-Jeff


----------------------------------------------------------------------------

I have a need to invoke LISP functions from C on a UNIX workstation
and pass arguments/results between the LISP and C functions.  Using
Kyoto Common LISP or Allegro CL the reverse can be done, i.e. call C
functions from LISP but this is done by having the LISP process
running first.  How to call LISP functions from C ?  Any input would
be appreciated.

---
Jeff A. Wabik   INTERNET: ······@shamash.cdc.com
  ____  ____    UUCP: {rosevax,umn-cs,bungia,ems}!shamash!jwabik  
 / ___||___ \   
| |___  ___| |  Control Data Corporation - Better living through 64 bits.
 \____||____/  
		  	   Live long and program.

From: Charles A. Cox
Subject: Re: Calling LISP from C
Date: 
Message-ID: <24992@ucbvax.BERKELEY.EDU>
In article <····@shamash.UUCP> ······@shamash.UUCP (Jeff Wabik) writes:
>
>I have a need to invoke LISP functions from C on a UNIX workstation
>and pass arguments/results between the LISP and C functions.  Using
>Kyoto Common LISP or Allegro CL the reverse can be done, i.e. call C
>functions from LISP but this is done by having the LISP process
>running first.  How to call LISP functions from C ?

With Franz Inc.'s Allegro CL's foreign function interface, you can
call LISP functions from C through the `call-back' facility
(documented in the User's Guide).  The LISP process still has to
be the main one since LISP functions need to run in LISP's runtime
environment.

	Charley Cox
	···@renoir.Berkeley.EDU
From: Jean-Francois Lamy
Subject: Lisp for Sun 4s
Date: 
Message-ID: <88Jul14.084518edt.202@neat.ai.toronto.edu>
We are considering candidates for buying a Common Lisp for Sun 4s, and
possibly MIPS.  Performance is important, and at this point this would seem to
rule out Kyoto Common Lisp.  In the commercial arena, we are aware of Franz
Allegro CL and Lucid CL.

We are not considering running Lisp on individual worstations, only on compute
servers with 32 Megs of RAM or more (often for large simulations running for
days).  While we certainly have ideas on the following items, more input would
certainly be nice; how do the Lisps compare on

- floating point performance (no kidding).
- ease of calling C code from Lisp, and vice-versa
- ease of doing graphical output in a network transparent way -- how good
  is X11 or NeWS support?
- Development environment: (note that we would be running Lisp on a machine
  other that the individual's worksation, which is likely to be a puny Sun 3
  -- does X/NeWS save the day for development facilities too?)
- documentation
- price/quality ratio -- last we checked Allegro was much cheaper than Lucid,
  for example; besides marketing, obvious reasons why?

Finally, we also have Symbolics 3640s around.  Does anyone have rough
estimates on how the performance of a Sun 4 running either compiler compares
to that of a 3640?

Jean-Francois Lamy               ····@ai.utoronto.ca, uunet!ai.utoronto.ca!lamy
AI Group, Department of Computer Science, University of Toronto, Canada M5S 1A4
From: David C. Martin
Subject: Re: Lisp for Sun 4s
Date: 
Message-ID: <25203@ucbvax.BERKELEY.EDU>
In article <·····················@neat.ai.toronto.edu>, ····@ai.toronto.edu (Jean-Francois Lamy) writes:

I have no idea about floating point performance, but I think that Franz beat Lucid in the Sun4 benchmark arena.

Both Allegro and Lucid have nice FFI's for the C language (which is all I
have used).

Allegro has support for CLX (XV11R2) and my XCL (XV10R4) interfaces, but
I think Lucid only has support for XCL - I haven't heard anything about a
CLX port, but then again.. I don't hear everything.  Franz also has a
CommonWindows port for NeWS and I think may also have one for CLX.

I often run my LISP on a VAX8600 from my HP bobcat and Franz has a really
nice interface between GNU emacs 18.51 and their LISP.  Let's you run multiple top-level in multiple buffers, and find the code for a function
from the LISP, not using TAGS.  I don't know what Lucid provides.

As for price/quality, beats me.. I didn't pay for my LISPs.  I like Franz
lisp, but then again, I don't use Lucid all that much.  One thing I do like
are the people at Franz and the lack of having to deal w/ both Lucid and
Sun when I want to get an update.

Hope this helps.

dcm
-----
David C. Martin                       arpa: ········@postgres.Berkeley.EDU
University of California, Berkeley    uucp: {ihnp4,decvax}!ucbvax!dcmartin
Electronics Research Lab              at&t: 415/642-9585 (O)
From: Barry Margolin
Subject: Re: Lisp for Sun 4s
Date: 
Message-ID: <24425@think.UUCP>
In article <·····@ucbvax.BERKELEY.EDU> ········@vangogh.Berkeley.EDU (David C. Martin) writes:
>Allegro has support for CLX (XV11R2) and my XCL (XV10R4) interfaces, but
>I think Lucid only has support for XCL - I haven't heard anything about a
>CLX port, but then again.. I don't hear everything.

The version of CLX that comes with the standard X11R2 distribution
contains a bunch of "#+lucid" expressions.  This implies that someone
at least started a port.  I haven't actually tried it, though.

Barry Margolin
Thinking Machines Corp.

······@think.com
{uunet,harvard}!think!barmar