© Liashko/Shutterstock.com
Entwickler Magazin
Systemtechnische Esoterik leicht gemacht

Lispeln lohnt sich!

Der durchschnittliche Programmierer kennt Paul Graham wegen seines Postulats, wonach junge Informatiker in ihrer Schulzeit ein besonders schweres Leben hätten. Weniger bekannt ist, dass der Amerikaner den Erfolg seines Start-ups Viaweb auf eine alte Programmiersprache namens Lisp zurückführt. Warum sich ein Blick auf Lisp lohnt, erklärt dieser Beitrag.

Tam Hanna


Laut Graham war sein Start-up unter anderem deswegen erfolgreich, weil die hauseigenen, effizienten Lisp-Programmierer zum Realisieren derselben Funktion weniger Zeit benötigten. Sein Unternehmen Viaweb konnte auf diese Art und Weise die von der Konkurrenz neu auf den Markt gebrachten Funktionen binnen kürzester Zeit nachbilden und so die Featureparität bewahren. Wer heute den Begriff Lisp hört, denkt meist an hoch finanzierte AI-Forschungsprojekte der US-Regierung. Das ist mit Sicherheit nicht falsch, da sich die Sprache im Laufe der letzten Jahrzehnte als Quasistandard in Sachen AI etablieren konnte. Noch heute findet ein Gutteil der Arbeit in Sachen künstlicher Intelligenz unter Verwendung von Lisp statt.

AI-Forschung ist allerdings nur eine Seite der Medaille. Lisp kommt nämlich nicht nur in diesem Sektor oder bei Viaweb (http://www.paulgraham.com/avg.html) zum Einsatz – es gibt Hunderte oder sogar Tausende von Firmen, die ihre Softwareentwicklung in dieser Programmiersprache bestreiten.

Wieso Lisp?

Wer Qt verwendet, tut dies normalerweise aufgrund der hohen Portabilität der Ergebnisse. Die Verwendung von Visual Basic geht – so zumindest die weit verbreitete Meinung – mit schnellen ersten Resultaten einher. C# gilt als die „Profisprache“ des .NET Frameworks. Die Befragung eines Lisp-Entwicklers liefert meist kein derart eindeutiges Ergebnis. Langjährige „Lisp-Hacker“ reagieren auf die Frage oft beleidigt: Wer nach dem Sinn von Lisp fragt, ist für die Verwendung der Programmiersprache unwürdig.

Der Name Lisp steht für List Processing. Peter Seibel bezeichnet die Sprache in seinem frei verfügbaren Lisp-Buch „Practical Common Lisp“ [1] als „programmable programming language“. Das bedeutet, dass der Lisp-Programmierer die Sprache während der Erstellung seiner Applikation um neue Features ergänzen kann – dazu sind keine Compilererweiterungen oder neue Präprozessoren notwendig. Das liegt unter anderem daran, dass Lisp den Programmcode selbst als Datenstruktur betrachtet. Dadurch ist es möglich, selbsterstellenden Code zusammenzustellen: So genannte Makros generieren den auszuführenden Code on the fly.

Lisp-Programme bestehen aus Horden von Klammern. Deren für Quereinsteiger lästige Verwaltung wird heutzutage bereitwillig von den diversen IDEs erledigt. Wenn Sie sich ernsthaft mit der Sprache befassen wollen, so sollten Sie sich über kurz oder lang einen „intelligenten Editor“ Ihrer Wahl besorgen. Dabei ist Emacs übrigens nicht die erste Wahl: Aufgrund seiner e...

Entwickler Magazin
Systemtechnische Esoterik leicht gemacht

Lispeln lohnt sich!

Der durchschnittliche Programmierer kennt Paul Graham wegen seines Postulats, wonach junge Informatiker in ihrer Schulzeit ein besonders schweres Leben hätten. Weniger bekannt ist, dass der Amerikaner den Erfolg seines Start-ups Viaweb auf eine alte Programmiersprache namens Lisp zurückführt. Warum sich ein Blick auf Lisp lohnt, erklärt dieser Beitrag.

Tam Hanna


Laut Graham war sein Start-up unter anderem deswegen erfolgreich, weil die hauseigenen, effizienten Lisp-Programmierer zum Realisieren derselben Funktion weniger Zeit benötigten. Sein Unternehmen Viaweb konnte auf diese Art und Weise die von der Konkurrenz neu auf den Markt gebrachten Funktionen binnen kürzester Zeit nachbilden und so die Featureparität bewahren. Wer heute den Begriff Lisp hört, denkt meist an hoch finanzierte AI-Forschungsprojekte der US-Regierung. Das ist mit Sicherheit nicht falsch, da sich die Sprache im Laufe der letzten Jahrzehnte als Quasistandard in Sachen AI etablieren konnte. Noch heute findet ein Gutteil der Arbeit in Sachen künstlicher Intelligenz unter Verwendung von Lisp statt.

AI-Forschung ist allerdings nur eine Seite der Medaille. Lisp kommt nämlich nicht nur in diesem Sektor oder bei Viaweb (http://www.paulgraham.com/avg.html) zum Einsatz – es gibt Hunderte oder sogar Tausende von Firmen, die ihre Softwareentwicklung in dieser Programmiersprache bestreiten.

Wieso Lisp?

Wer Qt verwendet, tut dies normalerweise aufgrund der hohen Portabilität der Ergebnisse. Die Verwendung von Visual Basic geht – so zumindest die weit verbreitete Meinung – mit schnellen ersten Resultaten einher. C# gilt als die „Profisprache“ des .NET Frameworks. Die Befragung eines Lisp-Entwicklers liefert meist kein derart eindeutiges Ergebnis. Langjährige „Lisp-Hacker“ reagieren auf die Frage oft beleidigt: Wer nach dem Sinn von Lisp fragt, ist für die Verwendung der Programmiersprache unwürdig.

Der Name Lisp steht für List Processing. Peter Seibel bezeichnet die Sprache in seinem frei verfügbaren Lisp-Buch „Practical Common Lisp“ [1] als „programmable programming language“. Das bedeutet, dass der Lisp-Programmierer die Sprache während der Erstellung seiner Applikation um neue Features ergänzen kann – dazu sind keine Compilererweiterungen oder neue Präprozessoren notwendig. Das liegt unter anderem daran, dass Lisp den Programmcode selbst als Datenstruktur betrachtet. Dadurch ist es möglich, selbsterstellenden Code zusammenzustellen: So genannte Makros generieren den auszuführenden Code on the fly.

Lisp-Programme bestehen aus Horden von Klammern. Deren für Quereinsteiger lästige Verwaltung wird heutzutage bereitwillig von den diversen IDEs erledigt. Wenn Sie sich ernsthaft mit der Sprache befassen wollen, so sollten Sie sich über kurz oder lang einen „intelligenten Editor“ Ihrer Wahl besorgen. Dabei ist Emacs übrigens nicht die erste Wahl: Aufgrund seiner e...

Neugierig geworden?


   
Loading...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang