Home / cmpl / src / defsys
Name Modified Size InfoDownloads / Week
Parent folder
doc 2011-12-21
defsys.lisp 2011-12-21 51.2 kB
expandfn.lisp 2011-12-21 4.1 kB
mkdefsys.lisp 2011-12-21 3.1 kB
readme 2011-12-21 1.6 kB
tards 2011-12-21 674 Bytes
testds.lisp 2011-12-21 4.5 kB
version 2011-12-21 4 Bytes
defpkg.lisp 2011-12-21 3.4 kB
defsys-init.lisp 2011-12-21 5.3 kB
Totals: 10 Items   73.8 kB 0
     A Portable System Definition Facility for Common Lisp

In order to maintain a large system of modules with complex load and
compile time dependendies, a declarative and central representation of
a system, its subsystems and modules is preferrable to one where these
dependencies are associated with a particular module (e.g. by REQUIRE
and PROVIDE).  

Since in Lisp the definition of other languages is a frequently used
programming technique, the load and compile time dependencies are also
parameterised by the compiler or loader to be used for a module or
system.  The Portable System Definition Facility is intended to meet
this need.

Defsys can be compiled for Allegro on Windows by using the files in
the win subdirectory instead of the *.lisp files.


Summary
=======

	init.lisp 		| Customization
	defsys.lisp    		| implement the defsystem facility.

	defpkg.lisp		| For those versions of CL which don't
				| implement defpackage

	expandfn.lisp   	| make CL understand environment variables
				| in Unix or MacIntosh pathnames.

	doc/defsys.tex		| documentation in LaTeX
	defsys.ps		|   in PostScript

	testds.lisp 		| a simple example


Installation
============

1.  Make a directory/folder and copy the package into it.
    Call it <DSD>.

2.  Recompile Portable Defsys
	load file "mkdefsys.lisp" of <DSD>

	This should make all the binaries for your CL.

3.  To load, put into the CL init file:
	
	(defvar *DEFSYSTEM-DIRECTORY* <DSD>)
	(let ((*default-pathname-defaults*
	       (format nil "~Abinary/" *DEFSYSTEM-DIRECTORY*)))
	  (require "P-defsys" "init"))

Source: readme, updated 2011-12-21