Re: ffi dependent packaqes

Christophe Rhodes <[email protected]>
Newsgroups gmane.lisp.cclan.general
Message-ID <[email protected]>
On Sat, Jun 22, 2002 at 11:14:19AM -0400, John DeSoi wrote:
> Hi Christophe,
> >I'm no expert, but I have worries about uffi's long-term viability in
> >its current state. I think my position on compatibility layers might be
> >causing me to be overly harsh, but I don't think that a solution to lack
> >of standardization is to take the current intersection of the
> >feature-sets and make it work on 32-bit platforms...
> 
> Could you provide a little more background on why you feel this way 
> about UFFI? I realize it is not a perfect solution, but I don't see 
> any other efforts aimed at unifying Lisp FFI. A consistent way to 
> access external libraries is a big detriment to Lisp. Are there any 
> better alternatives?

Firstly, let me say that I don't know of any better alternatives.
Secondly, let me say that the last thing I want to do is to stop people
from writing and exploring new code.

There are one or two "surface" things that stop me from liking uffi; let
me start with the most trivial first: some naming (yes, sorry :-). This
one's probably not an issue for some people, but I have a real problem
with DEF-TYPE and DEF-CONSTANT and DEF-STRUCT, because they are
pronounced the same as the CL macros DEFTYPE, DEFCONSTANT and DEFSTRUCT.

Told you that was trivial, but I generally think "audially" (though not
"audibly" :) so it's an annoyance.

Here's a somewhat more fundamental problem:

  :long - Signed 32-bits.
  :unsigned-long - Unsigned 32-bits.

There exist several platforms *today* where this isn't true, or, rather,
isn't useful.

I should say, though, that since at present I'm not involved in writing
any code that deals with foreign stuff I should be left on the side.

My other main concern reflects the fact that I come a little bit from a
"cathedral" mentality: there doesn't seem to be any justification that I
can find for the UFFI way of doing things other than "it works". While
that's laudable in itself, it shouldn't mean that UFFI becomes a defacto
standard (except for alphas, and openmcl, and clisp) just because of
that, in much the same way that I don't think the Allegro URI library
should or (shudder) clocc-port should.

I'll go back to trying to make sbcl's arrays less lamentable.

Cheers,

Christophe
-- 
Jesus College, Cambridge, CB5 8BL                           +44 1223 510 299
http://www-jcsu.jesus.cam.ac.uk/~csr21/                  (defun pling-dollar 
(str schar arg) (first (last +))) (make-dispatch-macro-character #\! t)
(set-dispatch-macro-character #\! #\$ #'pling-dollar)


-------------------------------------------------------
Sponsored by:
ThinkGeek at http://www.ThinkGeek.com/
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.