[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

FFI Questions

Hi there... I'm sitting here with David Kosbie, looking at page 330 of the MACL
1.3 manual, where it says:

"Only floating-point values and strings may be passed by reference..."

David is trying to use the FFI to gain access to the functionality of some
pre-existing MPW .o files, some of which take Pascal VAR args of type INTEGER
or LONGINT, or of a record type.  Is there any mechanism at all for 
accomplishing this?  Or can we perhaps work a mechanism in (e.g. hacking at the
FFI source?) :-)

Better still, _why_ does this restriction exist in the first place?

Also, is there any way to get DEFRECORD to tell the MACL type system about the
record type being defined, e.g.

(defrecord foo ...)
(defvar *a* (make-record :foo ...))
(typep *a* :foo)

should work.