Search the FAQ Archives

3 - A - B - C - D - E - F - G - H - I - J - K - L - M
N - O - P - Q - R - S - T - U - V - W - X - Y - Z - Internet FAQ Archives

FAQ: Lisp FTP Resources 6/7 [Monthly posting]

( Part1 - Part2 - Part3 - Part4 - Part5 - Part6 - Part7 - MultiPage )
[ Usenet FAQs | Web FAQs | Documents | RFC Index | Zip codes ]
Archive-name: lisp-faq/part6
Last-Modified: Wed Feb 19 16:45:11 1997 by Mark Kantrowitz
Version: 1.55
Maintainer: Mark Kantrowitz and Barry Margolin <>
Size: 74922 bytes, 1431 lines

See reader questions & answers on this topic! - Help others by sharing your knowledge
;;; ****************************************************************
;;; FTP Archives and Other Resources *******************************
;;; ****************************************************************
;;; Written by Mark Kantrowitz and Barry Margolin
;;; lisp_6.faq

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

Topics Covered (Part 6):
  [6-0] General information about FTP Resources for Lisp
  [6-1] Repositories of Lisp Software
  [6-3] Publicly Redistributable Lisp Software
  [6-6] Formatting code in LaTeX (WEB and other literate programming tools)
  [6-7] Where can I get an implementation of Prolog in Lisp?
  [6-8] World-Wide Web (WWW) Resources

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

