|
| |
Perl ist eine freie,
plattformunabhängige und interpretierte
Programmiersprache
(„Skriptsprache“),
die mehrere Programmierparadigmen unterstützt.
Der Linguist Larry Wall entwarf sie 1987 als
Synthese aus C, awk, den UNIX-Befehlen und anderen
Einflüssen. Ursprünglich als Werkzeug zur
Verarbeitung und Manipulation von Textdateien
insbesondere bei System- und Netzwerkadministration
vorgesehen (z. B. Auswertung von Logdateien), hat
Perl auch bei der Entwicklung von Webanwendungen und
in der Bioinformatik weite Verbreitung gefunden.
Hauptziele sind eine schnelle Problemlösung und
größtmögliche Freiheit für Programmierer. Die
Bearbeitung von Texten mit Hilfe regulärer Ausdrücke
sowie viele frei verfügbare Module, die an einem
zentralen Ort gesammelt werden (CPAN), sind Stärken
der Sprache.
Larry Wall war als Administrator und Programmierer
bei dem Unternehmen Unisys angestellt, bei dem er
seit März 1987 daran beteiligt war unter dem Namen
blacker ein sicheres Netzwerk für die NSA zu
entwickeln. Er erhielt mehrere Aufträge, Werkzeuge
zur Fernwartung und Überwachung der entstehenden
Software zu schaffen. Eine Hauptaufgabe war dabei,
übersichtliche Berichte aus verstreuten Logdateien
zu erzeugen. Da ihm die vorhandenen Sprachen und
Werkzeuge dafür zu umständlich erschienen,
entwickelte er mit Hilfe seines damaligen
Teamkollegen Daniel Faigin und seines Schwagers Mark
Biggar schrittweise eine eigene Sprache, um seine
Aufgaben zu lösen.
Dabei griff er auch auf sein Wissen und seine
Erfahrung als Linguist zurück und entwarf Perl nahe
an den menschlichen Sprachgewohnheiten. Dies drückt
sich in minimalen Voraussetzungen für Einsteiger,
einer starken Kombinierbarkeit der Sprachelemente
und einem reichen Wortschatz aus, der auch Befehle
zulässt, deren Bedeutungen sich überschneiden. Wall
sieht darin die Bedürfnisse eines Praktikers nach
Freiheit und intuitivem Ausdruck verwirklicht.
Gemäß diesem praktischen Ansatz borgte sich Perl
seinen Wortschatz und seine logischen Strukturen von
den in den 1980er Jahren unter Unix verbreiteten
Sprachen und Werkzeugen, was das Erlernen
vereinfachte, aber auch die Unix-Philosophie
umkehrte.
Unix und seine Systembefehle waren kompiliert und
meist in C geschrieben. Diese Befehle waren logische
Einheiten und sollten genau eine Aufgabe beherrschen
(„Do one thing and do it well“/„Mach eine Sache und
mach sie gut“). Interpretierte Shell-Skripte
kombinierten schnell und einfach die Befehle, die
untereinander ihre Ergebnisse durch Pipes
weiterreichen konnten. Perl verletzt diese
Philosophie, indem es diese Befehle zum Bestandteil
der Programmiersprache macht, also C und Shell
vereint und die vorhandenen Befehle und Werkzeuge
übergeht.
|
|
| |
|
|