			     -*- Text -*-

    $Id: README.pn,v 1.1 1998/03/16 07:59:02 foner Exp $

			       PATHNAME
			       ========

A simple, portable implementation of a subset of CommonLisp (CLTL I)
PATHNAME functions.  Only as much of the CL definition has been
implemented for me to do my work, so don't expect too much.  See the
file `pathname.doc' for a list of the currently implemented functions.


Scheme implementations tested
-----------------------------

Aubry Jaffer's Scheme version 4a11


Regression Testing
------------------

To test all the pathname functions are working correctly, load the
file `pathnamet00.scm' and call PATHNAME:TEST.  If there are any
errors, a message indicating which procedure failed will be displayed.


Non-standard requirements
-------------------------

For the most part, the package is written in IEEE Scheme.  The
deviations from this are the use of ERROR and REQUIRE.  It is assumed
that there is a procedure ERROR available and that it matches the
following :-

	procedure: error
	arguments: error-name error-string optional-arguments
	signature: forall a => symbol x string x a* -> unspecified

The expected semantics are that if called, this displays the message
and terminates the program.

Each of the files in the package contains zero or more REQUIRE calls
at the start of the file indicating the procedures (not files) that
the file needs.  Since most files only contain one procedure, this
means that only those procedures that are actually needed are ever
loaded (simplifies tree shaking).  If your REQUIRE system cannot deal
with this type of request, then the simplest solution is to remove
them all and simply merge all the files into a single file.  For
example, the following would work in a UNIX Bourne shell :-

	for file in pathname??.scm
	do
		sed '/^(require/d' < $file
	done > pathname.scm

To Do
-----

Find a copy of CLTL II to see what the new PATHNAME definition looks
like and see if it is worth implementing any of it.


Author
------

Stephen J. Bevan	<bevan@cs.man.ac.uk>	19930220
