<
Geschichte ^
Übersicht ^
Sprachvergleich >
Vorbereitung >>
Die Perl-Philosophie
Der emotionale Grund für Perl ist seine Syntax, welche besonders viel unterschiedliche
Formulierungen eines Sachverhaltes erlaubt. Dadurch wird die subjektiv befriedigendste
Alternative wählbar, egal nach welchem Ideal man sich richtet. Diese Idee verkürzte
Larry Wall zur Parole
TIMTOWTDI (es gibt mehr als einen Weg).
Menschen wie Guido van Rossum, dessen Python im Sprachdesign dazu einen Gegenpol
bildet(es gibt nur einen Weg), sehen darin eher ein Grundübel und Hauptursache unlesbarer
und unwartbarer Programme. Ihr Argument ist, eine "saubere" Sprache müsse einfach
erlernbar sein und dürfe daher nur wenig Regeln haben, da Code wesentlich öfter gelesen
als geschrieben werde. Larry Walls Gegenargument dazu ist, daß der praktische Nutzen
wichtiger sei, schließlich werde nur einmal gelernt, aber oft angewendet.
Viele der Regeln, die Python vorschreibt, wie einheitliche Einrückungen und "nur ein Befehl pro Zeile",
sind auch in der Perlwelt so allgemein anerkannt, daß darüber praktisch nie gestritten wird.
Perlanhänger stören sich lediglich daran, keine wohlbegründete Ausnahmen machen zu können.
Besonders in großen Projekten, wo klare Regeln zum Gelingen eindeutig beitragen,
können Perl::Critic und Perl::Tidy helfen, die selbst gewählten Regeln einzuhalten.
Eine natürliche Sprache
Doch Perl ist mehr als nur
TIMTOWTDI, denn Larry Wall ist auch bekennender
Christ und entlehnte den Namen aus
http://www.bibleserver.com/go.php?lang=de&bible=EU&ref=Mt13%2C46 einem Bibelzitat,
in dem es um das Erreichen des Paradieses, also des maximalen Glücksgefühls geht.
Und tatsächlich traf er viele Designentscheidungen aus dem Bauch.
Im Gegensatz zu anderen Sprachentwicklern, denen es um logische Eleganz oder
einen effizienten Minimalismus geht, der auch wesentlich besser in ein akademisches
Umfeld passt, mußte es sich für Larry stimmig anfühlen. Er vergaß nie, daß vor
dem Rechner Menschen mit Gefühlen sitzen, deren Sprachempfinden täglich in einer
Umgebung trainiert wird, die meist nichts mit Computern zu tun hat.
Viele der Perlbefehle, die nicht C oder dem gängigen Sprachgebrauch der Programmierer
entlehnt wurden, gehören dem einfachen Englisch an wie "use", "ISA" (is a), "tie",
und viele mehr. Der studierte Linguist ließ aber auch sein Wissen über menschliche
Lese- und Sprachgewohnheiten einfließen, was noch deutlicher an Perl 6 erkennbar ist.
Dazu gehört, daß Sprachen niemanden aussperren, der bestimmte Konzepte nicht
verstanden hat, die nicht absolut notwendig sind. Natürliche Sprachen erlauben
auch das Kombinieren der Wörter zu neuen Bedeutungen, was in Computersprachen
oft weniger frei ist und zu einer Überzahl spezialisierter Befehle führen kann.
Das ist eine Hauptursache warum PHP ca. 2500 Kernbefehle hat, und Perl etwa 300.
Perls Eigenarten lassen sich aber auch an seinem Maskottchen ablesen, dem Kamel.
Es riecht nicht immer gut und spuckt manchmal, ist aber robust und zuverlässig.
Perl in der Kritik
Daß Perl dennoch von einigen als besonders furchtbar empfunden wird, hat vielfältige
Gründe. Manche Menschen mögen nicht so viele Sonderzeichen auf dem Bildschirm,
was aber eher Gewohnheit oder ästhetisches Empfinden ist und nicht debattierbar ist.
Sonderzeichen in regulären Ausdrücken haben sich als nützlich erwiesen und sind
in fast jeder Sprache zu finden. Am Variablenanfang können sie wertvolle Orientierung
bieten. Als Name von Sondervariablen sind sie wirklich eher verschleiernd als nützlich.
Dies und Ähnliches hat zu Zeiten von Perl 3 einige Tastaturanschläge gespart,
wird aber heute von kaum jemand in der Perlgemeinde verteidigt. Veraltete Konstrukte
wie diese wurden über Gebühr beibehalten, da Perl immer eine Politik verfolgte,
wenn möglich keine Kompatibilität zu brechen. Viele Uralt-Programme laufen selbst
mit aktuellen Versionen. Deshalb kann heute sowohl sehr "moderner" Code geschrieben
werden, als auch mit veralteten Idiomen gespickter. Der meist während des WWW-Boom
geschriebene, nach allen Maßstäben schlechte Perlcode, der vielen noch heute als Beweis
dient, daß Perl nur hässlich sein kann, benutzte noch vermehrt alte Schreibweisen, "lebte"
aber auch von einer generellen Unerfahrenheit der damaligen Jungprogrammierer.
Als wirklich problematisch wird von den Entwicklern vor allem das altertümlich wirkende
Fehlen von
Signaturen und die Objektorientierung anerkannt, die mit einem Regal
zum selbst-zusammen-schraubenvergleichbar ist. Sie bietet kein Hindernis,
Ideen zu verwirklichen, aber stellt Neulinge vor unnötig große Herausforderungen.
Für beides gibt es zwar Module (Moose und viele andere), aber es ist geplant,
mit den nächsten beiden Versionen(5.16, 5.18) das mit neuen Schlüsselwörtern zu beheben.
<
Geschichte ^
Übersicht ^
Sprachvergleich >
Vorbereitung >>
--
HerbertBreunung - 2011-06-29