			     -*- Text -*-

	  $Id: README,v 1.1 1998/03/16 07:57:27 foner Exp $

			       AVL Trie
			       ========

An implementation of a "trie" based on an AVL tree.  The
implementation is purely function i.e. adding an element to a trie is
not done through side effects.

See avl-trie.doc for a description of the available procedures.

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

Aubry Jaffer's Scheme, version 4c0


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

For the most part, the package is written in IEEE Scheme.  The
deviations from this are the use of REQUIRE.

REQUIRE

  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 avl-trie??.scm
	do
		sed '/^(require/d' < $file
	done > avl-trie.scm

  Note the ability to require a procedure rather than a file is the
  reason that the filenames in the package have uniformly boring
  names.  If you don't have a TAGS package that recognises Scheme,
  then the file avl-trie.map may help in locating procedures.  For each
  procedure it contains the file in which it is defined.


Author
------

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