The Interlisp programming environment

Preview:

DESCRIPTION

The Interlisp programming environment. Serife Sancar – 0127087 10.December.2004. Überblick. Interlisp ist vor allem eine Programmierumgebung basiert auf die Programmiersprache Lisp wird meistens von der AI-community verwendet. Überblick. - PowerPoint PPT Presentation

Citation preview

The Interlisp programming The Interlisp programming environmentenvironment

Serife Sancar – 0127087 Serife Sancar – 0127087

10.December.2004 10.December.2004

ÜberblickÜberblick

o InterlispInterlisp ist vor allem eine Programmierumgebungist vor allem eine Programmierumgebung

basiert auf die Programmiersprache Lispbasiert auf die Programmiersprache Lisp

wird meistens von der AI-communitywird meistens von der AI-community

verwendet.verwendet.

ÜberblickÜberblick

o Interlisp unterstützt experimentelle Interlisp unterstützt experimentelle ProgrammierungProgrammierung- Wichtig für die AI communityWichtig für die AI community

o Interlisp versucht “ die Maschine das Interlisp versucht “ die Maschine das meiste tun zu lassen “meiste tun zu lassen “- Maschinenkarten werden güngstigerMaschinenkarten werden güngstiger

ÜberblickÜberblick

o Interlisp ist geeignet für ExperteInterlisp ist geeignet für Experte

- bietet viele Möglichkeiten (z.B.:DWIM….)bietet viele Möglichkeiten (z.B.:DWIM….)

- Deshalb kein leicht zu verstehendes Deshalb kein leicht zu verstehendes

User-InterfaceUser-Interface

BackgraundBackgraund

o Basiert auf LispBasiert auf Lisp- Die Syntax von Lisp ist verständlichDie Syntax von Lisp ist verständlich- Geeignet um komplizierte Programme zu Geeignet um komplizierte Programme zu

schreibenschreiben

o Einbindung von möglichen UsernEinbindung von möglichen Usern- Seit dem Beginn der Entwicklung von Seit dem Beginn der Entwicklung von Interlisp Beeinflussen mögliche user Interlisp Beeinflussen mögliche user den Entwicklungsprozessden Entwicklungsprozess

File packageFile package

o Enstand durch schrittweiseEnstand durch schrittweise

o Am Anfang:einfache SpeichermöglichkeitAm Anfang:einfache Speichermöglichkeit

o Jetzt : Interlisp kümmert sich um die Jetzt : Interlisp kümmert sich um die SpeicherungSpeicherung- Registriert Änderungen in DateienRegistriert Änderungen in Dateien- Benutzer kann selbst Funktionen einfügenBenutzer kann selbst Funktionen einfügen

MasterscopeMasterscope

o Bietet die Möglichkeit Abhängigkeiten zu Bietet die Möglichkeit Abhängigkeiten zu überblickenüberblicken

o Führt eine Datenbank um die Ergebnisse Führt eine Datenbank um die Ergebnisse dieser Abhängigkeitanalyse zu speicherndieser Abhängigkeitanalyse zu speichern

o Ermöglicht dem User Mastercope für Ermöglicht dem User Mastercope für weitere Lisp-formen zu erweiternweitere Lisp-formen zu erweitern

DWIM ( Do What I Mean )DWIM ( Do What I Mean )

o Versucht bei einem Fehler ( error ) Versucht bei einem Fehler ( error )

zu vermuten was der User eigentlichzu vermuten was der User eigentlich

gemeint hatgemeint hat

- Spell corrector Spell corrector

ein Beispiel :ein Beispiel :

Statt nil = nullStatt nil = null

korrigiert selber null auf nil korrigiert selber null auf nil

Iterative Ausdrück Iterative Ausdrück (Iterative Expressions )(Iterative Expressions )

o Bietet die Möglichkeit iterative Ausdrücke zu Bietet die Möglichkeit iterative Ausdrücke zu formulierenformulieren

z.B. : for x in L sum xz.B. : for x in L sum x

o Kennt ca. 2 dutzend OperatorenKennt ca. 2 dutzend Operatoren

o User kann selbst neue Operatoren definierenUser kann selbst neue Operatoren definieren

Programmer‘s AssistantProgrammer‘s Assistant

o Speichert alle Eingaben des Benutzer deren Speichert alle Eingaben des Benutzer deren Seiteneffekte und deren ErgebnisseSeiteneffekte und deren Ergebnisse

o Möglichkeit für Möglichkeit für REDO REDO wiederhole Operation wiederhole Operation

UNDO UNDO Hebt die Seiteneffekte der Hebt die Seiteneffekte der Operation aufOperation auf

Programmer‘s AssistantProgrammer‘s Assistant

FIX FIX Ruft den Interlisp – Editor für die Ruft den Interlisp – Editor für die

besagte Operation und führt es nach denbesagte Operation und führt es nach den

Modifikationen nochmal aus Modifikationen nochmal aus

Was Macht Interlisp einzigartig?Was Macht Interlisp einzigartig?

IntegrationIntegration : Keine Sammlung von : Keine Sammlung von unabhängigen Programmiertools sondernunabhängigen Programmiertools sondern ein “ Integrated „( integriertes ) systemein “ Integrated „( integriertes ) system

z.B . : Editor <===>DWIMz.B . : Editor <===>DWIM

Beim Eingeben in den Editor korriegiertBeim Eingeben in den Editor korriegiert DWIM falsche EingabenDWIM falsche Eingaben

Was Macht Interlisp einzigartig?Was Macht Interlisp einzigartig?

ExtensebilityExtensebility : Benutzer können das Sytem : Benutzer können das Sytem

selbst durch neue command‘s erweiternselbst durch neue command‘s erweitern

Viele Parameter und automatische Viele Parameter und automatische

Funktionen können vom Benutzer gesetztFunktionen können vom Benutzer gesetzt

werden.werden.

VorteilVorteil

DWIM , diese Integration macht Interlisp DWIM , diese Integration macht Interlisp MächtigMächtig

Die Syntax von Lisp ist leicht verständlichDie Syntax von Lisp ist leicht verständlich

Usw….Usw….

NachteileNachteile

nicht leicht überschaubare Anzahl vonnicht leicht überschaubare Anzahl von

parameternparametern

Möglich das durch Abschalten einerMöglich das durch Abschalten einer

Funktion eine andere nicht mehr richtigFunktion eine andere nicht mehr richtig

funktioniert.funktioniert.

EntwicklerEntwickler

Warren Teitelman, Larry MasinterWarren Teitelman, Larry Masinter

Erik SandewallErik Sandewall

Vielen Vielen Dank Dank für für IhreIhre AufmerksamkeitAufmerksamkeit

Recommended