LISP

Was ist LISP?

LISP geh├Ârt zu den ├Ąltesten Programmiersprachen, die auch heute noch verwendet wurden. Ver├Âffentlicht wurde die Sprache erstmals im Jahre 1958 vom MIT und wurde vom sogenannten Lambda-Kalk├╝l inspiriert, dass zur Untersuchung von Funktionen genutzt wurde. Bis heute wird┬áLISP┬áund vor allem seine vielen Dialekte praktisch verwendet. Der Grund daf├╝r ist nicht nur, dass viele alte Systeme nach wie vor verwendet werden, sondern dass es sich dabei um eine sehr einfache und rasch zu erlernende Sprache handelt, die vor allem mit ihrer Flexibilit├Ąt punktet.

Alles Liste

LISP┬áist die Abk├╝rzung f├╝r List Processing und bedeutet vereinfacht dargestellt, die Verarbeitung in Listen. Tats├Ąchlich werden die Anweisungen in Form von Listen dargestellt. Diese Listen k├Ânnen beliebig oft ineinander verschachtelt werden. Das erste Element der Liste ist eine Funktion, die eine bestimmte Anweisung ausf├╝hrt wie beispielsweise ein mathematischer Operator. Erst dann folgen die Zahlen, die mit dem Operator verarbeitet werden. Ein Grund, warum diese Programmiersprache auch heute noch gesch├Ątzt wird, ist, weil es sehr viele M├Âglichkeiten gibt, auf die Sprache selbst Einfluss zu nehmen. Aus diesem Grund wird sie h├Ąufig als programmierbare Sprache bezeichnet. Programmteile lassen sich dynamisch zur Laufzeit ver├Ąndern, wof├╝r Makros verantwortlich sind. Dadurch l├Ąsst sich der Code ver├Ąndern, bevor er vom Compiler ├╝bersetzt und verarbeitet wird.

Einfache Syntax

Die Anweisungen in┬áLISP┬áwerden mit sogenannten Symbolic Expressions dargestellt. Die Syntax besteht aus Symbolen, Zahlen und Zeichenketten. Ein Symbol kann aus beliebigen Buchstaben oder Zahlen sowie Sonderzeichen bestehen. Um Code und Daten zu trennen, wird den Daten ein Komma vorangestellt. In┬áLISP┬ák├Ânnen globale und lokale Variablen definiert werden und es stehen zahlreiche Funktionen zur Verf├╝gung.

Durch seine Flexibilit├Ąt weist es schon fr├╝h Parallelen zu modernen Programmiersprachen auf. Sogar die rekursive Verarbeitung von Funktionen wird von dieser Sprache unterst├╝tzt. Dies gilt nicht nur f├╝r Berechnungen, sondern auch Listen konnten rekursiv abgearbeitet werden. Dadurch war es m├Âglich eine Reihe von Aufgabenstellungen effizienter, als mit anderen damaligen Programmiersprachen abzuarbeiten. Im Vergleich dazu sind die Operationen, die f├╝r das erste Programm in┬áLISP┬ánotwendig waren, sehr ├╝berschaubar. Im Schnitt reichen sechs Funktionen aus, um nicht nur erste Programme zu schreiben, sondern auch verh├Ąltnism├Ą├čig aufwendige Tools zu erstellen.

Heutige Bedeutung von LISP

Obwohl es sich bei┬áLISP┬áum eine sehr flexible Programmiersprache handelt, ist sie heute kaum noch von Bedeutung und musste mittlerweile objektorientierten Sprachen weichen. Dennoch ger├Ąt die Sprache nicht in Vergessenheit. Viele alte Systeme laufen noch mit Programmen, die darin verfasst wurden. Oft ist es nicht oder nur schwer m├Âglich diese Programme mit Software in aktuellen Sprachen zu ersetzen, weshalb es nach wie vor Entwickler braucht, die sie beherrschen. Die Anzahl an Entwickler, die diese Sprache beherrschen, sinkt jedoch, vor allem, wenn es um die vielen Dialekte geht, sind Programmier sehr gesucht. Obwohl die Sprache in der Entwicklung von Software kaum noch eine Rolle spielt, sind die Entwickler f├╝r die Wartung der alten Software nach wie vor sehr gefragt und oft auch sehr gut bezahlt.

Zahlreiche Dialekte

Obwohl┬áLISP┬áselbst heute nicht mehr verwendet wird, gibt es davon zahlreiche Dialekte, die auch heute noch Anwendung finden. Diese Sprachvarianten basieren auf den Grundz├╝gen der urspr├╝nglichen Programmiersprache, sind jedoch f├╝r moderne Systeme adaptiert worden. Clojure ist beispielsweise ein Dialekt f├╝r die Java Virtual Machine, ist jedoch mit anderen Dialekten nicht mehr kompatibel. Daneben gibt es noch zahlreiche weitere Dialekte wie Common┬áLisp, das bei prozeduralen Makros verwendet wird. Scheme ist eine weitere Variante, die heute weit verbreitet ist, und wird vor allem zur lexikalischen Bindung von Variablen bei Makros genutzt. Scheme wird heute auch gerne noch in der Lehre eingesetzt um die Konzepte von┬áLISP┬ázu vermitteln. Daneben wird auch noch Emacs┬áLisp┬áverwendet, um Erweiterungen f├╝r den Texteditor Emacs zu erstellen. Viele Varianten der Programmiersprache k├Ânnen sogar miteinander verbunden werden. Vor allem historische Dialekte konnten noch einfacher miteinander kommunizieren. Einer dieser historischen Dialekte – ZetaLisp – stellte sogar die erste objektorientierte Variante dieser Sprache dar.


Sie haben noch Fragen?

Kontaktieren Sie uns

Kostenloser SEO-Check der OSG


Weitere Inhalte