User Tools

Site Tools


tutorials:lisp

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
tutorials:lisp [2013/07/06 19:22]
smj created
tutorials:lisp [2022/03/15 05:07] (current)
smj
Line 1: Line 1:
-MACLISP and INTERLISP+====== Lisp at TWENEX.ORG Tutorial ====== 
-EMACS LEDIT mode+ 
 +**Lisp** is a programming language famous for its use in Artificial Intelligence and advanced Computer Science research. First developed in 1958, it is the second oldest (after Fortran) high-level programming language still in common use. 
 + 
 +Two dialects of Lisp are available at TWENEX.ORG, Maclisp and InterLisp-10. 
 + 
 + 
 +===== Maclisp ===== 
 + 
 +(''@MACLISP''
 + 
 +**Maclisp** was developed in the mid-1960's as part of MIT's Project MAC((for **M**athematics **A**nd **C**omputation. The name is unrelated to the later-developed Apple Macintosh computer)), originally for the PDP-6 ITS operating system. 
 + 
 +Maclisp was a highly influential language and was the primary inspiration for Common Lisp, with contributions form other dialects like InterLisp
 + 
 +=== Set-up === 
 + 
 +Before running MACLISP, you must define the following logical name: 
 + 
 +''@DEFINE MACLISP: PS:<MACLISP>'' 
 + 
 +(You can add the above line to your LOGIN.CMD file to automatically define the logical name for all of you TWENEX sessions.) 
 + 
 +It is also recommended that you create a Maclisp init file (''LISP.INI'') in your home directory with the following contents: 
 + 
 +  ;;; A very typical init file / Emacs mode--> -*- Mode:LISP; -*- 
 +  (COMMENT) ;magic 
 +  (PROGN ; real init file stuff 
 +    (SETQ BASE 10. IBASE 10. *NOPRINT NIL) ;base-10 display 
 +    (SETQ NOUUO T *RSET T) ;these make debugging easier 
 +    (SSTATUS FEATURE NOLDMSG) ;supress module load messages 
 +    '*) ;return an asterisk for Maclisp to print out 
 +  
 +=== LEDIT === 
 + 
 +''LEDIT'' is a software package that allows a programmer to inspect, modify, and save Lisp source expressions from within a Maclisp session, abilities Maclisp itself lacks. This is achieved  by calling the Emacs editor from the programmer's Maclisp session. 
 + 
 +To use LEDIT: 
 + 
 +  - Start Maclisp and load your source file. 
 +  - Evaluate ''(LOAD "LISP:LEDIT.FASL")'' (You may add this line to your LISP.INI file and eliminate this step.) 
 +  - Evaluate ''(LEDIT)'' to switch to Emacs. 
 +  - Load the source file into Emacs (''^X ^F''). 
 +  - View, change, save source with Emacs commands. 
 +  - Flag function definitions to update in Maclisp with ''M-Z''
 +  - Return to Maclisp with ''^X Z''.  
 + 
 +===== InterLisp-10 ===== 
 + 
 +(''@LISP''
 + 
 +**InterLisp** was developed in 1967 at Bolt, Beranek and Newman (BBN) for TENEX, BBN's in-house PDP-10 operating system. Development was later transfered to XEROX PARC. The language became popular with Stanford University AI researchers and at other principly US West-Coast institutions. 
 + 
 +InterLisp was noted for its integration of interactive development tools into the the programming environment: debugger, Lisp-structure-aware editor, spelling corrector, file manager. 
 + 
 +The dialect was in a rivalry with Maclisp prior to the development of Common Lisp.  
 + 
 +=== Set-up === 
 + 
 +If you have set-up your TWENEX session for Maclisp (see above), you must undefine the logical name ''LISP:'' and set ''@DEFINE INTERLISP PS:<INTERLISP>'' before running InterLisp. 
 +===== References ===== 
 + 
 +[[http://www.maclisp.info/pitmanual/index.html|K.M. Pitman. (2007, December 16). The Revised Maclisp Manual [Online]. Available: http://www.maclisp.info/pitmanual]] 
 + 
 +[[http://bitsavers.informatik.uni-stuttgart.de/pdf/xerox/interlisp/Interlisp_Reference_Manual_1974.pdf|W. Teitelman. (1974). InterLisp Reference Manual [Online]. Available: http://bitsavers.informatik.uni-stuttgart.de/pdf/xerox/interlisp/1974_InterlispRefMan.pdf]] 
 + 
 +[[http://www.softwarepreservation.org/projects/LISP/book/Weismann_LISP1.5_Primer_1967.pdf|C. Weissman. (1967). Lisp 1.5 Primer [Online]. Available: http://www.softwarepreservation.org/projects/LISP/book/Weismann_LISP1.5_Primer_1967.pdf]] 
tutorials/lisp.1373138576.txt.gz · Last modified: 2013/07/06 19:22 by smj