Subject: [6-0] General information about FTP Resources for Lisp Remember, when ftping compressed or compacted files (.Z, .z, .arc, .fit, etc.) to use binary mode for retrieving the files. Files that end with a .z suffix were compressed with the patent-free gzip (no relation to zip). Source for gzip is available from: as the files gzip-1.2.3.shar, gzip-1.2.3.tar,or gzip-1.2.3.msdos.exe. FTP sites for Lisp and Scheme interpreters and compilers are discussed in the answer to questions [4-0] and [4-2] and in the Scheme FAQ. 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.
Subject: [6-1] Repositories of Lisp Software There are several repositories of publicly redistributable and public domain Lisp code. Common Lisp Repository: The Common Lisp Repository is accessible by anonymous ftp to [] through the AFS directory /afs/ or by WWW from the URL and includes more than 250 megabytes of sources, including all freely distributable implementations and many programs. This repository supersedes the Lisp Utilities collection, and is now part of the CMU Artificial Intelligence Repository. Programs in the repository include XREF (portable cross referencing tool for Lisp, similar to the Symbolics Who-Calls and the Xerox MasterScope programs), Brad Miller's initializations package for Allegro CL 4.0, DEFSYSTEM (portable system definition facility, a "Make" for Lisp), a portable implementation of the X3J13 June 1989 specification for logical pathnames, METERING (a portable code time/space profiling tool), SOURCE-COMPARE (a portable "diff" utility for Lisp), USER-MANUAL (a program which helps with documenting Lisp code), PSGRAPH (Joe Bates' PostScript DAG grapher), several matchers for Lisp, NREGEX (a regular expressions matcher), a date formatter, an infix reader macro for Lisp, SAVE-OBJECT (Kerry Koitzsch's package to save ASCII representations of Lisp objects to a file), Stephen Nicoud's semi-portable CLtL2 version of defpackage, LALR (Mark Johnson's lisp YACC parser generator), various implementations of the Loop Macro, William Schelter's sloop macro, Frank Ritter and Jim Panagos' implementation of the Yale yloop macro (described in McDermont, Charniak and Riesbeck's AI programming book), all free Lisp GUIs, including Express Windows, the iterate macro, Waters' Series Macro package, Waters' XP Lisp Pretty Printer, Bruno Haible's implementation of the Simplex algorithm, MAPFORMS (Moon's code walker), Brad Miller's resources package, and much much more. The repository has standardized on using 'tar' for producing archives of files and 'gzip' for compression. To search the keyword index by mail, send a message to: with one or more lines containing calls to the keys command, such as: keys lisp iteration in the message body. Keywords may be regular expressions and are compared with the index in a case-insensitive conjunctive fashion. You'll get a response by return mail. Do not include anything else in the Subject line of the message or in the message body. For help on the query mail server, include: help instead. A Mosaic interface to the keyword searching program is in the works. We also plan to make the source code (including indexes) to this program available, as soon as it is stable. Most of the Common Lisp Repository appears on Prime Time Freeware for AI, Issue 1-1, a mixed-media book/CD-ROM publication. It includes two ISO-9660 CD-ROMs bound into a 224 page book and sells (list) for US$60 plus applicable sales tax and shipping and handling charges. Payable through Visa, Mastercard, postal money orders in US funds, and checks in US funds drawn on a US bank. For more information write to Prime Time Freeware, 370 Altair Way, Suite 150, Sunnyvale, CA 94086 USA, call 408-433-9662, 408-433-0727 (fax), or send email to Contributions of software and other materials are always welcome but must be accompanied by an unambiguous copyright statement that grants permission for free use, copying, and distribution -- either a declaration by the author that the materials are in the public domain, that the materials are subject to the GNU General Public License (cite version), or that the materials are subject to copyright, but the copyright holder grants permission for free use, copying, and distribution. (We will tell you if the copying permissions are too restrictive for us to include the materials in the repository.) Inclusion of materials in the repository does not modify their copyright status in any way. Materials may be placed in: When you put anything in this directory, please send mail to giving us permission to distribute the files, and state whether this permission is just for the AI Repository, or also includes publication on the CD-ROM version (Prime Time Freeware for AI). We would also appreciate if you would include a 0.doc file for your package; see /user/ai/new/package.doc for a template. (If you don't have the time to write your own, we can write it for you based on the information in your package.) The Common Lisp Repository is maintained by Mark Kantrowitz, Known mirrors: CLOS: The CLOS code repository is available by anonymous ftp to [] If you've got code you'd like to add to the repository, send mail to Arun Welch, The CLOS code repository includes dag.lisp.Z and 3DGeometry.lisp. [The AI Repository's Lisp Section includes a directory of CLOS code as well, in MCL: The Macintosh Common Lisp repository contains Lisp code for MCL contributed by MCL users. It is available by anonymous ftp from [] and also contains the Info-MCL mailing list archives. The repository contains, among other things, AV_Parser.hqx and Zebu (general parser toolkits), babylon-2.2.sit.hqx (expert system shell from GMD in Germany), btree.sit.hqx (binary trees), LGL.lisp (Lisp Graphics Library for MCL), quicktime code, mmlisp.sit.hqx (midi-manager interface), tips on optimizing MCL code, PARKA.sit.hqx (a knowledge representation system), starsim.sit.hqx (*Lisp for MCL), IP/TCP examples, and support for hypercard XCMDs and XFCNs. See the file README for a quick overview of the contents of the MCL repository. CLIM: The CLIM Library (a library of user contributed code for the CLIM environment) is available by anonymous ftp on [] For information on CLIM, see the entry in [6-5] below. For more information on the CLIM Library, contact Vincent Keunen, MIT AI Lab: loop-macro.tar [LOOP from CLtL1] series/ [SERIES from CLtL2; older version] Iterate/ [Alternative to series and loop.] clmath.tar [Numeric math 1984] ontic/ [ONTIC Knowledge Rep. for Mathematics] clmath is a Lisp library of mathematical functions that calculate hyperbolic and inverse hyperbolic functions, Bessel functions, elliptic integrals, the gamma and beta functions, and the incomplete gamma and beta functions. There are probability density functions, cumulative distributions, and random number generators for the normal, Poisson, chi-square, Student's T, and Snedecor's F functions. Discrete Fourier Transforms. Multiple linear regression, Fletcher-Powell unconstrained minimization, numerical integration, root finding, and convergence. Code to factor numbers and to do the Solovay-Strassen probabilistic prime test is included. A technical report describing CLMath is available as MIT AI Lab Memo 774, Gerald Roylance, "Some Scientific Subroutines in LISP", September 1984. Iterate is Jonathan Amsterdam's alternative to series and the Loop macro. For more information, contact LispUsers Archives: The LispUsers Archives, a collection of programs for Medley, can be found on The files include a plotting module, addressbook, chat program, clock, call-grapher, grep implementation, Tower of Hanoi, Life, lisp dialect translator, and fonts. Also on is GTT, an implementation of Chandrasekaran's Generic Tasks Toolset, in directory pub/lispusers/toolset. Amiga LISP implementations: There's a repository of Amiga LISP implementations (and other Lisp-like language implementations) on Inside Computer Understanding: Common Lisp versions of the mini programs from "Inside Computer Understanding" by Schank and Riesbeck, 1981, are available by anonymous ftp from 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 <> for more information. Norvig: The software from Peter Norvig's book "Paradigms of AI Programming" is available by anonymous ftp from 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 NL Software Registry: A catalog of free and commercial natural language software is available from the Natural Language Software Registry, by anonymous ftp from or by email to TI Explorer Lisp Code: 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 Waters' Programs: Dick Waters' XP Lisp Pretty Printer is available by anonymous ftp from as the files xp-code.lisp, xp-doc.txt, and xp-test.lisp. The Series Macro is available from as the files s-code.lisp, s-test.lisp, and s-doc.txt. The Series macro package is described fully in Waters, R.C., "Automatic Transformation of Series Expressions into Loops", ACM Transactions on Programming Languages and Systems, 13(1):52--98, January 1991, MIT/AIM-1082 and MIT/AIM-1083. Both programs are also available from the Common Lisp Repository described above. For further information, contact Dick Waters, <> or <>. An improved version of Series is in the works.
Subject: [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 [] Written by Mike Rosner and Dean Allemang {dean,mike} 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 is available by anonymous ftp from [] (AKA For more information, contact Analogical Reasoning: SME is the Structure-Mapping Engine, as described in Falkenhainer, Forbus, and Gentner's 1987 AIJ article. Available from For further information, contact Brian Falkenhainer <> or Ken Forbus <>. Benchmarks: Gabriel Lisp Benchmarks are available by anonymous ftp as The benchmarks are described in the book "Performance Evaluation of Lisp Systems", by Richard Gabriel. 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 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, 401 Main Street, Amherst, Massachusetts 01002, telephone 800-KSS-8990 or 413-256-8990, fax 413-256-3179. For a tutorial on how to build a blackboard system, see the paper P. R. Kersten and Avi C. Kak, "A Tutorial on LISP Object-Oriented Programming for Blackboard Computation (Solving the Radar Tracking Problem)", International Journal of Intelligent Systems 8:617-669, 1993 Although samples of the code are given in the paper, the full source code is available in a separate technical report from the School of Electrical Engineering at Purdue University. If you are interested in getting a copy of the technical report, send mail to Avi Kak <>. (The circumstances under which the software was developed prevent them from making the source code available by anonymous FTP. However, the full source code is printed in the technical report.) 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 <> or Ray Bareiss <> or Erik Eilerts <> Available by anonymous ftp from The complete code for "Inside Case-Based Reasoning" by Riesbeck and Schank, 1989, is available by anonymous ftp from This includes code for an instructional version of CHEF by Kristian Hammond and MICRO-xxx. Contact Bill Andersen <> for more information. CLOS Software: See question [5-6]. Constraint Programming and Non-determinism: SCREAMER: Screamer is an extension of Common Lisp that adds support for nondeterministic programming. Screamer consists of two levels. The basic nondeterministic level adds support for backtracking and undoable side effects. On top of this nondeterministic substrate, Screamer provides a comprehensive constraint programming language in which one can formulate and solve mixed systems of numeric and symbolic constraints. Together, these two levels augment Common Lisp with practically all of the functionality of both Prolog and constraint logic programming languages such as CHiP and CLP(R). Furthermore, Screamer is fully integrated with Common Lisp. Screamer programs can coexist and interoperate with other extensions to Common Lisp such as CLOS, CLIM and Iterate. In several ways Screamer is more efficient than other implementations of backtracking languages. First, Screamer code is transformed into Common Lisp which can be compiled by the underlying Common Lisp system. Many competing implementations of nondeterministic Lisp are interpreters and thus are far less efficient than Screamer. Second, the backtracking primitives require fairly low overhead in Screamer. Finally, this overhead to support backtracking is only paid for those portions of the program which use the backtracking primitives. Deterministic portions of user programs pass through the Screamer to Common Lisp transformation unchanged. Since in practise, only small portions of typical programs utilize the backtracking primitives, Screamer can produce more efficient code than compilers for languages in which backtracking is more pervasive. Screamer is fairly portable across most Common Lisp implementations. It currently runs under Genera 8.1.1 and 8.3 on both Symbolics 36xx and Ivory machines, under Lucid 4.0.2 and 4.1 on Sun SPARC machines, under MCL 2.0 and 2.0p2 on Apple Macintosh machines, and under Poplog Common Lisp on Sun SPARC machines. It should run under any implementation of Common Lisp which is compliant with CLtL2 and with minor revision could be made to run under implementations compliant with CLtL1 or dpANS. Screamer is available by anonymous FTP from Contact Jeffrey Mark Siskind <> for further information. Screamer is also available from the Common Lisp Repository. The Screamer Tool Repository, a collection of user-contributed Screamer code, is available by anonymous ftp from or by WWW from Please direct all inquires about the repository to Defeasible Reasoning: An implementation of J. Paris and A. Vencovska's model of belief is available by anonymous ftp from Paris and Vencovska's paper (Artificial Intelligence, 64(2), December 1993) provides a mathematical model of an agent's belief in an event by identifying it with his ability to imagine the event within the context of his previous experience. This approach leads to beliefs having properties different from those normally ascribed to it. The implementation was written by Ian Pratt <> and Jens Doerpmund <> and runs in Common Lisp. Eliza and Similar Programs: See Peter Norvig's book and AI_ATTIC (question [6-1] above). The doctor.el is an implementation of Eliza for GNU-Emacs emacs-lisp. Invoke it with "Meta-X doctor" muLISP-87 (a MSDOS Lisp sold by Soft Warehouse) includes a Lisp implementation of Eliza. Implementations of ELIZA for other languages are mentioned in the AI FAQ. The original Parry (in MLISP for a PDP-10) is available in Other programs, such as RACTER, are listed in part 4 of the AI FAQ. 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 as the files README.FOCL-1-2-3, FOCL-1-2-3.cpt.hqx (a binhexed, compacted Macintosh application), FOCL-1-2-3.tar.Z (Common Lisp source code), and FOCL-1-2-3-manual.hqx (binhexed manual). If you use a copy of FOCL, or have any comments or questions, send mail to 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 [] as a BinHexed stuffit archive, on the Web via the URL 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 is a public domain Common Lisp implementation of the OPS5 production system interpreter written by Charles Forgy. It is available from the CMU AI Repository in and includes the original port by George Wood and Jim Kowalski (ops5orig.tar.gz), and a later port by Mark Kantrowitz (ops5.tar.gz). The latter has been tested under Allegro, Lucid, CMU CL, Ibuki CL and MCL. Frame Languages: FrameWork is a portable generic frame system available from the CMU AI Repository, in THEO (learning frame system) is available free from CMU, after signing a license agreement. Send mail to FrameKit is available free from CMU, after signing a license agreement. Send mail to KR. Send mail to for more info. PARKA. Frames for the CM. Contact PARMENIDES (Frulekit) is available free, after signing a license agreement. Send mail to FROBS is available free by anonymous ftp from Contact Robert Kessler <> for more info. PFC is a simple frame system written by Tim Finin available free by anonymous ftp from 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 <>. Genetic Algorithms: GECO (Genetic Evolution through Combination of Objects) is a genetic algorithm shell written by George Williams, <>. It is available by anonymous ftp from 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 <> and is available from 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. Other genetic algorithms code is available including Genesis (source-code/ga-source/genesis.tar.Z) and the archives of the GA-List mailing list. A survey of free and commercial genetic algorithms implementations is available in information/ga-software-survey.txt. Knowledge Representation: KNOWBEL is an implementation of Telos (a sorted/temporal logic system) by Bryan M. Kramer, <>. It is available by anonymous ftp from 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 (Semantic Network Processing System) is the implementation of a fully intensional theory of propositional knowledge representation and reasoning. SNePS includes a module for creating and accessing propositional semantic networks, path-based inference, node-based inference based on SWM (a relevance logic with quantification) that uses natural deduction and can deal with recursive rules, forward, backward and bi-directional inference, nonstandard logical connectives and quantifiers, an assumption based TMS for belief revision, a morphological analyzer and a generalized ATN (GATN) parser for parsing and generating natural language, SNePSLOG, a predicate-logic-style interface to SNePS, XGinseng, an X-based graphics interface for displaying, creating and editing SNePS networks, SNACTor, a preliminary version of the SNePS Acting component, and SNIP 2.2, a new implementation of the SNePS Inference Package that uses rule shadowing and knowledge migration to speed up inference. SNeRE (the SNePS Rational Engine), which is part of Deepak Kumar's dissertation about the integration of inference and acting, will replace the current implementation of SNACTor. SNePS is written in Common Lisp, and has been tested in Allegro CL 4.1, Lucid CL 4.0, TI Common Lisp, CLISP May-93, and CMU CL 17b. It should also run in Symbolics CL, AKCL 1.600 and higher, VAX Common Lisp, and MCL. The XGinseng interface is built on top of Garnet. SNePS 2.1 is free according to the GNU General Public License version 2. The SNePS distribution is available by anonymous ftp from [] as the file rel-x-yyy.tar.Z, where 'x-yyy' is the version. The other files in the directory are included in the distribution; they are duplicated to let you get them without unpacking the full distribution if you just want the bibliography or manual. If you use SNePS, please send a short message to and Please also let them know whether you'd like to be added to the SNUG (SNePS Users Group) mailing list. 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 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 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 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 URANUS is a logic-based knowledge representation language. Uranus is an extension of Prolog written in Common Lisp and using the syntax of Lisp. Uranus extends Prolog with a multiple world mechanism for knowledge representation and term descriptions to provide functional programming within the framework of logic programming. It is available free by anonymous ftp from [] for research purposes only. For more information contact the author, Hideyuki Nakashima <>. Languages and Alternate Syntaxes: Generalized Lisp (or Glisp for short) is a coordinated set of high level syntaxes for Common Lisp. Initially GLisp consists of three dialects: Mlisp, Plisp and ordinary Lisp, together with an extensible framework for adding others. Mlisp (Meta-Lisp) is an Algol-like syntax for people who don't like writing parentheses. For example, one can write print("abc", stream) instead of (print "abc" stream). Plisp (Pattern Lisp) is a pattern matching rewrite-rule language. Plisp is a compiler-compiler; its rules are optimized for writing language translators. All dialects may be freely intermixed in a file. The translators for all dialects are written in Plisp, as is the Glisp translator framework itself. Support routines for the translators are written in Mlisp and/or Lisp. All dialects are translated to Common Lisp and execute in the standard Common Lisp environment. Glisp is available by anonymous ftp from or GLISP runs in MCL and has to be modified for other Common Lisp implementations. CGOL is algol-like language that is translated into Lisp before execution. It was developed originally by Vaughn Pratt. A Common Lisp implementation of CGOL is available by anonymous ftp from [] (The number "1" may increase if newer versions are posted.) It was written by a UC Berkeley graduate student, Tom Phelps, as a term project, so there may still be some rough edges. There is a lot of documentation in the distribution, including the "original" CGOL memo (pratt.memo). For more information, contact Richard Fateman <>. StarLisp Simulator. The StarLisp Simulator simulates *Lisp, one of the programming langauges used to program the Connection Machine. StarLisp runs under Symbolics, Lucid, Allegro, and Franz, and is available by anonymous ftp from The "CM5 *Lisp Tutorial" is available by anonymous ftp from [] in Andrew "ez" and postscript formats. Write to Zdzislaw Meglicki <> for more information about the tutorial. InterLisp->Common-Lisp Translator -- 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 [] Glasgow [] Yale [] as the files haskell-beta-2-source.tar.Z -- full sources haskell-beta-2-sparc.tar.Z -- sparc executable Lisp Tools: See the Common Lisp Repository in [6-2]. 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 []. Contact Marty Hall <> for more information. The code includes an overview of memoization and its applications. 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 [] Written by John Peterson <>. RegExp is an extension to Allegro Common Lisp which adds regular expression string matching, using the foreign function interface. Available by anonymous ftp from Contact for more information. contains three small utilities: completion.lisp A simple filename completion program. cl-utilities.lisp Some macros for dealing with points, regions, and some miscellaneous macros. copy-objects.lisp Code for copying instances. contains some useful lisp code (most of it Symbolics dependent) including: lisp-lint.lisp A set of compiler style checkers that warn when a function call does not conform to Common Lisp. MEASURES is a system to handle engineering numbers and measures in Common Lisp. It runs in Allegro CL, LispWorks, MCL, and Symbolics CL. Written by Roman Cunis. Some documentation can be found in the file measures.doc and examples in measures-example.lisp. It is available from the Common Lisp Repository in the file measures-2.0.tar.gz. For further information, contact Ralf Moeller, University of Hamburg, Bodenstedtstr 16, 2000 Hamburg 50, Germany, call 40-4123-6134, fax 40-4123-6530, or send email to DEFTABLE provides a macro that unifies the interface to Common Lisp's table-like data structures (e.g., association lists, property lists, and hash tables). Written by Peter Norvig <>. It is available by anonymous ftp from [] and also the Lisp Utilities Repository. An article describing deftable was published in ACM Lisp Pointers 5(4):32-38, December 1992. SEQUEL (SEQUEnt processing Language) is designed both as a general purpose AI language for generating type-secure and efficient Lisp programs and as a very high level specification language for implementing logics on the computer. Designed at the University of Leeds, SEQUEL compiles sequent-calculus specifications of arbitrary logics to working proof assistants. The sequent calculus specifications are compiled into Horn clauses and from Horn clauses into virtual machine instructions of an abstract machine SLAM (SequeL Abstract Machine) which then translates these instructions into efficient Lisp code using WAM-style compilation techniques. Although a functional programming language, SEQUEL includes facilities for backtracking usually associated with logic programming, and supports a pattern-matching method of building functions based on Prolog notation. The Lisp code generated from SEQUEL functions is completely portable and runs in most Common Lisp implementations. It is comparable in efficiency with hand-written code. SEQUEL also supports optional static type-checking in the manner of SML and similar languages. With type-checking enabled, all inputs and loaded files are type-checked and the resulting Lisp programs are type-secure. The SEQUEL compiler uses the information gleaned from type-checking to add compiler directives within the generated Lisp functions to produce optimized Lisp programs. SEQUEL includes a UNIX-style top level with its own trace package and type-checking debugger. SEQUEL is also of interest to automated reasoning researchers. It provides a very powerful means of generating proof assistants and theorem provers that have a very fast performance using WAM-derived compilation techniques. The theorem provers are automatically verified. It includes a facility for Datalog and an efficient occurs-check Horn-clause-to-Lisp compiler, a mouse driven graphical interface for all proof assistants and theorem provers built under SEQUEL (currently available only under Lucid). Several demonstration theorem provers for different logics, including FOL, Clarke's logic of space, partial evaluation, set theory, and constructive type theory are available. SEQUEL runs under Kyoto CL, Lucid CL, and CMU Common Lisp. SEQUEL is available free for non-commercial purposes by anonymous ftp from [] and includes LaTeX documentation in the distribution. For more information, contact Mark Tarver <> or <>. ILU (Xerox PARC Inter-Language Unification) is a system for promoting language interoperability via interfaces between units of program structure called "modules". ILU currently supports Common Lisp, ANSI C, C++, and Modula-3. The Common Lisp support provides CLOS `network objects' that communicate via RPC between Lisp processes, as well between Lisp and other languages. ILU is available by anonymous ftp from Write to Bill Janssen <> for more information. 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 COBWEB/3 is a concept formation system available free after signing a license agreement. Contact for more information. RWM (Refinement With Macros) is a Common Lisp program for learning problem solving strategies. RWM takes a high level description of a problem as input and successively refines it into a sequence of "easier" subproblems, which collectively constitute a strategy for solving the given problem. RWM also learns macro moves which are useful for efficiently solving the problem. A short documentation and some example problems/strategies are included. To get a copy of this description, send mail to the Bilkent University Archieve Server bilserv@trbilun.bitnet with "send RWM.tar.Z" in the body of the message. For further information, contact H. Altay Guvenir <guvenir@trbilun.bitnet>. Mathematics: MockMma -- [] A Mathematica-style parser written in Common Lisp. Written by Richard Fateman; fateman@renoir.Berkeley.EDU. Runs in any valid Common Lisp. Tested in Allegro, KCL and Lucid. Maxima for Common Lisp (License required from National Energy Software Center at Argonne.) Ported by Bill Schelter. QUAIL (Quantitative Analysis in Lisp) extends Common Lisp to better support quantitative analysis. It includes an object-oriented quantitative analysis programming environment based on CLOS. Quail was developed by the Statistical Computing Laboratory of the Department of Statistics and Actuarial Science of the University of Waterloo. It includes a variety of mathematical and statistical capabilities, such as symbolic and numerical differentiation, numerical integration, probability calculations (e.g., pseudo-random number generation), and statistical response models. The object-oriented graphics display facilities include building blocks for arbitrary graphics, a collection of stock statistical graphics, function plotting, 3d-rotating function and surface plots, and graphical browsers. Quail currently runs in MCL, but a Franz and CLX based version is forthcoming. It is available by anonymous ftp from [] You must read the file README-I-MEAN-IT and return a signed copy of the license agreement ($10 annual license fee) before using the software. For further information, contact Dr. R. W. Oldford, <> or <>. Medical Reasoning: TMYCIN -- The TMYCIN rule based system. Music: Common Music is a music composition language written in Common Lisp and CLOS that outputs music (directly or through scorefiles) to a variety of synthesis packages, such as the Music Kit, Common Lisp Music, MIDI, and CSound. Common Music runs under MCL 2.0, Allegro CL 3.1.2 (NeXT), AKCL 1.615 (NeXT), Allegro CL 4.1 beta (SGI Iris), and AKCL 6.15 (Sun4). It is available by anonymous ftp from [] [] To be added to the mailing list, send mail to For further information, contact Rick Taube, <> or <>. [Note: In the Common Music sources, there is a generic portable Lisp Listener style interpreter that supports command dispatching in addition to Lisp evaluation. It is the file ./utils/tl.lisp.] Common Lisp Music (CLM) is a software synthesis and signal processing package (CL-MUSIC) and a package that makes it relatively easy to take advantage of the Motorola DSP 56000 (CL-MUSIC-56). It is available by anonymous ftp from [] Basic documentation is in clm.wn (or clm.rtf) and ins.lisp. CLM runs on NeXT under Allegro CL or KCL and on SGI Indigo under Allegro CL. The non-56000 version should run on any machine with C and Common Lisp. Send bug reports or suggestions to Bil Schottstaedt <>. Common Music Notation (CMN) is a western music notation package based on Common Lisp, CLOS (pcl), PostScript, and the Adobe Sonata font. It is available by anonymous ftp from [] To be added to the mailing list (same list as for Common Music), send mail to Please send bug reports and suggestions to Bil Schottstaedt <>. Natural Language Processing: The Xerox part-of-speech tagger is available by anonymous ftp from It is implemented in Common Lisp and has been tested in Allegro CL 4.1, CMU CL 17e, and Macintosh CL 2.0p2. For more information, contact the authors, Jan Pedersen <> and Doug Cutting <>. Natural Language Generation: FUF is a natural language generation system based on Functional Unification Grammars implemented in Common Lisp. It includes a unifier, a large grammar of English (surge), a user manual and many examples. FUF is available by anonymous ftp from as the files fuf5.2.tar.Z and surge.tar.Z. For further information, contact the author, Michael Elhadad <>. [A WAM-based C compiler for FUF is in the works.] Neural Networks: ANSIL -- "Advanced Network Simulator in Lisp" email: Object-Oriented Programming: PCL -- [] Portable Common Loops (PCL) is a portable implementation of the Common Lisp Object System (CLOS). A miniature CLOS implementation called Closette is available pcl/mop/closette.lisp. CLOS-on-KEE -- 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) -- [] 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. Runs in any valid Common Lisp. Contact: Harry Bretthauer and Juergen Kopp, German National Research Center for Computer Science (GMD), AI Research Division, P.O. Box 1316, D-5205 Sankt Augustin 1, FRG, email: CommonORBIT (also called CORBIT) is an object-oriented extension of Common Lisp. It uses a prototype (classless) model of OOP, is easy to use and yet has many sophisticated features found also in KL-ONE type languages. CommonORBIT is a Common Lisp reimplementation of ORBIT, which was originally conceived by Luc Steels around 1981-1983. Because of its delegation-based rather than class-based inheritance, CommonORBIT offers extreme flexibility to define and change practically anything at run-time. Because of the generic functions, it fits well into regular Lisp code. It can co-exist with CLOS but remains completely separate. The source code of CommonORBIT is in the public domain and available by anonymous ftp from the Lisp Utilities Repository, in the oop/non-clos/corbit/ subdirectory as the file corbit.tar.gz. Documentation is available as the files corbit.msword.hqx, or corbit.text. A stripped-down version of CORBIT, known as BOOPS (Beginner's Object-Oriented Programming System), is also available from the repository as boops.tar.Z. For further information, contact the author, Koenraad de Smedt <>. Parser Generators: Mark Johnson <> has written a LALR parser generator for Common Lisp. It is fairly small (about 500 lines of code) and can be found in the Common Lisp Repository above. IPG (Incremental Parser Generator) is available by email from Jan Rekers <>. It is an appendix to his thesis. It is written in LeLisp, but should be portable to other Lisp dialects. Zebu 2.8.5 is a parser generator for Common Lisp by Joachim H. Laubsch <>. It is an extention written in Common Lisp of the Scheme version. It generates a LALR(1) parsing table. To parse a string with a grammar, only this table and a driver need to be loaded. The present version of Zebu contains the ability to define several grammars and parsers simultaneously, a declarative framework for specifying the semantics, as well as efficiency related improvements. The current version compiles a grammar with 300 productions (including dumping of the tables to disk) in approx 2 minutes and 30 seconds on a HP 9000/370. This implimentation has been tested in Lucid CL, Allegro CL, and MCL 2.0b. The current version can also produce a generator in addition to a parser. A copy may be found on 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 [] and by email from the author, Russell Almond <>. Contact the author at for information about a commercial version GRAPHICAL-BELIEF currently in the prototype stages. XLISP-STAT is an extensible statistics package which runs in XLISP. It has recently been ported to Common Lisp, and is available as [] 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, and runs on the Apple Macintosh, Unix systems running X11 (Vax, PMAX, Sun3, Encore Multimax, and Cray XMP), Sun workstations running SunView, and the Commodore Amiga. An experimental version for DOS computers running Microsoft Windows 3.0 is also available. Documentation is available online, in the tutorial introduction pub/xlispstat/xlispstat.doc.tar.Z and also in the book Luke Tierney, "Lisp-Stat: An Object Oriented Environment for Statistical Computing and Dynamic Graphics", Wiley, 1990, 397 pages. ISBN 0-471-50916-7. For more information, write to Lisp-Stat Information, School of Statistics, 270 Vincent Hall, University of Minnesota, Minneapolis, MN 55455, or send e-mail to CLASP (Common Lisp Analytical Statistics Package) provides the basic functionality of a statistics package. It is implemented on top of CLOS and CLIM on a variety of platforms, and uses BBN's SciGraph package for plotting. The CLIM interface includes a "notebook" that is both a "desktop" for icons and a Lisp interactor pane. The Common Lisp Instrumentation Package (CLIP) is available along with CLASP. CLIP is designed to allow AI system developers andevaluators a portable way to define and manage "alligator clips" for instrumenting their programs. CLIP produces data about program behavior in CLASP format, as well as other commonly used data formats. It currently has facilities to support experiment design, such as scenario scripting and factorial combination of independent variables, and can collect data in summary form (at the end of each trial) or based upon the occurrence of specific events (both periodic and non-periodic). CLASP is available by anonymous ftp from and CLIP is in the directory A tutorial on CLASP can be found in Bugs should be reported to For more information, contact Dave Hart <>. IDEAL is a LISP system developed for building and evaluating influence diagrams and Bayesian networks. It is accompanied with a graphical user interface (CLIM-based) for constructing, editing, and solving belief networks and influence diagrams. For more information, write to Planning: NONLIN -- ( Common Lisp implementation of the NONLIN planning system originally designed and implemented by Austin Tate. Bugs can be reported to User's group is The authors request that anybody ftping the code send a message to, 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, ABTWEAK is a complete hierarchical, non-linear planner that extends David Chapman's (MIT 1986) TWEAK planner as described by Yang (Waterloo) and Tenenberg (Rochester) in 1989. This implementation includes a complete search strategy suited to abstraction hierarchies known as LEFT-WEDGE (Woods 1991). This planner and related work predates that of SNLP. ABTWEAK is available by anonymous ftp from For more information, send mail to Qiang Yang <>. Also, source, all related papers, and manuals are available via WWW at the home page of Steve Woods <>, on URL, or via the Logic Programming and Artificial Intelligence Group (LPAIG) page on URL RHETORICAL is a planning and knowledge tool available by anonymous ftp from 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 <>. PRODIGY is an integrated planning and learning system, available free after signing a license agreement. Contact 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 (or any other CMU CS machine) in the directory /afs/ [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 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 or to the physical address above. A simple route planning agent implemented in Soar6 is available by anonymous ftp from This is the complete code for the agent described in the IEEE Expert article: Smith, J. W. and Johnson, T. R., "A stratified approach to specifying, designing, and building knowledge systems", IEEE Expert, 8(3):15-25, 1993. SNLP is a domain independent systematic nonlinear planner, available by anonymous ftp from Contact 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 ( Questions, comments and bug reports may be sent to 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 as the file new-tileworld.tar.Z It includes an X interface. Contact for more information. TRUCKWORLD is a simulated world intended to provide a testbed for AI planning programs, where the planning agent is a truck with arms that roams around the simulated world. It is available by anonymous ftp from It includes an X interface. Contact Steve Hanks <> for more information. Send mail to to be added to the mailing list. 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 as file ars-magna.tar.Z. It includes an X display. Contact Sean Engelson <> for more information. Qualitative Reasoning: QSIM is a qualitative reasoning system implemented in Common Lisp. It is available by anonymous ftp from Contact Ben Kuipers <> for more information. QPE is the Qualitative Process Engine, an envisioner for QP theory. QPE is publically available from Maintained by Ken Forbus <>. Theorem Proving: MVL (Multi-Valued Logic) is a theorem proving system written in Common Lisp. MVL is a bilattice-based reasoning system. By changing the bilattice, you can use MVL to do truth maintenance, nonmonotonic reasoning, first-order reasoning, and a variety of other reasoning strategies. MVL is available by anonymous ftp from [] as mvl.tar.Z. A user's manual may be found in the file manual.tex. For more information, contact Matthew L. Ginsberg, <> or <>. Matthew asks that you send him an email message if you retrieve the system by anonymous ftp. Boyer-Moore Contact: nqthm/ Boyer and Moore's theorem prover. Also available from proof-checker/ Matt Kaufmann's proof checking enhancements to nqthm. The mailing list is for users of the Boyer-Moore theorem-prover, NQTHM. DTP is a general first-order theorem prover incorporating intelligent backtracking and subgoal caching, as well as a trace facility that can display proof spaces graphically. Implemented in CLtL2 Common Lisp, it runs in Franz Allegro, Lucid, and Macintosh (MCL) Common Lisp. DTP is available on the Web at or by anonymous ftp from [] Contact Don Geddis <Geddis@CS.Stanford.EDU> for more information. RRL (Rewrite Rule Laboratory) -- [] FRAPPS (Framework for Resolution-based Automated Proof Procedures) is a portable resolution theorem-prover written in Common Lisp. It is available via anonymous ftp from []. If you take a copy of FRAPPS, please send a short note to Prof. Alan M. Frisch <>. Truth Maintenance: The truth maintenance system and problem solver implementations described in the book "Building Problem Solvers" by Ken Forbus and Johan de Kleer are available by anonymous ftp from Includes a constraint propagation system similar to Steele's Constraints system, among other things. For more information send mail to Johan de Kleer <>. 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 [] as veos.tar.Z. If you use the software, the authors ask that you send them mail to Vision: OBVIUS -- [] [] 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 <> and Eero Simoncelli <>. Runs in Lucid-4.0. Includes LaTeX documentation and User's Guide. Miscellaneous: YY window toolkit sources Common Lisp programs, including MIT's FRL.
Subject: [6-6] Formatting code in LaTeX (WEB and other literate programming tools) 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 Send bug reports to SchemeWEB provides simple support for literate programming in Lisp. SchemeWEB version 2.0 is a Unix filter that allows you to generate both Lisp and LaTeX code from one source file. The generated LaTeX code formats Lisp programs in typewriter font obeying the spacing in the source file. Comments can include arbitrary LaTeX commands. SchemeWEB was originally developed for the Scheme dialect of Lisp, but it can easily be used with most other dialects. Version 2.0 is available in the Scheme Repository as or in the Comprehensive TeX Archive Network (CTAN) in the directory LiSP2TeX is a system that allows easy insertions of Scheme, or Lisp, code towards TeX files. The originality of LiSP2TeX is that it extracts Scheme definitions from the files where they appear and wraps them appropriately within TeX macros for insertion into the documentation file. LiSP2TeX decorrelates writing documentation from programming: it is therefore possible to separately develop programs and documentations and to merge them at the end to produce up to date final documents. LiSP2TeX also has some pretty-printing capabilities to produce denotations full of greek letters. It is available by anonymous ftp from See also The Literate Programming FAQ lists a number of alternatives, both language-independent and Lisp-specific. The Literate Programming FAQ is posted once a quarter to the comp.literate.programming newsgroup and is available by anonymous ftp from A copy may also be requested by sending an email message to sendme litprog.faq in the body of the message.
Subject: [6-7] Where can I get an implementation of Prolog in Lisp? Implementations of Prolog in Lisp: The Frolic package from the University of Utah is written in Common Lisp and available by anonymous ftp from LM-PROLOG by Ken Kahn and Mats Carlsson is written in ZetaLisp and not easily portable to Common Lisp. It is available by anonymous ftp from Peter Norvig's book "Paradigms of AI Programming" includes Common Lisp implementations of a prolog interpreter and compiler. The software is available by anonymous ftp from and on disk in Macintosh or DOS format from the publisher, Morgan Kaufmann. For more information, contact: Morgan Kaufmann, Dept. P1, 2929 Campus Drive, Suite 260, San Mateo CA 94403, (800) 745-7323; FAX: (415) 578-0672 Harlequin's LispWorks comes with Common Prolog -- a fast Edinburgh-compatible Prolog integrated with Common Lisp. Write to: Harlequin Limited, Barrington Hall, Barrington, Cambridge, CB2 5RG, call 0223 872522 (or 44223 872522 outside UK), telex 818440 harlqn g, fax 0223 872519, or send email to (or for US people). eLP (Ergo Lambda Prolog) is an interpreter written by Conal Elliott, Frank Pfenning and Dale Miller in Common Lisp and implements the core of lambda Prolog (higher-order hereditary Harrop formulas). It is embedded in a larger development environment called ESS (the Ergo Support System). eLP implements all core language feature and offers a module system, I/O, some facilities for tracing, error handling, arithmetic, recursive top-levels, on-line documentation and a number of extended examples, including many programs from Amy Felty's and John Hannan's thesis. It should run in Allegro Common Lisp, Lucid Common Lisp, Kyoto Common Lisp, CMU Common Lisp and Ibuki Common Lisp. The eLP implementation of lambda Prolog is no longer developed or maintained, but it is still available via anonymous ftp from The file ergolisp.tar.Z contains the Ergo project's extensions to Common Lisp, including some facilities for attributes and dealing with abstract syntax trees. The file sb.tar.Z contains the Ergo Parser/Unparser/Formatter generator and ab.tar.Z contains the Ergo Attribute Grammar facility. The file elp.tar.Z contains the Ergo implementation of lambda Prolog. To customize grammars you need the sb.tar.Z file. When you retrieve the system, please print, fill out, and send in a copy of the non-restrictive license you will find in the file LICENSE. To subscribe to the mailing list, send mail to Bugs should be sent to The book "On Lisp" by Paul Graham includes an implementation of Prolog in Common Lisp. The code is available by anonymous ftp from and also in the CMU AI Repository as See the Scheme FAQ for information on implementations of Prolog in Scheme.
Subject: [6-8] World-Wide Web (WWW) Resources The World Wide Web (WWW) is a hypermedia document that spans the Internet. It uses the http (HyperText Transfer Protocol) for the light-weight exchange of files over the Internet. NCSA Mosaic is a World Wide Web browser developed at the National Center for Supercomputing Applications (NCSA). Mosaic's popularity derives, in part, from its ability to communicate using more traditional Internet protocols like FTP, Gopher, WAIS, and NNTP, in addition to http. Mosaic can display text, hypertext links, and inlined graphics directly. When Mosaic encounters a file type it can't handle internally, such as Postscript documents, mpeg movies, sound files, and JPEG images, it uses an external viewer (or player) like Ghostscript to handle the file. Mosaic also includes facilities for exploring the Internet. In other words, Mosaic is an multimedia interface to the Internet. The hypertext documents viewed with Mosaic are written in HTML (HyperText Markup Language), which is a subset of SGML (Standard Generalized Markup Language). All that is needed is just a few more improvements, such as the ability to format tables and mathematics, and a WYSIWYG editor, for HTML to greatly facilitate electronic journals and other publications. NCSA Mosaic for the X Window System is available by anonymous ftp from as source code and binaries for Sun, SGI, IBM RS/6000, DEC Alpha OSF/1, DEC Ultrix, and HP-UX. Questions about NCSA Mosaic should be directed to (X-Windows version), (Macintosh), and (Microsoft Windows). A simple HTML version of the Lisp FAQ (this FAQ) is available as Association of Lisp Users: [Contains links to a lot of Lisp resources, including a history of Lisp, bibliographies of Lisp books, the Lisp Repository at CMU, and even some Lisp humor. Very nicely done.] Contact: Brad Miller <> ---------------------------------------------------------------- ;;; *EOF*

User Contributions:

Comment about this article, ask questions, or add new information about this topic:

Part1 - Part2 - Part3 - Part4 - Part5 - Part6 - Part7 - MultiPage

[ Usenet FAQs | Web FAQs | Documents | RFC Index ]

Send corrections/additions to the FAQ Maintainer:

Last Update March 27 2014 @ 02:11 PM