Perl CGI

 

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

heise online News
Nachrichten nicht nur aus der Welt der Computer

Der Netzaktivist Stephan Urbach betonte auf der Kölner Konferenz, dass Hacker sich nicht mit Militärs und Unterdrückern der Meinungsfreiheit solidarisieren sollten.

In der aktuellen Consumer Preview von Windows 8 laufen Desktop-Programme noch in der gewohnten Aero-Bedienoberfläche. Das wird sich aber ändern, wie ein Blogbeitrag von einem Microsoft-Mitarbeiter verdeutlicht.

Mindestens 1900 Zugangsdaten sind möglicherweise gestohlen und in Auszügen auf einer Internetplattform veröffentlicht worden. Die Staatsanwaltschaft Berlin ermittelt wegen des "Ausspähens von Daten".

Das Case Marine von Gooma trägt kaum auf und soll Geräte bis zu einer Tiefe von 10 Metern vor Wasser schützen.

Der Kneipenflipper ist tot, lebt aber als Emulation weiter: Nicht nur auf Smartphone und Tablets, sondern auch in virtuellen Flippern mit LC-Display als Spielfläche. Die ersten kommerziellen Anbieter stehen in den Startlöchern.

Auch die chinesischen Behörden haben den milliardenschweren Kauf genehmigt, damit ist die letzte Hürde genommen. Bedingung: Android muss mindestens fünf Jahre lang gratis bleiben.

Angewidert wendet sich Hal Faber von der Blase 2.0 ab, huldigt Donna Summer, wälzt bewährte Utopien und lenkt sich mit Fesselspielen ab. Unterwegs gräbt er Papiere aus, für deren Untertitel drei Tweets nicht genügen würden.

Im Patentstreit zwischen Microsoft und Motorola bestätigt die US-Handelsaufsichtsbehörde ITC ihr vorläufiges Urteil vom vergangenen Dezember.



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