From: mkant+@cs.cmu.edu (Mark Kantrowitz)
Newsgroups: comp.lang.lisp,comp.lang.scheme,news.answers
Subject: FAQ: Lisp FTP Resources 6/6 [Monthly posting]
Summary: FTP Resources and Free Lisp/Scheme Software
Date: 13 Dec 92 09:03:54 GMT
Article-I.D.: cs.lisp-faq-6.text_724237414
Expires: Tue, 26 Jan 1993 09:03:34 GMT
Reply-To: lisp-faq@think.com
Followup-To: poster
Organization: School of Computer Science, Carnegie Mellon
Supersedes: <lisp-faq-6.text_721645376@cs.cmu.edu>

Archive-name: lisp-faq/part6
Last-Modified: Thu Nov  5 19:30:40 1992 by Mark Kantrowitz
Version: 1.27

;;; ****************************************************************
;;; FTP Archives and Other Resources *******************************
;;; ****************************************************************
;;; Written by Mark Kantrowitz and Barry Margolin
;;; lisp-faq-6.text -- 47389 bytes

This post contains Part 6 of the Lisp FAQ.

If you think of questions that are appropriate for this FAQ, or would
like to improve an answer, please send email to us at lisp-faq@think.com.

Topics Covered (Part 6):
  [6-0] General information about FTP Resources for Lisp and Scheme
  [6-1] Repositories of Lisp Software
  [6-2] Repositories of Scheme Software
  [6-3] Publicly Redistributable Lisp Software
  [6-4] Publicly Redistributable Scheme Software
  [6-5] How can I use the X Window System or other GUIs from Lisp?
  [6-6] Formatting code in LaTeX

