Open Source im professionellen Einsatz

Lisp, mit Liebe und Witz vermittelt

22.11.2010

Der Lisp-Enthusiast Conrad Barski hat mit dem Buch "Land of Lisp" eine bemerkenswerte Einführung in die funktionale Programmiersprache vorgelegt. Sie begeistert nicht nur durch die eigenhändigen Illustrationen des Autors, sondern auch durch Verständlichkeit.

Lisp gilt als esoterische Programmiersprache, mache betrachten sie eher als Teil der Computer-Historie. Andere wie Eric S. Raymond dagegen halten sie für einen Pflichtpunkt in der Programmiererausbildung. Dem amerikanischen Medizin-Informatiker Conrad Barski auf jeden Fall liegt sie so am Herzen, dass er sein Buchprojekt "Land of Lisp" zu Ende gebracht hat, obwohl er ein Jahr länger als geplant dafür brauchte.

Das (englischsprachige) Buch fällt sofort durch sein farbenfrohes Comic-Cover ins Auge. Auch im Inneren mischen sich Barskis fröhliche Zeichnungen unter den Text, allerdings nur in schwarz-weiß. Ein paar Illustrationen machen noch kein gelungenes Buch, doch die spielerische Neugier und Freude am Programmieren mit Lisp, die sich in den Comics ausdrückt, setzt sich in den Texten fort.

Barskis Lisp-Comics lockern die herausfordernden Übungen auf und helfen beim Merken.

Als Beispielanwendungen dienen Spiele, von einem einfachen Ratespiel an der Kommandozeile bis zur Mehrspieler-Online-Anwendung. Ebenfalls dabei: Eine Schlacht gegen Orks, ein klassisches Text-Adventure sowie ein Frischzellenkur für den Klassiker "Hunt the Wumpus".

Mit all diesen Beispielen führt der Autor den Leser von den ersten Schritten in Common Lisp zum Kennenlernen typischer Lisp-Komponenten wie Listen und Funktionen bis hin zu Lambda-Funktionen und Lisp-Makros. Vorkenntnisse sind nicht erforderlich.

Barski zeigt, dass Programmieren keine Hexerei ist: In einfachen Worten beschreibt er auch abstrakte Modelle und fortgeschrittene Programmiertechniken. Und dabei macht er Schritte, die klein genug zum Mitkommen sind, gleichzeitig aber auch forsch und ungeduldig: Das Brett-Würfel-Spiel "Dice of Doom" ("Würfel des Verderbens") beispielsweise entwickelt er im Verlauf des Buchs ständig weiter. Es beginnt als Übung im funktionalen Programmierspiel, motiviert den Leser aber im Verlauf des Buchs, auch Domain Specific Languages (DSL) und Client-Server-Kommunikation kennenzulernen.

Lazy Evaluation: Nur die benötigten Zweige werden auch berechnet. Kein Standard in Common Lisp, aber umsetzbar.

Sein Meisterstück leistet der Verfasser, indem er Common Lisp um das Feature Lazy Evaluation erweitert, das nicht zur Standardausstattung der Sprache gehört. Damit zeigt er zum einen die legendäre Leistungsfähigkeit von Lisp: Es kann sich selbst erweitern. Zum anderen demonstriert er, wozu Lazy Evaluation gut ist: Der Baum aller möglichen Spielzüge in "Dice of Doom" sprengt auch bei kleinen Spielfeldern rasch den Speicher des Rechners. Mit Lazy Evaluation aber berechnet das Programm immer nur jene Unterzweige, die es für die unmittelbar nächsten Züge benötigt. Das Spielfeld wird größer, der Spielablauf rascher. Zum Schluss noch zeitgemäße SVG-Grafiken und einen Application Server dazu geschrieben: Willkommen im Lisp-Wunderland!

Die "Würfel des Verderbens" als grafisches Online-Spiel, Schritt für Schritt in Lisp implementiert.

Was der Leser in diesem Buch lernt, kann er nicht nur in Lisp sondern auch in moderneren Sprachen wie Haskell oder Clojure anwenden. Vom praktischen Nutzen abgesehen: Dieses Buch macht Spaß!

Ein Wunsch bleibt leider zum Schluss offen. Es fehlt ein Kapitel, das dem Leser als Wegweiser in der Lisp-Welt dient: Was gibt es für Entwicklungsumgebungen, was für Bibliotheken, und was sind die wichtigsten Webseiten und Mailinglisten zu Lisp? Lieber Conrad Barski, vielleicht können Sie das ja noch auf der Webseite zum Buch nachreichen? Ein fröhlich-psychedelisches Video und die Quelltexte gibt es dort bereits.

Conrad Barski, M.D.
Land of Lisp
No Starch Press, 2010
500 Seiten
ISBN: 978-1-59327-281-4
40 Euro (D)

auch als PDF-E-Book erhältlich

(
)

Ähnliche Artikel

  • Bärte und Wunderkinder

    Informationstechnologie und Programmierung haben bereits ihre eigene Historie. Die Geschichtsschreibung kennt die Neuentdeckung und Wiederbelebung des Alten: Wird das derzeit vorherrschende Motiv Web 2.0 bald von einer altsprachlichen Renaissance abgelöst?

  • Einsteiger-Buch für Lisp in der Mache
  • Emacs

    Den Texteditor Emacs gibt es seit Jahrzehnten und die Community entwickelt ihn stets weiter. Zu seinem Erfolgsrezept gehören die Erweiterbarkeit, eine freie Lizenz und eine kreative Anhängerschaft.

  • Schicke Klassiker

    Die Programmiersprachen Lisp und Smalltalk haben schon einige Jahrzehnte auf dem Buckel. Doch dank engagierter Communitys glänzen sie mit modernen Bibliotheken. Beim Umsortieren von Fußnoten und vor allem bei der Webprogrammierung zeigen sie, was in ihnen steckt.

  • Quasiconf: Lisp auf der Froscon 2012

    Unter dem Namen Quasiconf findet auf der Open-Source-Konferenz Froscon (25. und 26. August in St. Augustin) ein Treffen zur Programmiersprachenfamile Lisp statt.

comments powered by Disqus