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

Announcing a new module system

So many people showed interest in my project's module system (called "the
Dungeon Master") that I've posted it to cambridge.apple.com.  Download the
file /pub/MCL2/contrib/dm.hqx, which expands to six files.

The files are:
  1) source code ("dungeon-master.lisp"),
  2) a detailed copyright notice ("copyright.text"),
  3) user documentation in mss (Scribe) format ("dm.mss"),
  4) PostScript format ("dm.ps"), and
  5) text format ("dm.text"), and
  6) a description of how to use the Dungeon Master ("dm-use.lisp").

The Dungeon Master supercedes CLtL1's provide and require functions with
useful versions of said functions.  It supports search paths and provides
convenient functions for loading and compiling modules singly or in sets,
in order to keep one's compiled code and lisp environment up to date.  It
is portable, with the exception of half a dozen configuration-dependent
routines.  These routines are defined for MCL2.0f and for Lucid 4.0.0 on
RS/6000s, and may easily be defined for other configurations.

Unfortunately, because of the way the package system is defined (or not
defined) in CLtL2, it is impossible to reliably define packages in a
distributed manner, such that they can also be modified on the fly
(something which every developer always needs to do).  The Dungeon Master
also contains code to make it easier to define mutually dependent packages
in a manner that follows spec.

Send bug reports to sfelshin@athena.mit.edu.  I'll fix bugs as time allows,
which, sadly, isn't much or often.

Thanks to all who expressed interest.  As I have posted the code, I will
assume all respondants will download it from cambridge.apple.com, and I
will not mail copies to anyone unless they specifically request it.

Sue Felshin
Lab for Advanced Technology in the Humanities