Index of /paip/
Name | Last Modified | Size |
---|---|---|
Parent Directory | ||
UNUSED | 2019-04-22 14:51 | - |
auxfns.lisp | 2019-04-22 14:51 | 23k |
clos.lisp | 2019-04-22 14:51 | 4k |
cmacsyma.lisp | 2019-04-22 14:51 | 12k |
compile1.lisp | 2019-04-22 14:51 | 5k |
compile2.lisp | 2019-04-22 14:51 | 10k |
compile3.lisp | 2019-04-22 14:51 | 15k |
compopt.lisp | 2019-04-22 14:51 | 3k |
edge-tab.lisp | 2019-04-22 14:51 | 1k |
eliza-pm.lisp | 2019-04-22 14:51 | 1k |
eliza.lisp | 2019-04-22 14:51 | 7k |
eliza1.lisp | 2019-04-22 14:51 | 6k |
examples.lisp | 2019-04-22 14:51 | 69k |
favicon.ico | 2019-04-22 14:51 | 1k |
gps-srch.lisp | 2019-04-22 14:51 | 2k |
gps.lisp | 2019-04-22 14:51 | 9k |
gps1.lisp | 2019-04-22 14:51 | 3k |
grammar.lisp | 2019-04-22 14:51 | 18k |
interp1.lisp | 2019-04-22 14:51 | 7k |
interp2.lisp | 2019-04-22 14:51 | 3k |
interp3.lisp | 2019-04-22 14:51 | 4k |
intro.lisp | 2019-04-22 14:51 | 4k |
krep.lisp | 2019-04-22 14:51 | 10k |
krep1.lisp | 2019-04-22 14:51 | 6k |
krep2.lisp | 2019-04-22 14:51 | 6k |
lexicon.lisp | 2019-04-22 14:51 | 7k |
loop.lisp | 2019-04-22 14:51 | 10k |
macsyma.lisp | 2019-04-22 14:51 | 10k |
macsymar.lisp | 2019-04-22 14:51 | 3k |
mycin-r.lisp | 2019-04-22 14:51 | 3k |
mycin.lisp | 2019-04-22 14:51 | 15k |
othello.lisp | 2019-04-22 14:51 | 17k |
othello2.lisp | 2019-04-22 14:51 | 14k |
overview.lisp | 2019-04-22 14:51 | 10k |
paip.zip | 2019-04-22 14:51 | 137k |
patmatch.lisp | 2019-04-22 14:51 | 7k |
prolog.lisp | 2019-04-22 14:51 | 5k |
prolog1.lisp | 2019-04-22 14:51 | 4k |
prologc.lisp | 2019-04-22 14:51 | 15k |
prologc1.lisp | 2019-04-22 14:51 | 6k |
prologc2.lisp | 2019-04-22 14:51 | 7k |
prologcp.lisp | 2019-04-22 14:51 | 5k |
search.lisp | 2019-04-22 14:51 | 11k |
simple.lisp | 2019-04-22 14:51 | 4k |
student.lisp | 2019-04-22 14:51 | 7k |
syntax1.lisp | 2019-04-22 14:51 | 5k |
syntax2.lisp | 2019-04-22 14:51 | 6k |
syntax3.lisp | 2019-04-22 14:51 | 9k |
TAGS | 2019-04-22 14:51 | 45k |
tutor.lisp | 2019-04-22 14:51 | 7k |
unifgram.lisp | 2019-04-22 14:51 | 7k |
unify.lisp | 2019-04-22 14:51 | 3k |
waltz.lisp | 2019-04-22 14:51 | 10k |
<HTML>
<TITLE>Paradigms of AI Programming Source Code</TITLE>
<!-- Changed by: Peter Norvig, 2-Jul-1996 -->
<BODY bgcolor="#ffffff">
<h1>Paradigms of AI Programming Source Code</h1>
<p>
This page is the index for the Lisp source code files
for the book <i>Paradigms of Artificial
Intelligence Programming</i>. The code is offered as
open source freeware under <a href="../license.html">this license</a>.
You can browse all the files in <a href="../paip/">this directory</a>.
<h1>Installation Instructions</h1>
<ol>
<li> Download the file <a href="paip.zip">paip.zip</a> and unzip it.
<li> You must have a <a href="http://www-2.cs.cmu.edu/Groups/AI/html/faqs/lang/lisp/part4/faq-doc-1.html">lisp compiler/interpreter</a>.
<li> To test all the code, start lisp and do the following at the interactive prompt:
<pre>
(load "auxfns.lisp")
(requires "examples")
(do-examples :all)
</pre>
This should print out a long list of inputs and outputs, and the last output
should be the total number of errors. If all goes well, this should be "0".
</ol>
<h1>Use</h1>
To use the code, edit any of the files or add new files. You will
always have to do <tt>(load "auxfns.lisp")</tt> first, and you will
typically have to do <tt>(requires "<i>file</i>")</tt>, for various
instances of <i>file</i> that you want to use.
<p>
The function "requires"
is used for a primitive form of control over what files require other
files to be loaded first. If "requires" does not work properly on
your system you may have to alter its definition, in the file
"auxfns.lisp". For more complicated use of these files, you should
follow the guidelines for organizing files explained in Chapter 24.
<p>
The function <tt>do-examples</tt>, which takes as an argument either <tt>:all</tt>
or a chapter number or a list of chapter numbers, can be used to see examples
of the use of various functions. For example, <tt>(do-examples 1)</tt> shows
the examples from chapter 1.
<h1>The Files</h1>
The index below gives the chapter in the book, file
name, and short description for each file.
<p>
<table border=1>
<tr><td><b><u>CH</u></b> <td><b><u>Filename</u></b><td> <b><u>Description</u></b>
<tr><td>- <td><a href="README.html">README.html</a><td> This file: explanation and index
<tr><td>- <td><a href="examples.lisp">examples.lisp</a><td> A list of example inputs taken from the book
<tr><td>- <td><a href="tutor.lisp">tutor.lisp</a><td> An interpreter for running the examples
<tr><td>24 <td><a href="loop.lisp">loop.lisp</a><td> Load this first if your Lisp doesn't support ANSI LOOP
<tr><td>- <td><a href="auxfns.lisp">auxfns.lisp</a><td> Auxiliary functions; load this before anything else
<tr><td>1 <td><a href="intro.lisp">intro.lisp</a><td> A few simple definitions
<tr><td>2 <td><a href="simple.lisp">simple.lisp</a><td> Random sentence generator (two versions)
<tr><td>3 <td><a href="overview.lisp">overview.lisp</a><td> 14 versions of LENGTH and other examples
<tr><td>4 <td><a href="gps1.lisp">gps1.lisp</a><td> Simple version of General Problem Solver
<tr><td>4 <td><a href="gps.lisp">gps.lisp</a><td> Final version of General Problem Solver
<tr><td>5 <td><a href="eliza1.lisp">eliza1.lisp</a><td> Basic version of Eliza program
<tr><td>5 <td><a href="eliza.lisp">eliza.lisp</a><td> Eliza with more rules; different reader
<tr><td>
<tr><td>6 <td><a href="patmatch.lisp">patmatch.lisp</a><td> Pattern Matching Utility
<tr><td>6 <td><a href="eliza-pm.lisp">eliza-pm.lisp</a><td> Version of Eliza using utilities
<tr><td>6 <td><a href="search.lisp">search.lisp</a><td> Search Utility
<tr><td>6 <td><a href="gps-srch.lisp">gps-srch.lisp</a><td> Version of GPS using the search utility
<tr><td>7 <td><a href="student.lisp">student.lisp</a><td> The Student Program
<tr><td>8 <td><a href="macsyma.lisp">macsyma.lisp</a><td> The Macsyma Program
<tr><td>8 <td><a href="macsymar.lisp">macsymar.lisp</a><td> Simplification and integration rules for Macsyma
<tr><td>9-10 <td> <td> (no files; important functions in <a href="auxfns.lisp">auxfns.lisp</a>
<tr><td>11 <td><a href="unify.lisp">unify.lisp</a><td> Unification functions
<tr><td>11 <td><a href="prolog1.lisp">prolog1.lisp</a><td> First version of Prolog interpreter
<tr><td>11 <td><a href="prolog.lisp">prolog.lisp</a><td> Final version of Prolog interpreter
<tr><td>12 <td><a href="prologc1.lisp">prologc1.lisp</a><td> First version of Prolog compiler
<tr><td>12 <td><a href="prologc2.lisp">prologc2.lisp</a><td> Second version of Prolog compiler
<tr><td>12 <td><a href="prologc.lisp">prologc.lisp</a><td> Final version of Prolog compiler
<tr><td>12 <td><a href="prologcp.lisp">prologcp.lisp</a><td> Primitives for Prolog compiler
<tr><td>13 <td><a href="clos.lisp">clos.lisp</a><td> Some object-oriented and CLOS code
<tr><td>14 <td><a href="krep1.lisp">krep1.lisp</a><td> Knowledge Representation code: first version
<tr><td>14 <td><a href="krep2.lisp">krep2.lisp</a><td> Knowledge Representation code with conjunctions
<tr><td>14 <td><a href="krep.lisp">krep.lisp</a><td> Final KR code: worlds and attached functions
<tr><td>15 <td><a href="cmacsyma.lisp">cmacsyma.lisp</a><td> Efficient Macsyma with canonical form
<tr><td>16 <td><a href="mycin.lisp">mycin.lisp</a><td> The Emycin expert system shell
<tr><td>16 <td><a href="mycin-r.lisp">mycin-r.lisp</a><td> Some rules for a medical application of emycin
<tr><td>17 <td><a href="waltz.lisp">waltz.lisp</a><td> A Line-Labeling program using the Waltz algorithm
<tr><td>18 <td><a href="othello.lisp">othello.lisp</a><td> The Othello playing program and some strategies
<tr><td>18 <td><a href="othello2.lisp">othello2.lisp</a><td> Additional strategies for Othello
<tr><td>18 <td><a href="edge-tab.lisp">edge-tab.lisp</a><td> Edge table for Iago strategy
<tr><td>19 <td><a href="syntax1.lisp">syntax1.lisp</a><td> Syntactic Parser
<tr><td>19 <td><a href="syntax2.lisp">syntax2.lisp</a><td> Syntactic Parser with semantics
<tr><td>19 <td><a href="syntax3.lisp">syntax3.lisp</a><td> Syntactic Parser with semantics and preferences
<tr><td>20 <td><a href="unifgram.lisp">unifgram.lisp</a><td> Unification Parser
<tr><td>21 <td><a href="grammar.lisp">grammar.lisp</a><td> Comprehensive grammar of English
<tr><td>21 <td><a href="lexicon.lisp">lexicon.lisp</a><td> Sample Lexicon of English
<tr><td>22 <td><a href="interp1.lisp">interp1.lisp</a><td> Scheme interpreter, including version with macros
<tr><td>22 <td><a href="interp2.lisp">interp2.lisp</a><td> A tail recurive Scheme interpreter
<tr><td>22 <td><a href="interp3.lisp">interp3.lisp</a><td> A Scheme interpreter that handles call/cc
<tr><td>23 <td><a href="compile1.lisp">compile1.lisp</a><td> Simple Scheme compiler
<tr><td>23 <td><a href="compile2.lisp">compile2.lisp</a><td> Compiler with tail recursion and primitives
<tr><td>23 <td><a href="compile3.lisp">compile3.lisp</a><td> Compiler with peephole optimizer
<tr><td>23 <td><a href="compopt.lisp">compopt.lisp</a><td> Peephole optimizers for compile3.lisp
</table>
<p>
<hr>
<i><a href="http://www.norvig.com">Peter Norvig</a></i>
Proudly Served by LiteSpeed Web Server at www.norvig.com Port 80