Search for [#] to get to question number # quickly.

----------------------------------------------------------------
[6-0] General information about FTP Resources for Lisp and Scheme

Remember, when ftping compressed or compacted files (.Z, .arc, .fit,
etc.) to use binary mode for retrieving the files.

FTP sites for Lisp/Scheme interpreters and compilers are discussed in
the answer to questions [4-0] and [4-2]. See the entry on Macintosh
Common Lisp in question [4-1] for information on the CD-ROM of Lisp code that
Apple distributes with MCL 2.0.

----------------------------------------------------------------
[6-1] Repositories of Lisp Software

There are several repositories of publicly redistributable and
public domain Lisp code. 

   The Lisp Utilities collection is accessible by anonymous ftp
   to any CMU CS machine (e.g., ftp.cs.cmu.edu [128.2.206.173])
   or through AFS in the directory
           /afs/cs.cmu.edu/user/mkant/Public/Lisp-Utilities/
   If accessing this directory through anonymous ftp, it is 
   important to "cd" to the directory using one atomic operation, as
   some of the superior directories on the path are protected from
   access by an anonymous ftp.
   Files included in the repository include:
      extensions.lisp         A collection of extensions to Common Lisp.
      initializations.lisp    Brad Miller's initializations packaged
                              for Allegro CL 4.0.
      xref.lisp               Portable cross referencing tool for Lisp.
                              Similar to the Symbolics Who-Calls and
                              the Xerox MasterScope programs.
      defsystem.lisp          Portable system definition facility (a
                              "Make" for lisp). More featureful than
                              other defsystem implementations.
      logical-pathnames.lisp  Portable implementation of the X3J13
                              June 1989 specification for logical pathnames. 
      metering.lisp           Portable code time/space profiling tool.
      source-compare.lisp     A portable "diff" utility for Lisp.
      user-manual.lisp        Program which helps with documenting Lisp code.
      psgraph.lisp            Joe Bates' PostScript DAG grapher.
      matcher.lisp            A regexp-like matcher for Lisp.
      framework.lisp          A portable generic frame system.
      date-formatter.lisp     Simple code for formatting a date.
      save-object.lisp        Kerry Koitzsch's package to save ASCII
                              representations of Lisp objects to a file. 
      defpackage.lisp         Stephen Nicoud's semi-portable
                              CLtL2 version of defpackage. 
      johnson-yacc.lisp       Mark Johnson's lisp YACC.
      ops5.tar.Z              Public domain Common Lisp implementation 
                              of the OPS5 production system interpreter.
                              "Expert System Shell".
                              Written by Charles Forgy and ported by
                              George Wood and Jim Kowalski.
      cmu-loop.lisp           Implements the CLtL2 Loop Macro.
      mit-loop.lisp           Implements the CLtL1 Loop Macro.
      sloop.lisp              William Schelter's loop macro, not CLtL1/2.
      yloop.lisp              Frank Ritter and Jim Panagos' implementation
                              of the Yale loop macro described in
                              McDermont, Charniak and Riesbeck's
                              AI programming book. Not CLtL1/2.
      ew/                     Express Windows distribution.
      iterate/                The Iterate Macro.
      series/                 Waters' Series Macro package.
      simplex.lisp            Bruno Haible's implementation of the Simplex
                              algorithm.
      mapforms.tar.Z          Moon's code walker.
      resources.lisp          Brad Miller's resources package.
      nregex.lisp             Lawrence Freil's regular expression matching code
   The Lisp Utilities repository is maintained by Mark Kantrowitz,
   cl-utilities-request@cs.cmu.edu.

   The CLOS code repository is available by anonymous ftp to
   nervous.cis.ohio-state.edu [128.146.61.200] in the directory
   pub/lispusers/clos/. If you've got code you'd like to add to the
   repository, send mail to Arun Welch, commonloops-request@cis.ohio-state.edu.

   The Macintosh Common Lisp repository contains Lisp code for
   MCL contributed by MCL users. It is available by anonymous ftp from
   cambridge.apple.com:pub/MACL/CONTRIB       [134.149.2.3]
   and also contains the Info-MCL mailing list archives.

   The CLIM Library (a library of CLIM code) is available on
   cambridge.apple.com:/public/clim. For more information, contact
   Vincent Keunen, keunen@nrb.be.

   MIT AI Lab -- ftp.ai.mit.edu:pub/
      loop-macro.tar               [LOOP from CLtL1]
      series/                      [SERIES from CLtL2]
      Iterate/                     [Alternative to series and loop.]
      clmath.tar                   [Numeric math 1984]
      ontic/                       [ONTIC Knowledge Rep. for Mathematics]
      xp/                          [Waters' XP Lisp Pretty Printer]

   The LispUsers Archives, a collection of programs for Medley, can be
   found on nervous.cis.ohio-state.edu:pub/lispusers/medley. Also on
   nervous.cis.ohio-state.edu is GTT, an implementation of Chandrasekaran's
   Generic Tasks Toolset, in directory pub/lispusers/toolset.

   There's a repository of Amiga LISP implementations (and other Lisp-like
   language implementations) on gatekeeper.pa.dec.com:pub/micro/amiga/lisp/.

   Common Lisp versions of the mini programs from "Inside Computer
   Understanding" by Schank and Riesbeck, 1981, are available by
   anonymous ftp from cs.umd.edu in the directory pub/schank/icu. This
   includes the SAM and ELI miniatures. It will eventually include copies
   of the miniature versions of PAM, POLITICS, and Tale-Spin. The FOR
   macro is also available in this directory, as are a set of functions
   for manipulating and matching lisp representations of Conceptual
   Dependency formulas.  Contact Bill Andersen <waander@cs.umd.edu> for
   more information. The directory pub/schank/icbr contains the complete
   code for "Inside Case-Based Reasoning" by Riesbeck and Schank, 1989.
   This includes code for an instructional version of CHEF by Kristian
   Hammond.

   Norvig:
   The software from Peter Norvig's book "Paradigms of AI Programming" is
   available by anonymous ftp from unix.sri.com:pub/norvig and on disk in
   Macintosh or DOS format from the publisher, Morgan Kaufmann.
   |
   Software includes Common Lisp implementations of:
      Eliza and pattern matchers, Emycin, Othello, Parsers,
      Scheme interpreters and compilers, Unification and a prolog
      interpreter and compiler, Waltz line-labelling,
      implementation of GPS, macsyma, and random number generators.
   |
   For more information, contact:
           Morgan Kaufmann, Dept. P1, 2929 Campus Drive, Suite 260
           San Mateo CA 94403, (800) 745-7323; FAX: (415) 578-0672
	     Mac          ISBN 1-55860-227-5
	     DOS 3.5"     ISBN 1-55860-228-3
	     DOS 5.25"    ISBN 1-55860-229-1

   A catalog of free and commercial natural language software
   is available from the Natural Language Software Registry,
   by anonymous ftp from tira.uchicago.edu [128.135.96.31] in
   the directory /registry, or by email to registry@tira.uchicago.edu.

   TI Explorer Lisp Code -- sumex-aim.stanford.edu:pub/exp/
   The Knowledge Systems Lab's set of Explorer patches and tools. It
   includes in the jwz subdirectory a set of tools written and collected
   by Jamie Zawinski. Send questions to acuff@sumex-aim.stanford.edu.

----------------------------------------------------------------
[6-2] Repositories of Scheme Software

There are several repositories of publicly redistributable and
public domain Scheme code. 

   The Scheme Repository contains a Scheme bibliography, copies of the
   R4RS report and other papers, sample Scheme code for a variety of
   purposes, several utilities, and some implementations. The Scheme code
   includes code for calendar calculations, Earley parser, FORMAT for
   Scheme, a scheme version of the Gabriel benchmarks, Marc Feeley's
   minimal object support for Scheme, a Scheme pretty-printer, a Prolog
   interpreter written in Scheme, a random number generator in Scheme, an
   implementation of SCOOPS, code from Abelson and Sussman's SICP book,
   Aubrey Jaffer's IEEE/R^3.99RS compliance test, and a LALR(1) parser.
   The repository is maintained by Ozan S. Yigit, scheme@nexus.yorku.ca.
   The repository is accessible by anonymous ftp at nexus.yorku.ca
   [130.63.9.66] in the directory pub/scheme/.

   Scheme Implementations may also be found at altdorf.ai.mit.edu:/archive/ 
   The R4RS report is available in altdorf.ai.mit.edu:/archive/scheme-reports/
   or as MIT AI Memo 848b (email publications@ai.mit.edu for more information).
   The altdorf archive includes SCOOPS, CL2Scheme, extend-syntax,
   btree, Gabriel benchmarks, FORMAT for Scheme, etc.

----------------------------------------------------------------
[6-3] Publicly Redistributable Lisp Software

AI Algorithms and Tools:

   PAIL (Portable AI Lab) is a computing environment containing a
   collection of state-of-the-art AI tools, examples, and documentation.
   It is aimed at those involved in teaching AI courses at university
   level or equivalent. The system has enough built-in functionality to
   enable its users to get practical experience with a broad range of AI
   problems without having to build all the supporting tools from
   scratch. It is implemented in Common Lisp and uses CLOS and Allegro
   Common Windows (i.e., in Allegro CL 4.1). It is available by anonymous
   ftp from pobox.cscs.ch (148.187.10.13) in the directory /pub/ai/pail-2.1/.
   Written by Mike Rosner and Dean Allemang {dean,mike}@idsia.ch.

   AI_ATTIC is an anonymous ftp collection of classic AI programs and
   other information maintained by the University of Texas at Austin.  It
   includes Parry, Adventure, Shrdlu, Doctor, Eliza, Animals, Trek, Zork,
   Babbler, Jive, and some AI-related programming languages.  This
   archive currently resides on the host ftp.cc.utexas.edu
   (bongo.cc.utexas.edu, 128.83.186.13) in the directory /pub/AI_ATTIC.
   For more information, contact atticmaster@bongo.cc.utexas.edu.

   The Automatic Memoization Facility adds a practical memoization
   facility to Common Lisp. Automatic memoization is a technique by which
   an existing function can be transformed into one that "remembers"
   previous arguments and their associated results, yielding large
   performance gains for certain types of applications.  This facility
   extends the ideas from Norvig's book into what is needed for a
   practical tool for us in large programs. It adds facilities for
   bookkeeping and timing, and lets you evaluate of the timing advantages
   of memoization, and save hash tables to disk for automatic reuse in
   later sessions. The code is available by anonymous ftp from
   archive.cs.umbc.edu:/pub/Memoization [130.85.100.53]. Contact Marty Hall
   <hall@aplcenmp.apl.jhu.edu> for more information. The code includes an
   overview of memoization and its applications.

Benchmarks:

   Gabriel Lisp Benchmarks are available by anonymous ftp as
   ai.toronto.edu:/pub/gabriel-lisp-benchmarks.tar.Z.

   Lucid CL contains a set of benchmarks in its goodies/ directory,
   including Bob Boyer's logic programming benchmark, a benchmark to
   create and browse through an AI-like database of units, a CLOS speed
   test, a compilation speed test, TAKR (the 100 function version of TAK
   that tries to defeat cache memory effects), CTAK (A version of the
   TAKeuchi function that uses the CATCH/THROW facility), STAK (A version
   of the TAKeuchi function with special variables instead of parameter
   passing), DERIV and DDERIV (Symbolic derivative benchmarks written by
   Vaughn Pratt), DESTRU (a destructive operation benchmark), DIV2 (a
   benchmark which divides by 2 using lists of n ()'s), the FFT benchmark
   written by Harry Barrow, FPRINT (a benchmark to print to a file),
   FRPOLY (a Franz Lisp benchmark by Fateman based on polynomial
   arithmentic), Forest Baskett's PUZZLE benchmark (originally written in
   Pascal), the TPRINT benchmark to read and print to the terminal, a
   benchmark that creates and traverses a tree structure, and TRIANG
   (board game benchmark). Some of the benchmarks may work only in Lucid.

Blackboard Architectures:

   The UMass GBB system (V1.2) is available by anonymous ftp from
   dime.cs.umass.edu:/gbb. The commercial GBB product is not.
   Work on the UMass GBB project (and funding) ended over 2 years ago.
   Many researchers using it have opted for the commercial
   release.  The UMass research system remains available, but the
   two should not be confused as the commercial system is
   substantially improved and extended. The commercial system is available
   from Blackboard Technology Group, PO Box 44, 401 Main Street,
   Amherst, Massachusetts 01002, 413-256-4240.

Case-based Reasoning:

   CL-Protos is a Common Lisp implementation of the case-based
   reasoning system developed by E. Ray Bareiss and Bruce W.
   Porter of the University of Texas/Austin AI Lab. It runs
   on Sun3, TI Explorer, HP 9000, and Symbolics, and gobbles a
   huge amount of memory. Common Lisp implementation by
   Rita Duran, Dan Dvorak, Jim Kroger, Hilel Swerdlin, and Ben Tso.
   For more information, bug reports, or comments, contact
   either Dan Dvorak <dvorak@cs.utexas.edu> or Ray Bareiss
   <bareiss@ils.nwu.edu> or Erik Eilerts <eilerts@cs.utexas.edu>
   Available by anonymous ftp from cs.utexas.edu:/pub/porter

Databases:

   Postgres is an object-oriented database, and is available
   from postgres.berkeley.edu:/pub/postgres*
   It runs on DecStation 3100s, Sun3 (SunOs), Sun4 (Sparc),
   and Sequent Symmetry.

Eliza and Similar Programs:

   See Peter Norvig's book (question [6-1] above).

   The doctor.el is an implementation of Eliza for
   GNU-Emacs emacs-lisp. Invoke it with "Meta-X doctor"

   Source code for ELIZA in Prolog (implemented by Viren
   Patel) is available by ftp from aisun1.ai.uga.edu.

   muLISP-87 (a MSDOS Lisp sold by Soft Warehouse) includes
   a Lisp implementation of Eliza.

   Compute!'s Gazette, June 1984, includes source for a
   BASIC implementation of Eliza. You can also find it
   in 101 more computer games, edited by David Ahl,
   published by Creative Computing (alas, they're defunct,
   and the book is out of print).

   Herbert Schildt "Artificial Intelligence using C", 
   McGraw-Hill, 1987, ISBN 0-07-881255-0, pp315-338,
   includes a simple version of DOCTOR. 

   ucsd.edu:pub/pc-ai contains implementations of Eliza 
   for the IBM PC.

   The original Parry (in MLISP for a PDP-10) is available in
   labrea.stanford.edu:/pub/parry.tar.Z.

   RACTER is *not* public domain. According to A.K. Dewdney's book,
   "The Armchair Universe", Racter is available from John Owens,
   INRAC, Inc., 12 Schubert St., Staten Island, NY 10305. It was
   published in 1984, and written in compiled BASIC.

Expert Systems:

   FOCL is an expert system shell and machine learning program written in
   Common Lisp. The machine learning program extends Quinlan's FOIL
   program by containing a compatible explanation-based learning
   component.  FOCL learns Horn Clause programs from examples and
   (optionally) background knowledge. The expert system includes a
   backward-chaining rule interpreter and a graphical interface to the
   rule and fact base. For details on FOCL, see: Pazzani, M. and Kibler,
   D., "The role of prior knowledge in inductive learning", Machine
   Learning 9:54-97, 1992. It is available by anonymous ftp from
   ics.uci.edu as a (binhexed, compacted) Macintosh application,
   pub/SaranWrap/KR-FOCL-ES.cpt.hqx, or as Common Lisp source code (see
   pub/SaranWrap/README for details). If you use a copy of FOCL, or have
   any comments or questions, send mail to pazzani@ics.uci.edu.

   BABYLON is a development environment for expert systems. It
   includes frames, constraints, a prolog-like logic formalism, and a
   description language for diagnostic applications. It is implemented in
   Common Lisp and has been ported to a wide range of hardware platforms.
   Available by anonymous ftp from gmdzi.gmd.de:gmd/ai-research/Software/
   (129.26.8.90) as a BinHexed stuffit archive, on the Apple CD-ROM, or
   with the book "The AI Workbench BABYLON", which contains *full source
   code* of BABYLON and the stand-alone version for the Mac. The book
   describes the use of BABYLON in detail.

   OPS5 -- See Lisp Utilities Repository in question [6-1].

Frame Languages:

   FrameWork is available in the Lisp Utilities Repository described above. 

   THEO (learning frame system) is available free from CMU, after
   signing a license agreement. Send mail to Tom.Mitchell@cs.cmu.edu.

   FrameKit is available free from CMU, after signing a
   license agreement. Send mail to Eric.Nyberg@cs.cmu.edu

   KR. Send mail to Brad.Myers@cs.cmu.edu for more info.

   PARKA. Frames for the CM. Contact spector@cs.umd.edu.
		       
   PARMENIDES (Frulekit) is available free, after signing
   a license agreement. Send mail to peter.shell@cs.cmu.edu 

   FROBS is available free by anonymous ftp from
   cs.utah.edu:/pub/frobs.tar.Z
   Contact Robert Kessler <kessler@cs.utah.edu> for more info.

   PFC is a simple frame system written by Tim Finin
   available free by anonymous ftp from linc.cis.upenn.edu.

   YAK is a hybrid knowledge-representation system of the
   KL-ONE family. Includes an optional graphical interface
   depending on the Lisp. Available free after signing a license 
   agreement. Contact Enrico Franconi <franconi@irst.it>.

Genetic Algorithms:

   GECO (Genetic Evolution through Combination of Objects) is a
   genetic algorithm shell written by George Williams,
   <george@hsvaic.boeing.com>. It is available by anonymous ftp 
   from cambridge.apple.com:/pub/mcl2/contrib/ as the following
   files:
      GECO-v1.0.cpt.hqx       binhex'd Compact Pro archive
      GECO-v1.0.tar.Z         compressed tar file for Unix machines (no MCL
                              fonts)
      GECO.abstract           a brief description
   It runs in MCL 2.0, but should be portable among CLtL2 compliant
   Common Lisps.

   GAL is a genetic algorithm suite written by Bill Spears of NRL. The
   MCL2.0 port was done by Howard Oakley <howard@quercus.demon.co.uk> and
   is available from cambridge.apple.com:/pub/MCL2/contrib as
   GAL.sea.hqx.  Improvements and adaptations should be sent to Bill
   Spears, but questions on the MCL port should be directed to Howard Oakley.

Knowledge Representation:

   KNOWBEL is an implementation of Telos (a sorted/temporal logic
   system) by Bryan M. Kramer, <kramer@ai.toronto.edu>. It is
   available by anonymous ftp from ai.toronto.edu:/pub/kr/ as the
   files knowbel.tar.Z and manual.txt.tar.Z 
   Runs in Allegro CL on Sparcstations and Silicon Graphics 4d
   and in MCL on Apple Macintoshes. 
   
   SNePS is a semantic net implementation, available free after
   signing a license agreement. Contact shapiro@cs.buffalo.edu
   for more information.

   COLAB (COmpilation LABoratory) is a hybrid knowledge representation
   system emphasizing the horizontal and vertical compilation of
   knowledge bases. It is comprised of cooperating subsystems -- CONTAX,
   FORWARD, RELFUN and TAXON -- which deal with different knowledge
   representation and reasoning formalisms. Each subsystem can also be
   used as stand-alone system. CONTAX deals with constraint nets and
   constraint-propagation techniques. Relational knowledge in the form of
   Horn rules is processed by forward (FORWARD) and backward (RELFUN)
   chaining. Taxonomic knowledge is represented by intensional concept
   definitions which are automatically arranged in a subsumption
   hierarchy (TAXON).  The COLAB software was developed at DFKI and the
   University of Kaiserslautern and runs in Common Lisp. (The subsystems
   have been tested in AKCL and Lucid CL, and possibly also Allegro CL
   and Symbolics CL.) All the subsystems are available free of charge for
   research purposes.
   o  RELFUN is a logic-programming language with call-by-value (eager),
      non-deterministic, non-ground functions, and higher-order operations.
      It accepts freely interchangeable LISP-style and PROLOG-style syntaxes.
      For sources to RELFUN and copies of relevant papers, contact
      Dr. Harold Boley, DFKI, Postfach 2080, W-6750 Kaiserslautern, Germany,
      call +49-631-205-3459, fax +49-631-205-3210, or send email to
      boley@informatik.uni-kl.de.
   o  TAXON is a terminological knowledge representation system extended by
      concrete domains.  For sources to TAXON and copies of relevant papers,
      contact Philipp Hanschke, DFKI, Postfach 2080, W-6750 Kaiserslautern,
      Germany, call +49-631-205-3460, fax +49-631-205-3210, or send email to
      hanschke@dfki.uni-kl.de.
   o  CONTAX is a constraint system for weighted constraints over
      hierarchically structured finite domains. CONTAX uses CLOS in addition
      to Common Lisp.  For sources to CONTAX and copies of relevant papers,
      contact Manfred Meyer, DFKI, Postfach 2080, W-6750 Kaiserslautern,
      Germany, call +49-631-205-3468, fax +49-631-205-3210, or send email to
      meyer@dfki.uni-kl.de.
   o  FORWARD is a logic programming language with bottom-up and top-down
      evaluation of Horn clauses. For sources to FORWARD and copies of
      relevant papers, contact Knut Hinkelmann, DFKI, Postfach 2080, W-6750
      Kaiserslautern, Germany, call +49-631-205-3467, fax +49-631-205-3210,
      or send email to hinkelma@dfki.uni-kl.de.

Languages:

   GLisp -- apple.com:/pub/dts/mac/lisp/glisp.tar.Z
   See also ftp.apple.com

   StarLisp Simulator -- think.com:/cm/starlisp/starsim-f19-sharfile
   Simulates *Lisp, one of the programming langauges used to program
   the Connection Machine. Runs under Symbolics, Lucid, Allegro, and Franz.

   InterLisp->Common-Lisp Translator -- ai.sri.com:pub/pkarp/lisp/ilisp/
   Other InterLisp to Common Lisp translators may be found in the LispUsers
   archive listed above.

   The Yale Haskell system runs in CMU Common Lisp, Lucid CL, and AKCL.
   It is available by anonymous ftp from 
        Chalmers animal.cs.chalmers.se  129.16.225.66
        Glasgow  ftp.dcs.glasgow.ac.uk  130.209.240.50
        Yale     nebula.cs.yale.edu     128.36.13.1
   in the directory pub/haskell/yale as the files
        haskell-beta-2-source.tar.Z   -- full sources
        haskell-beta-2-sparc.tar.Z    -- sparc executable

Machine Learning:

   ID3. A Lisp implementation of ID3 and other machine learning
   algorithms are available by anonymous ftp from the machine learning
   group at the University of Texas as cs.utexas.edu:pub/mooney

   COBWEB/3 is a concept formation system available free after
   signing a license agreement. Contact cobweb@ptolemy.arc.nasa.gov
   for more information.

Mathematics:

   LMath -- peoplesparc.berkeley.edu:pub/mma.tar.Z       [128.32.131.14]
   A Mathematica-style parser written in Common Lisp. Written by Richard
   Fateman; fateman@renoir.Berkeley.EDU. Runs in any valid Common Lisp.

   rascal.ics.utexas.edu:/pub/             128.83.138.20
      Maxima for Common Lisp (License required from National
      Energy Software Center at Argonne.) Ported by Bill Schelter.

   JACAL: Implicit representation and mathematics. Contact
   jaffer@altdorf.ai.mit.edu for more information.

Medical Reasoning:

   TMYCIN -- sumex-aix.stanford.edu:/tmycin  The TMYCIN rule based system.

Object-Oriented Programming:

   PCL -- parcftp.xerox.com:pcl/ [13.1.64.94]
   Portable Common Loops (PCL) is a portable implementation of
   the Common Lisp Object System (CLOS).

   CLOS-on-KEE -- zaphod.lanl.gov:/pub/
   A subset of CLOS that is implemented on top of KEE. Contact
   egdorf%zaphod@LANL.GOV (Skip Egdorf) for more info.

   MCS (Meta Class System) -- ftp.gmd.de:/pub/lisp/mcs/ [129.26.8.90]
   Portable object-oriented extension to Common Lisp. Integrates the
   functionality of CLOS (the Common Lisp Object System), and TELOS, (the
   object system of LeLisp Version 16 and EULISP).  MCS provides a metaobject
   protocol which the user can specialize.  MCS is claimed to be more
   efficient in time and space than comparable systems we know, including
   commercial CLOS implementations. Runs in any valid Common Lisp.
   Contact: Harry Bretthauer and Juergen Kopp, German National Research
   Center for Computer Science (GMD), Expert System Research Group,
   P.O. Box 1316, D-5205 Sankt Augustin 1, FRG, email: kopp@gmdzi.gmd.de

Probabilistic Reasoning and Statistics:

   BELIEF is a Common Lisp implementation of the Dempster and Kong fusion
   and propagation algorithm for Graphical Belief Function Models and the
   Lauritzen and Spiegelhalter algorithm for Graphical Probabilistic
   Models. It includes code for manipulating graphical belief models such
   as Bayes Nets and Relevance Diagrams (a subset of Influence Diagrams)
   using both belief functions and probabilities as basic representations
   of uncertainty. It is available by anonymous ftp from
   ftp.stat.washington.edu (128.95.17.34), and by email from the author,
   Russell Almond <almond@stat.washington.edu>. Contact the author at
   almond@statsci.com for information about a commercial version
   GRAPHICAL-BELIEF currently in the prototype stages.

   XSTAT is a statistics package which runs in XLISP. It has recently been
   ported to Common Lisp, and is available as
      umnstat.stat.umn.edu:/pub/xlispstat/CL/CLS1.0A1.tar.Z
   The CL port does not yet include the lisp-stat dynamic graphics 
   package, only the numerics. The XLisp version is available from
   the above site and several mirror sites, such as mac.archive.umich.edu.

Planning:

   NONLIN -- cs.umd.edu:/pub/nonlin (128.8.128.8)
   Common Lisp implementation of the NONLIN planning system originally
   designed and implemented by Austin Tate. Bugs can be reported to
   nonlin-bugs@cs.umd.edu. User's group is nonlin-users@cs.umd.edu.
   The authors request that anybody ftping the code send a message to
   nonlin-users-request@cs.umd.edu, letting them know you have a copy
   and also letting them know if you wish to subscribe to the users group.
   More information can also be obtained from Jim Hendler, hendler@cs.umd.edu.

   A Common Lisp implementation of ABTWEAK, a hierarchical nonlinear 
   planner extending David Chapman's (MIT) TWEAK, may be obtained by
   anonymous ftp from csis.dit.csiro.au in the directory pub/steve. A
   user's manual, a copy of the associated masters thesis by Steve
   Woods, and an extended Journal paper are also contained in that
   directory. Send mail to Steven.Woods@csis.dit.csiro.au for more
   information.  

   RHETORICAL is a planning and knowledge tool available by
   anonymous ftp from cs.rochester.edu:/pub/knowledge-tools
   in the files rhet-19-40.tar.Z and cl-lib-3-11.tar.Z. The files
   tempos-3-6.tar.Z and timelogic-5-0.tar.Z add James Allen's
   interval logic to Rhet. It runs on Symbolics Genera and
   Allegro Common Lisp. Written by Brad Miller <miller@cs.rochester.edu>.

   PRODIGY is an integrated planning and learning system,
   available free after signing a license agreement. Contact
   prodigy@cs.cmu.edu for more information.

   SOAR is an integrated intelligent agent architecture currently
   being developed at Carnegie Mellon University, the University of
   Michigan, and the Information Sciences Institute of the University of
   Southern California. SOAR, and its companion systems, CParaOPS5 and
   TAQL, have been placed in the public domain. The system may be
   retrieved by anonymous ftp to ftp.cs.cmu.edu (or any other CMU CS
   machine) in the directory /afs/cs.cmu.edu/project/soar/5.2/2/public/.
   [Note: You must cd to this directory in one atomic operation, as
   superior directories may be protected during an anonymous ftp.]  For
   more information, send email to soar-request@cs.cmu.edu or write to
   The Soar Group, School of Computer Science, Carnegie Mellon
   University, Pittsburgh, PA 15213.  Finally, though the software is in
   the public domain, the manual remains under copyright. To obtain one
   (at no charge) send a request (including your physical mail address)
   to soar-doc@cs.cmu.edu or to the physical address above.

   SNLP is a domain independent systematic nonlinear planner,
   available by anonymous ftp from cs.washington.edu:/pub/snlp.tar.Z
   Contact weld@cs.washington.edu for more information. 

   IDM is a Common Lisp implementation of both a classical and extended
   version of the STRIPS planner. It is available by anonymous ftp from 
   sauquoit.gsfc.nasa.gov (128.183.101.29). Questions, comments and bug
   reports may be sent to idm-users@chelmsford.gsfc.nasa.gov.             

Planning Testbeds:

   TILEWORLD is a planning testbed/simulator developed at SRI
   International by Martha Pollack, Michael Frank and Marc
   Ringuette. TILEWORLD originally ran under Lucid CL, but was
   later extended and ported to Allegro CL by Badr H. Al-Badr
   and Steve Hanks. The new tileworld is available by anonymous
   ftp from cs.washington.edu as the file new-tileworld.tar.Z
   It includes an X interface. Contact pollack@cs.pitt.edu for more
   information. 

   TRUCKWORLD is a simulated world intended to provide a 
   testbed for AI planning programs, where the planning agent
   is a truck that roams around the simulated world. It is
   available by anonymous ftp from cs.washington.edu in the
   file simulator.tar.Z. It includes an X interface. Contact
   Steve Hanks <hanks@cs.washington.edu> for more information.

   ARS MAGNA is a simulated world intended for use as a testbed for
   planning and mapping programs.  The simulated agent is a robot in an
   indoors environment.  High-level sensing and action are provided,
   realistically modelled on current vision and robotics research.  It is
   written in Nisp, a macro package running on top of Common Lisp.  It is
   available by anonymous ftp from dept.cs.yale.edu in pub/nisp as file
   ars-magna.tar.Z.  It includes an X display.  Contact Sean Engelson
   <engelson@cs.yale.edu> for more information.

Qualitative Reasoning:

   QSIM is a qualitative reasoning system implemented in Common
   Lisp. It is available by anonymous ftp from cs.utexas.edu:/pub/qsim
   Contact Ben Kuipers <kuipers@cs.utexas.edu> for more information.

Theorem Proving:

   MVL (Multi-Valued Logic) is a theorem proving system written
   in Common Lisp, and is available from t.stanford.edu:/mvl/mvl.tar.Z
   A user's manual may be found in /mvl/manual.tex. Send mail
   to ginsberg@t.stanford.edu.

   Boyer-Moore
   cli.com:pub/nqthm/nqthm.tar.Z   Contact: kaufman@cli.com
   rascal.ics.utexas.edu:/pub/             128.83.138.20
      nqthm/               Boyer and Moore's theorem prover.
                           Also available from cli.com:/pub/nqthm.
      proof-checker/       Matt Kaufmann's proof checking
                           enhancements to nqthm.
   The mailing list nqthm-users-request@cli.com is for users of the
   Boyer-Moore theorem-prover, NQTHM.

Virtual Reality:

   VEOS (Virtual Environment Operating Shell) is an extendible environment
   for prototyping distributed applications for Unix. The programmer's
   interface uses XLISP 2.1. Although intended for distributed
   Virtual Reality applications at The Human Interface Technology Lab
   in Seattle, it should be appropriate for other applications.  VEOS
   uses heavyweight sequential processes, corresponding roughly to
   unix processes. VEOS runs on DEC/5000, Sun4, and Silicon Graphics
   VGX and Indigo. VEOS is available by anonymous ftp from
   milton.u.washington.edu (128.95.136.1) in the directory ~ftp/public/veos
   as veos.tar.Z. If you use the software, the authors ask that you send
   them mail to veos-support@hitl.washington.edu.

Vision:

   OBVIUS -- whitechapel.media.mit.edu:/obvius/ [18.85.0.125]
   Object-Based Vision and Image Understanding System (OBVIUS), is a Common
   Lisp image processing package. Provides a library of image processing
   routines (e.g., convolutions, fourier transforms, statistical
   computations, etc.) on gray or binary images and image-sequences (no
   color support yet), an X windows display interface, postscript printer
   output, etc.  It uses a homebrew interface to X11 (i.e., it does not use
   clx or clue). However, they eventually hope to port Obvius to a clx/clue
   platform. Written by David Heeger <heeger@white.stanford.edu> and Eero
   Simoncelli <eero@whitechapel.media.mit.edu>. Runs in Lucid-4.0. Includes
   LaTeX documentation and User's Guide.

Miscellaneous:

   ftp.csrl.aoyama.ac.jp:
           YY/     YY window toolkit sources
           Lisp/   several common lisp sources, including MIT's FRL.

   RRL (Rewrite Rule Laboratory) -- herky.cs.uiowa.edu:public/rrl
   [128.255.28.100]

   PLisp - A Common Lisp front end to Postscript. This translates many
   Common Lisp functions to postscript as well as manage the environment
   and many lispisms (&optional and &rest arguments, multiple values,
   macros, ...).  Available via anonymous ftp in pub/plisp/plisp.tar.Z on
   nebula.cs.yale.edu (128.36.13.1). Written by John Peterson,
   peterson-john@cs.yale.edu.

   RegExp is an extension to Allegro Common Lisp which adds
   regular expression string matching, using the foreign
   function interface. Available by anonymous ftp from
   ai.sri.com:/pub/pkarp/regexp/. Contact pkarp@ai.sri.com
   for more information.

----------------------------------------------------------------
[6-4] Publicly Redistributable Scheme Software

   SLIB is a portable scheme library that provides compatibility and
   utility functions for many of the standard scheme implementations,
   including ELK 1.5, GAMBIT, MITScheme, scheme->C, Scheme48, T3.1 and Scm4a.
   It is available by anonymous ftp from
      altdorf.ai.mit.edu:archive/scm/slib1c2.tar.Z
      nexus.yorku.ca:pub/scheme/new/slib1c2.tar.Z

   TEST.SCM is an IEEE and R4RS conformance test suite.  It is available
   from altdorf.ai.mit.edu:archive/scm/test.scm
   and nexus.yorku.ca:pub/scheme/new/test.scm

   PSD (Portable Scheme Debugger) is available by anonymous ftp
   from Tampere University of Technology, Finland,
      cs.tut.fi:/pub/src/languages/schemes/psd.tar.Z
   With PSD, you can run a Scheme program in an Emacs buffer, set
   breakpoints, single step evaluation and access and modify the
   program's variables. It works by instrumenting the original source
   code, so it should run with any R4RS compliant Scheme. It has been
   tested with SCM and Elk 1.5, but should work with other Schemes with a
   minimal amount of porting, if at all. Includes documentation and
   user's manual. Written by Pertti Kellom\"aki, pk@cs.tut.fi

   A bibliography of work in functional programming can be obtained by 
   anonymous ftp from tamdhu.dcs.st-andrews.ac.uk:/pub/staple/pubs.txt
   (138.251.192.40). It uses a refer-like format with %T for title, %A
   for authors %I for a unique index entry %S for source (possibly a
   reference to another index) %K for keywords and %C for comments.
   Compiled by Tony Davie, <ajtd@honey.st-and.ac.uk>.

   Scheme Utilities -- brokaw.lcs.mit.edu:/pub/scmutils.tar  18.30.0.33
   [This collection seems to no longer be located on brokaw -- does
   anybody know the current location?]

   A collection of Scheme implementations of data structures and
   algorithms is available by anonymous ftp from cs.tut.fi in the
   directory /pub/src/languages/schemes/as the file scheme-algorithms.tar.
   For more information, contact Pertti Kellom\"aki <pk@cs.tut.fi>.

----------------------------------------------------------------
[6-5] How can I use the X Window System or other GUIs from Lisp?

There are several GUI's and Lisp interfaces to the X Window System. Mailing
lists for these systems are listed in the answer to question [4-7].
Various vendors also offer their own interface-building packages.

   CLX provides basic Common Lisp/X functionality. It is a de facto standard
   low-level interface to X, providing equivalent functionality to XLib, but
   in Lisp. It is also a good source for comparing the foreign function calls
   in various Lisps. Does *not* depend on CLOS.  Available free as part of the
   X release in the contrib directory.  Also available form
   export.lcs.mit.edu:/contrib as the files CLX.Manual.tar.Z and
   CLX.R5.02.tar.Z. Primary Interface Author: Robert W. Scheifler
   <rws@zermatt.lcs.mit.edu> Send bug reports to bug-clx@expo.lcs.mit.edu.

   CLIM (Common Lisp Interface Manager) is a GUI originally developed by
   Symbolics and International Lisp Associates, and now under joint
   development by several Lisp vendors, including Symbolics, Apple, Franz, 
   Harlequin and Lucid. It is intended to be a portable analogue of Symbolics
   UIMS (Dynamic Windows, Presentations Types). It runs on Symbolics Lisp 
   Machines; Allegro and Lucid on several Unix platforms; Symbolics CLOE on 
   386/486 IBM PCs running Windows; and MCL on Apple Macintoshes.  It is *not*
   free, and with the exception of Macintoshes, if it is available it
   can be purchased from the vendor of the Lisp system you are using.
   For the Macintosh version write to the ILA:
        International Lisp Associates, 114 Mt. Auburn St.,
        Cambridge, MA 02138, 617-576-1151
        Contact: Dennis Doughty - Doughty@ILA.com

        International Lisp Associates, 898 Windmill Park Road,
        Mountain View, CA 94043, 1-800-477-CLIM
        Contact: Bill York - York@ILA.com
   The CLIM 2.0 SPECIFICATION is available by anonymous ftp from
   ftp.uunet.net:vendor/franz/clim.ps.Z.

   CLUE (Common Lisp User-Interface Environment) is from TI, and extends CLX
   to provide a simple, object-oriented toolkit (like Xt) library that uses
   CLOS. Provides basic window classes, some stream I/O facilities, and a few
   other utilities. Still pretty low level (it's a toolkit, not widget
   library).  Available free by anonymous ftp from csc.ti.com:pub/clue.tar.Z
   Written by Kerry Kimbrough. Send bug reports to clue-bugs@dsg.csc.ti.com.

   CLIO (Common Lisp Interactive Objects) is a GUI from the people who created
   CLUE. It provides a set of CLOS classes that represent the standard
   components of an object-oriented user interface -- such as text, menus,
   buttons, scroller, and dialogs.  It is included as part of the CLUE
   distribution, along with some packages that use it, both sample and real.

   Allegro Common Windows provides a front end to CLX. Uses CLOS.
   It is *not* free. Contact info@franz.com for more information.

   The LispWorks Toolkit is an extensible CLOS-based widget set that uses
   CLX and CLUE. The LispWorks programming environment has been written
   using the toolkit and includes: an Emacs-like editor, listener,
   debugger, profiler, and operating system shell; browsers/graphers for
   classes, generic functions, processes, windows, files, compilation
   errors, source code systems, and setting LispWorks parameters; and an
   interactive interface builder and complete online hypertext
   documentation. Contact: lispworks-request@harlqn.co.uk

   CLM (Common Lisp Motif) and GINA (Generic Interactive Application) and IB
   (Interface Builder). CLM runs Motif widgets in a separate C process, with
   minimal work on the Lisp side and communicates between C and Lisp using TCP
   sockets. Runs in Allegro CL, Sun CL, and Symbolics Genera. GINA uses CLOS.
   Available free in the X contrib directory or by anonymous ftp from either
   export.lcs.mit.edu:/contrib or ftp.gmd.de:/gmd/gina [129.26.8.90] as the
   files CLM+GINA.README, CLM2.2.tar.Z and GINA2.2.tar.Z.  CLM was written by
   Andreas Baecker <baecker@gmdzi.gmd.de>, GINA by Mike Spenke
   <spenke@gmdzi.gmd.de>, and IB by Thomas Berlage <berlage@gmdzi.gmd.de>.
   Contact Mike Spenke for more info. To be added to the mailing list, send
   a message to gina-users-request@gmdzi.gmd.de.

   EW (Express Windows) is intended to mimic Symbolics' Dynamic Windows user
   and programmer interfaces. It is available free in the ew/ subdirectory of
   the Lisp Utilities repository.  It is no longer under active development.
   Runs on Sun/Lucid, Franz Allegro, and Symbolics. Should port easily to
   other Lisps with CLX. 
   Written by Andrew L. Ressler <aressler@oiscola.columbia.ncr.com>.

   Garnet is a large and flexible GUI. Lots of high-level features.  Does
   *not* depend on CLOS, but does depend on CLX. Garnet (version 2.0 and
   after) is now in the public domain, and has no licensing restrictions,
   so it is available to all foreign sites and for commercial uses.
   Detailed instructions for obtaining it by anonymous ftp are available
   by anonymous ftp from a.gp.cs.cmu.edu [128.2.242.7] as the file
   /usr/garnet/garnet/README.  Garnet includes the Lapidiary interactive
   design tool, C32 constraint editor, spreadsheet object, Gilt
   Interface Builder, automatic display management, two 
   widget sets (Motif look-and-feel and Garnet look-and-feel), support for
   gesture recognition, and automatic constraint maintenance, application
   data layout and PostScript generation. Runs in virtually any Common
   Lisp environment, including Allegro, Lucid, CMU, and Harlequin Common
   Lisps on Sun, DEC, HP, Apollo, IBM 6000, and many other machines.
   Garnet helps implement highly-interactive, graphical, direct
   manipulation programs for X/11 in Common Lisp.  Typical applications
   include: drawing programs similar to Macintosh MacDraw, user interfaces
   for expert systems and other AI applications, box and arrow diagram
   editors, graphical programming languages, game user interfaces,
   simulation and process monitoring programs, user interface construction
   tools, CAD/CAM programs, etc. Contact Brad Myers (bam@a.gp.cs.cmu.edu)
   for more information. Bug reports and administrative questions:
   garnet@cs.cmu.edu. Garnet is discussed on the newsgroup comp.windows.garnet.

   LispView is a GUI written at Sun that does not use CLX.  Instead it
   converts Xlib.h directly into Lucid foreign function calls. It is intended
   to be fast and tight. Uses CLOS.  Available for anonymous ftp from
      export.lcs.mit.edu:contrib/lispview1.1 and 
      xview.ucdavis.edu:pub/XView/LispView1.1 
   Includes a general-purpose 2D grapher library.
   Written by Hans Muller (hmuller@sun.com). Runs in Sun CL and Lucid CL.
   Direct questions about the source provision to lispview@Eng.Sun.Com.
   
   WINTERP (Widget INTERPreter) was developed at HP and uses the Xtoolkit and
   Motif widget set. It is based on David Betz's XLISP interpreter, which is a
   small subset of Common Lisp that runs on IBM PCs. Runs on DecStation 3100,
   HP9000s, Sun3, Sparcs.  It is a free-standing Lisp-based tool for setting
   up window applications. Available free in X contrib directory, or by
   anonymous ftp from export.lcs.mit.edu:contrib/winterp-???.tar.Z where ???
   is the version number.  If you do not have Internet access you may request
   the source code to be mailed to you by sending a message to
   winterp-source%hplnpm@hplabs.hp.com or hplabs!hplnpm!winterp-source.
   Contact Niels Mayer mayer@hplabs.hp.com for more information.  

   ftp.csrl.aoyama.ac.jp:YY/     YY window toolkit sources

   YYonX is a port of the YY system to X windows. Runs in Lucid CL, Allegro
   CL, and Symbolics Genera. Supports kanjii.  Developed at Aoyama Gakuin
   University. Available free by anonymous ftp from ftp.csrl.aoyama.ac.jp:YY/
   Written by Masayuki Ida <ida@cc.aoyama.ac.jp>

   Picasso is a CLOS based GUI, and is available from
   postgres.berkeley.edu:/pub/Picasso-2.0 It runs on DecStation 3100s, Sun3
   (SunOs), Sun4 (Sparc), and Sequent Symmetry in Allegro CL. The file
   pub/xcl.tar.Z contains X-Common Lisp interface routines. Send mail to
   picasso@postgres.berkeley.edu for more information.

   XIT (X User Interface Toolkit) is an object-oriented user interface
   toolkit for the X Window System based on Common Lisp, CLOS, CLX, and
   CLUE. It has been developed by the Research Group DRUID at the
   Department of Computer Science of the University of Stuttgart as a
   framework for Common Lisp/CLOS applications with graphical user
   interfaces for the X Window System.  The work is based on the USIT
   system developed by the Research Group INFORM at the University of
   Stuttgart. Although the system kernel is quite stable, XIT is still
   under active development. XIT can be obtained free by anonymous ftp
   from ifi.informatik.uni-stuttgart.de (129.69.211.1) in the directory
   /pub/xit/.

----------------------------------------------------------------
[6-6] Formatting code in LaTeX

SLaTeX is a R4RS-compliant Scheme program that allows you to write
program code "as is" in your LaTeX or TeX source.  It is particularly
geared to the programming languages Scheme and Common Lisp, and has
been tested in Chez Scheme, Common Lisp, MIT C Scheme, Elk, Scheme->C,
SCM and UMB Scheme on Unix; and MIT C Scheme and SCM on MSDOS.  The
formatting of the code includes assigning appropriate fonts to the
various tokens in the code (keywords, variables, constants, data), at
the same time retaining the proper indentation when going to the
non-monospace (non-typewriter) provided by TeX.  SLaTeX comes with two
databases that recognize the standard keywords/variables/constants of
Scheme and Common Lisp respectively.  These can be modified by the
user using easy TeX commands.  In addition, the user can inform SLaTeX
to typeset arbitrary identifiers as specially suited TeX expressions
(i.e., beyond just fonting them).  The code-typesetting program SLaTeX
is available by anonymous ftp from cs.rice.edu as the file
public/slatex.tar.Z. Send bug reports to dorai@cs.rice.edu.

----------------------------------------------------------------
;;; *EOF*