Annotation of 43BSD/ucb/lisp/pearl/ReadMe, revision 1.1.1.1

1.1       root        1: ReadMe file for the distribution of the Franz implementation of PEARL.
                      2:                                                 8/9/83 by Joe Faletti
                      3: 
                      4: PEARL is an AI programming language implemented on top of Franz Lisp
                      5: by Joseph Faletti and Michael Deering under the direction of Robert
                      6: Wilensky at the Berkeley AI Research Project (BAIR).
                      7: 
                      8: DOCUMENTATION
                      9:     For more information on PEARL's capabilities, see the following:
                     10: 
                     11: [1] Deering, M., Faletti, J., and Wilensky, R.  1981.  PEARL:  An Efficient
                     12: Language for Artificial Intelligence Programming.  In the Proceedings
                     13: of the Seventh International Joint Conference on Artificial Intelligence.  
                     14: Vancouver, British Columbia.  August, 1981.
                     15: 
                     16: [2] Deering, M., Faletti, J., and Wilensky, R.  1982.  The PEARL Users Manual.
                     17: Berkeley Electronic Research Laboratory Memorandum No.
                     18: UCB/ERL/M82/19.  March, 1982.
                     19: 
                     20: [3] Faletti, J., and Wilensky, R.  1982.  The Implementation of PEARL.
                     21: Unpublished memo. 
                     22: 
                     23: The last two are included in vtroff source form in this distribution
                     24: but the page numbers of [2] may be off by a bit (sorry! -- if someone
                     25: bothers to convert the manual for automatic table of contents and
                     26: index generation, we'd be happy to use it!).  (More below).
                     27: 
                     28: The manual [2] may be printed and distributed to users with no fear
                     29: of copyright infringement.  However, for those without suitable printing
                     30: facilities, a single photocopy of the manual suitable for auto-feed copying
                     31: for local distribution of the manual may be acquired from:
                     32:     Berkeley AI Research Project
                     33:     Robert Wilensky, Director
                     34:     Computer Science Division
                     35:     553 Evans Hall
                     36:     University of California, Berkeley
                     37:     Berkeley, CA  94720
                     38: This version will include an addendum summarizing the changes
                     39: described in the file ChangeLog.
                     40: 
                     41: BUG REPORTS:
                     42:     Bug reports should be mailed to Pearl-Bugs@Berkeley by ARPANET or
                     43: ucbvax!pearl-bugs by USENET.  PEARL is being provided as is for the
                     44: cost of distribution with Franz and as such carries no warranty or
                     45: guarantee.
                     46: 
                     47: CONTENTS OF THIS DIRECTORY:
                     48:     The files in this directory fall into two categories: A) the source and
                     49: make file for building a version of PEARL in Franz and B) documentation.
                     50: 
                     51:     A) Source and make file for building a version of PEARL in Franz.
                     52: These files are described briefly after the following description of
                     53: how to make a version of PEARL.
                     54: 
                     55: To Make PEARL:
                     56:     A version of PEARL may be made by changing to this directory and
                     57: executing a "make pearl".  As delivered, this makes "small" which compiles
                     58: PEARL in two pieces, and builds "pearl.o" (which loads the two pieces
                     59: into a lisp) and then executes the "savepearl" function which dumps a
                     60: lisp called "pearl" in the current directory containing all of PEARL
                     61: with the PEARL top level installed and ready to start up from scratch.
                     62: This form is necessary on machines with less than about 2.5Mb of memory.
                     63: If your installation is larger, you can change "pearl" to make "big"
                     64: instead of "small" and change "install" to make "biginstall" instead
                     65: of "smallinstall".  This will compile PEARL in one piece, creating
                     66: "pearl.o" simply by compiling the file "pearl.l" which "includes" all
                     67: the other source files described below.
                     68:     Making PEARL from scratch takes about 13 minutes of CPU time, or about
                     69: 15 minutes of real time (times the load average) on a VAX 780.
                     70:     To install the executable pearl in the usual object directory,
                     71: /usr/ucb, and the load module pearl.o in the Franz library /usr/lib/lisp,
                     72: execute a "make install".  If you change where the library is you must
                     73: also change the absolute path names in the file "pearllib.l" (which is used
                     74: in a "make small" to make it easy to load the two halves of PEARL with a
                     75: single file).
                     76: 
                     77: The Source for PEARL:
                     78:     The source for PEARL is described below in the order that it is
                     79: included in "pearl.l".
                     80: 
                     81: ucisubset.l --- PEARL was originally implemented in UCILisp.  This file
                     82:     defines those functions from UCILisp still used in PEARL.
                     83: franz.l --- Franz version of functions that are likely to need
                     84:     to be redefined for a particular lisp.
                     85: lowlevel.l --- Lowest level functions (mostly macros) in PEARL
                     86:     used to access the various data structures.
                     87: db.l --- Functions for creating databases.
                     88: vars.l --- Functions to handle pattern-matching variables.
                     89: symord.l --- Functions for creating symbols and ordinals.
                     90: hook.l --- Functions used by everything else to handle hooks (demons).
                     91: create.l --- Functions to create PEARL structures.
                     92: scopy.l --- Functions to copy PEARL structures.
                     93: path.l --- The PATH function.
                     94: print.l --- Functions to print PEARL objects.
                     95: hash.l --- Functions using hashing info in structures to insert and
                     96:     fetch from data bases.
                     97: match.l --- Functions to match and/or compare structures.
                     98: history.l --- Functions used to implement the history mechanism in the
                     99:     toplevel loop.
                    100: toplevel.l --- Variation on the Franz toplevel loop for PEARL,
                    101:     including functions for dumping various versions of a running PEARL.
                    102: fix.l --- Variation on the "fixit" debugger adapted for PEARL.
                    103: alias.l --- Code to save various functions under alternative names.
                    104: inits.l --- Code which must run at load time to initialize a PEARL
                    105:     environment.
                    106: 
                    107: Documentation included in this directory:
                    108: 
                    109: manual.ms --- The -ms source of the PEARL manual as published in the
                    110:     reference [2] above.  This should be vtroffable to produce a copy
                    111:     of the PEARL manual, although the page numbers were done by hand
                    112:     and thus may be off by a bit if anything is changed.  It may also
                    113:     be nroffed, although the page numbers will most certainly be off.
                    114: update.ms --- The -ms source for an update to the manual covering PEARL
                    115:     up through Version 3.9 paginated for appending to the manual.
                    116: ChangeLog --- A listing in reverse date order of things changed in
                    117:     PEARL since the manual was published.
                    118: template --- Visual representation of the allocation of information in
                    119:     the hunks used by PEARL for various internal data structures.
                    120: implement.ms --- An unfinished memo on the implementation of PEARL.
                    121:     Includes a simple example of how to implement forward and backward
                    122:     chaining in PEARL and a bit more detail on the hashing mechanism.
                    123: ltags --- A tags file for the various function and macro definition
                    124:     mechanisms used in PEARL (more than standard Franz).
                    125: ptags --- A tags file for files which contain mixed Lisp functions and
                    126:     PEARL structure definitions.
                    127: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.