Using ASDF with Corman Common Lisp


 

Abstract

These are instruction on how to make ASDF work with Corman Common Lisp (CCL) 2.5 (or rather vice versa). CCL has several problems with respect to ANSI compatibility and thus ASDF can't be used out of the box. As a consequence, CCL users don't have convenient access to many open source libraries (check out CLiki or common-lisp.net) out there. They either have to find another way to load these libraries, or, if they're new to Lisp, they'll probably end up not using these libraries at all.

If you're a registered CCL user you should probably ask your vendor to support the full ANSI standard but until then you can try the workarounds described here if you want to deploy ASDF. Note that these workarounds are intended for people who want to load third-party libraries via ASDF. As we currently have to disable file compilation it is not recommended to use ASDF in conjunction with CCL for the development of your own libraries.

I've tested these workarounds successfully with a couple of libraries. Let me know if you run into problems - maybe I can help. (But note, however, that this is about loading the library with ASDF. I probably can't help if the library itself doesn't work with CCL.)

Note: In the meantime, Corman Lisp 3.0 has been released and most likely you won't need this anymore. ASDF is expected to work out of the box with Corman Lisp now.


 

Contents

  1. Patching Corman Lisp and installing ASDF
  2. Using ASDF
  3. What the patches do
  4. What to watch out for
  5. Changelog
  6. Copyright
  7. License

 

Patching Corman Lisp and installing ASDF

To be able to use ASDF with Corman Common Lisp follow these steps:

You are now ready to use ASDF - see the following section.


 

Using ASDF

Before you use ASDF to load libraries you should decide where to put these libraries. Use one or more directories where you'll unpack the library tarballs or ZIP files and PUSH these directories onto the list ASDF-UTIL:*SOURCE-DIRS* (preferable in the file init.lisp in the CCL directory). This list is used by ASDF to find the system definitions (the files ending in .asd) of the libraries you want to load.

Here's a step-by-step example:

That's it. You should now be able to use the library. Try to evaluate the form
(cl-ppcre:split "-+" "a-bc--de-f")
which is expected to return the list
("a" "bc" "de" "f")

 

What the patches do

The file patch.lisp modifies Corman Lisp to overcome some of its shortcomings with respect to ASDF. The file asdf-addons.lisp adds a new search facility for ASDF. Here are the details:
 

What to watch out for

While the procedure described above should hopefully provide a half-decent path to use a couple of libraries which use ASDF system definitions there are some things that probably don't work as you'd expect:
 

Changelog

2006-10-12Note about Corman Lisp 3.0
2004-05-14Update about broken FASL loader
2004-05-06Initial version

 

Copyright

Copyright (c) 2004 Dr. Edmund Weitz. All rights reserved.
 

License

Redistribution and use of this tutorial in its orginal form (HTML) or in 'derived' forms (PDF, Postscript, RTF and so forth) with or without modification, are permitted provided that the following condition is met: IMPORTANT: This document is provided by the author "as is" and any expressed or implied warranties, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose are disclaimed. In no event shall the author be liable for any direct, indirect, incidental, special, exemplary, or consequential damages (including, but not limited to, procurement of substitute goods or services; loss of use, data, or profits; or business interruption) however caused and on any theory of liability, whether in contract, strict liability, or tort (including negligence or otherwise) arising in any way out of the use of this documentation, even if advised of the possibility of such damage.

$Header: /usr/local/cvsrep/weitz.de/corman-asdf/index.html,v 1.3 2006/10/12 10:33:23 edi Exp $

BACK TO MY HOMEPAGE