From: Chris Grevstad
Subject: [Q]: Foreign Function Interface overview?
Date: 
Message-ID: <3k1mvb$bd1@park.uvsc.edu>
I've been doing some research on various CL/Scheme implementations and have
found very little information about implementing a foreign function
interface.

I have looked at ELK which seems to be a tightly coupled binding in
that the foreign function is hard linked into the executable, but I
noticed in a regular expression package for Lucid that there seemed to
be a loosely-coupled interface involved.  So, in Lucid's Lisp, when
'load is called, do they peruse the indicated file for entry points and
bind those to functions?

What happens with external references in the 'loaded file?  How about
the conversion of data from the internal Lisp format to the foreign
function's format?

In general, are type conversions possible only between 'native' types
like int, long, char, 'string'?  Or can foreign structures be described
as well?

I appreciate any information you can send my way.

--chris

·····@park.uvsc.edu (Chris Grevstad)