[CM] cm,clm and sbcl

Christophe Rhodes csr21@cam.ac.uk
Thu, 16 May 2002 13:06:39 +0100

On Thu, May 16, 2002 at 04:46:08AM -0700, Bill Schottstaedt wrote:
> > since clm 'works' using either these compilers on different platforms, or
> > their parent compilers (probably also on different platforms), whcih would
> > provide the most suitable for clm developemnt do you think?+
> Does sbcl work on the PPC?  I thought it was x86-specific. 

[ with my musician's hat on, I hope eventually to get back into
  lisp-aided music... but for now, I'll reply with my lisp implementor's
  hat on ]

SBCL is supported under PPC/Linux, Alpha/Linux and SPARC/(Linux|Solaris)
currently... ports to Tru64 and MacOS X are either in the works or being
thought about. I think Dan Barlow has sbcl/clm working on his PPC to the
extent of playing with delay effects :-)

> In the long term,
> I think clisp is not an option; if it weren't for the fact that many CLM
> users are using clisp, I'd remove support for it.  In terms of real-time
> CLM work, I think sbcl will eventually be a fully functional option, and
> have high hopes for openmcl (but haven't actually tried to use it yet).

OpenMCL is, in my experience, beginning to get into shape; one of the
things about working on a large system like a lisp compiler that is
allegedly portable is that implementation bugs are exposed quickly in
both directions... as of version 0.11 of OpenMCL, it is a bug (or three)
in SBCL that prevent it from being cross-compiled successfully. Or, in
other words, "OpenMCL is a good-quality ANSI CL". As for its FFI, I'm
afraid I haven't really played with it much, but I would be surprised if
it weren't in good shape... though, again, it is a "0." version so the
interface might be subject to change. There is a developer mailing list
for openmcl, too (openmcl-devel @ clozure.com) which will be more able
to fill you in on the details than I.


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)