Perl

Perl ist eine freie, plattformunabhängige und interpretierte Programmiersprache.

 

Der Linguist Larry Wall entwarf sie 1987 als Synthese aus C, den UNIX-Befehlen und anderen Einflüssen. Ursprünglich als Werkzeug zur System- und Netzwerkadministration vorgesehen, 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. Der Umgang mit Texten und viele frei verfügbare Module sind Stärken der Sprache.

 

Der Name Perl bezieht sich auf ein Zitat aus dem Matthäus-Evangelium [13,46], wo Jesus das Himmelreich mit dem Bild eines Händlers beschreibt, der seinen gesamten Besitz verkaufen will, um eine kostbare Perle zu erwerben. Noch vor der Veröffentlichung wurde der Name von Pearl in Perl geändert, da es bereits eine Sprache namens Pearl gab. Allgemein verbreitet und von Larry Wall akzeptiert sind auch die Backronyme Practical Extraction and Report Language und Pathologically Eclectic Rubbish Lister. Die Schreibweise „Perl“ bezeichnet die Sprache, „perl“ dagegen das Programm, das diese Sprache interpretiert.

 

Prinzipien

 

Perl wurde für den praktischen Einsatz entwickelt und konzentriert sich daher auf einfache Programmierbarkeit, Vollständigkeit, Effizienz und Anpassbarkeit. Diese Philosophie drückt sich in den folgenden Schlagworten oder Phrasen aus, die meist von Larry Wall stammen.

 

Das bekannteste und grundlegendste Perl-Motto ist „There is more than one way to do it“ (kurz: TIMTOWTDI, gesprochen „Tim Today“). Zu deutsch: „Es gibt mehr als einen Weg, etwas zu tun“. Perl macht im Gegensatz zu Sprachen wie Python weniger Vorgaben und bietet absichtlich für jedes Problem mehrere Formulierungs- und Lösungsmöglichkeiten. Zum Beispiel kann man logische Operatoren als || und && (wie in C) oder (mit Bedeutungsnuancen) als or und and (wie in Pascal) schreiben; aber auch zahlreiche Befehle mit einem sich überschneidenden Funktionsumfang wie map und for erlauben verschiedene Formulierungen für den gleichen Sachverhalt. Einige Befehle wie der Diamant-Operator (<>) bieten verkürzte Schreibweisen für bereits vorhandene Funktionalität.

 

Dass Vielfalt eine erklärte Tugend der Perl-Kultur ist, wird auch im CPAN sichtbar, wo oft mehrere Module einen sehr ähnlichen Zweck erfüllen. Dies alles erlaubt dem Programmierer nicht nur das Schreiben maßgeschneiderter Software, sondern bietet auch die Freiheit, persönlichen Vorlieben nachzugehen, was für manche ein wichtiger Grund ist, sich für Perl zu entscheiden.

 

Eine weiteres Schlagwort, das man auch als Erweiterung von TIMTOWTDI sehen kann, bezeichnet Perl als die erste postmoderne Programmiersprache. Damit ist gemeint, dass Perl verschiedene Paradigmen vereint und es dem Benutzer frei steht, strukturierte, objektorientierte, funktionale und imperative Sprachmerkmale zu kombinieren.

 

Perl erlaubt freies Formatieren des Quellcodes. Das bedeutet, dass Einrückungen und zusätzliche Leerzeichen syntaktisch unerheblich sind und auch Zeilenumbrüche nach Belieben eingefügt werden können. Logische Konsequenz dieser Freiheit ist die Notwendigkeit, jeden Befehl mit einem Semikolon abzuschließen.

 

CGI

 

Die CGI-Schnittstelle (Common Gateway Interface – in etwa Allgemeine Vermittlungsrechner-Schnittstelle) ist ein Standard im Web für den Datenaustausch zwischen auf Webservern bereitstehenden Programmen (Scripts) und den sie aufrufenden Webbrowsern. Hierbei können die serverseitigen Programme, die z.B. von HTML-Dateien aus aufgerufen werden können, sowohl Daten vom Browser empfangen (etwa Formulareinträge) als auch neu generierte Daten an den Browser verschicken (etwa eine HTML-Seite). CGI ist also eine schon länger bestehende Variante, Webseiten dynamisch bzw. interaktiv zu machen.

 

