March 22, 2002

Kevin Rosenberg's UFFI aims to be a universal foreign function interface for lisp that currently supports ACL, LispWorks and CMUCL, and should soon support Corman Lisp.

UFFI's design priorities:

  • Code using UFFI must operate correctly on all supported implementations.
  • Take advantage of implementation-specific optimizations.
  • Provide a simple interface to developers using UFFI.

I love this project. The design looks well thought out, the level of activity is high, the documentation is good, and it is implementation/platform inclusive (even the often-forgotten MCL has been thought of).

Most importantly, I think UFFI can help make cclan-style repositories even cooler, by making it easier to write certain types of very useful libraries and utilities (I'm thinking of 3D graphics, speech recognition, maybe parsing XML) and make them relatively portable.

While I believe that a standard FFI would be useful, Erik Naggum thinks the idea is bogus, and what's really needed are tools to automate the process of generating FFI definitions for particular implementations. This is where I mention Tim Moore's cool cparse FFI definition generator. Hey, what if we took both UFFI and cparse and... no, never mind, that's just crazy talk.

OK, I admit it. I'm hoping UFFI and cparse will let me play with QuickDraw3D in lisp under windows and unix.

Posted by jjwiseman at March 22, 2002 01:32 AM
Post a comment

Email Address:


Unless you answer this question, your comment will be classified as spam and will not be posted.
(I'll give you a hint: the answer is “lisp”.)


Remember info?