LISP
Symbolverarbeitende KI-Sprache LISP Beispiel (Sortier-Algorithmus: Insertion Sort) Symbolverarbeitende KI-Sprache LISP Beispiel (Sortier-Algorithmus: Insertion Sort)
List Processing Language (LISP) ist eine höhere Programmiersprache, 1957 am Dartmouth College in den USA entwickelt und 1959 von John McCarthy erstmals auf einem Rechner implementiert.  Die Besonderheit von LISP ist die grosse Bedeutung im Bereich der Künstlichen Intelligenz (KI) und der Symbolverarbeitung.  Mit List Processing bezeichnete man FORTRAN-Unterprogramme welche auf dem Lambda-Kalkül beruhten. Damit wurden symbolische Berechnungen durchgeführt. Ein Student McCarthy's, Steve Russel, entwickelte einen  Interpreter für diese Kalküle und hob damit LISP aus der Taufe.

LISP-Sprachelemente
LISP besteht aus Skalar- oder Einzelwerten (Atome) und Listen. Die Listen können ineinander verschachtelt  werden (Listen von Listen). Mit diesen Elementen können höhere Strukturen  wie z. B. Arrays entwickelt werden. Eine weitere Besonderheit von LISP ist die Möglichkeit, Teile von Programmstrukturen zur Laufzeit zu verändern, da LISP-Befehle auch als Listen vorliegen. Dies ermöglicht weitere  höhere Strukturelemente zu erschaffen, (z. B. OOP-Elemente, Abfragen oder Verzweigungen u.ä.). Deswegen nennt man LISP auch eine programmierbare Programmiersprache.

Weitere Eigenschaften von LISP sind: 
- Automatische Speicherbereinigung (es muss vom Entwickler kein Speicherplatz für Variablen oder Datenstrukturen reserviert oder freigegeben werden)
- keine explizite Deklaration von Datenstrukturen notwendig
- durch ein  LISP-Symbol können beliebig viele Objekte angesprochen werden.

Wegen der dynamischen Speicherbelegung belegten LISP-Programme für damalige Verhältnisse viel Speicherplatz und Ressourcen.

LISP-Maschinen
Um LISP-Programme schneller ausführen zu können  wurden deswegen ab den 70er Jahren spezielle LISP-Maschinen (LispM) entwickelt und vertrieben. Diese LISP-Maschinen sind für LISP-Programme optimiert  und verfügen über ein Betriebssystem welches selber in LISP entwickelt wurde. Auch viele Anwendungen wurden in LISP programmiert.  LISP-Maschinen bieten eine komfortable Entwicklungsumgebung für LISP-Entwickler, können jedoch auch als reine Application-Server konzipiert sein.  Viele moderne Konzepte wie die Fenstertechnik, Computer-Netzwerke, inkrementelle Kompilierung, Mäuse oder Hypertext wurden auf LISP-Maschinen erprobt.  Weltweit wurden ca. 7000 LISP Maschinen hersgestellt - die Ära der LISP- Maschinen endete Anfang der 90er Jahre  mit dem Aufkommen leistungsfähigerer Mikroprozessoren und grösserer Speicherreserven. Hinzu kam ein zunehmender Pessimismus was KI-Anwendungen anging.

LISP-Dialekte 
Bekannte LISP-Dialekte sind:
Common LISP ist heute Industriestandard und beruht auf ZetaLISP
Franz LISP und InterLISP erlauben prozedurale, 'unhygienische' Makros  sowie dynamische und lexikalische Variablenbildung
Scheme erlaubt Continuations:  call/cc (call-with-current-continuation), ausschliesslich lexikalische Verbindungen und hygienische Makros, findet wegen ihrer klaren Struktur oft Anwendung im akademischen Bereich
AutoLISP (für AutoCAD)
MacLISP, Emacs LISPNewLISP, xLISP
JESS: Java-basierte Regel Engine und Obermenge der Programmiersprache CLIPS (C Language Integrated Production System), ein freies Software-Werkzeug zum Entwickeln von Expertensystemen. 

Im Bild ist der Sortieralgorithmus 'Insertion Sort' in LISP wiedergegeben.                   
Siehe auch:    LISP-Maschine   Künstliche-Intelligenz   ADA   FORTRAN   Objektorientierte-Programmierung   Metadaten   Expertensystem   Sortieralgorithmus   Roboter   Robotik