Um die CGI-Schnittstelle zu verwenden, muss diese von der Webserver-Software unterstützt werden. Dabei ist wichtig, dass diese Software dem Programm/Script immer 3 Dinge zur Verfügung stellt:

 

- Umgebungsvariablen (z.B. SERVER_NAME), deren Inhalte dem Programm 

  helfen, sich „vor Ort“ zu orientieren und über aktuelle Einstellungen zu

  informieren.

 

- Weiterleitung von Ausgaben, meistens als dynamisch erzeugte HTML-Seite 

  (oder Seitenteile), aber auch als Einträge in Fehlerprotokolldateien.

- Einholen von Formulareingaben oder Aufrufparametern z.B. aus HTML-

  Seiten, damit das CGI-Programm/-Script auf diese reagieren kann. Dabei

  können solche Daten als Umgebungsvariable (GET-Methode) oder über  

  einen Eingabe-Kanal (POST-Methode) Eingang ins Programm/Script finden,

  wobei letztere Möglichkeit sicherer ist.

 

Wie diese Daten strukturiert sind, ist die eigentliche Schnittstellenbeschreibung (deshalb „interface“).

 

CGI-Programme können also in allen möglichen Programmiersprachen geschrieben sein. Es muss lediglich auf dem Server ein entsprechender Laufzeitinterpreter vorhanden sein, oder das Programm muss für das Serverbetriebssystem kompiliert worden sein. Am weitesten verbreitet ist hierbei Perl.

 


heise online News
Nachrichten nicht nur aus der Welt der Computer

Apples Matching-Algorithmus schaut nicht besonders lange hin, wenn er Songs abgleicht. Mac & i hat iTunes Match genauer analysiert und herausgefunden, dass zuweilen selbst kurze Hörproben genügen, um komplette Songs freizuschalten.

Nach Probeläufen in Sydney und Melbourne sollen von Juli an sämtliche internationalen Flugplätze in Australien mit neuen Durchleuchtungsgeräten ausgerüstet werden. Die Nutzung der Scanner wird gesetzlich vorgeschrieben.

Entwicklerinformationen zu Googles sozialem Netzwerk Google+ gibt es künftig auch per Hangout. Eine Google+-Seite soll das bestehende Blog mit regelmäßigen Videokonferenzen und anderen Informationen ergänzen.

In einigen Wochen will Vodafone mit dem HTC Velocity 4G sein erstes LTE-Smartphone in Deutschland auf den Markt bringen.

Acer verklagt Gianfranco Lanci, den ehemaligen Mann an der Spitze des Unternehmens. Der mittlerweile für Lenovo tätige Italiener soll das Wettbewerbsverbot seines früheren Vertrags gebrochen haben.

Rückwirkend zum 1. Februar 2012 hat AWS die Preise fürs Speichern in der Storage-Cloud S3 nach unten korrigiert. Regionale Preisunterschiede bleiben aber trotzdem bestehen.

Der Bundesverband Interaktive Unterhaltungssoftware e. V. (BIU) tritt dem MINT-Branchenzusammenschluss bei. Ziel sei es, junge Akademikerinnen für die Spiele-Entwicklung zu begeistern.

Das iPhone 4S hat Apple erneut auf den Spitzenplatz im globalen Smartphone-Markt befördert und Samsung auf den zweiten Platz verdrängt. Das größte Wachstum hatte aber der südkoreanische Konzern zu verzeichnen.



amk-consulting
  • Beratung, Planung
    und Design
  • Datenbanken
  • eBusiness
  • Applikationsserver
  • Internet, Intranet,
    Firewall
  • Client/Server
 
amk-akademie
  • Professionelles
    Training für Systemadministratoren
    und IT-Entscheider
  • Anwender Trainings
  • Firmenseminare vor Ort
  • Individualworkshops
 
amk-media
  • Medien-Services
  • Web-Marketing
  • Web-Design
  • Flash
  • Typo3
  • Portalservices