Ein EBNF Parser in Perl

EBNF-Grammatiken (erweiterte Backus-Naur-Form) dienen der Beschreibung von Sprachen und werden im Compilerbau, aber auch in vielen anderen Bereichen der Informatik eingesetzt. Beschreibt man eine Sprache in EBNF, so kann quasi "automatisch" ein Parser konstruiert werden.

Die Simulation von Kunden

Um einen Besucherstrom oder ähnliches möglichst realitätsnah zu simulieren, verwenden viele Programme die sogenannte "Negative Exponentialverteilung".

Reimen mit dem Computer

Dieses Buch bei Amazon Folge zwei aus der Reihe "Dichten mit Perl": Diesmal geht es um das Reimen. Wir definieren dazu ganz grob:

Reimen: Zwei Worte W1 und W2 sollen sich reimen, wenn vom Ende der Wörter beginnend mindestens zwei aufeinanderfolgende Zeichen übereinstimmem.

Die Türme von Hanoi

Im fernen Hanoi schlichten und schichten sie immer noch, die armen Mönche, und solange irgendwo auf der Erde Informatik unterrichtet wird, werden sie sicherlich auch keine Ruhe finden.

Computer und Kunst?

Es ist bekannt, daß für manche Menschen ein Perl-Programm etwas ähnliches wie ein Gedicht ist. Es ist aber durchaus auch möglich, mit Perl Gedichte zu erzeugen. Die künstlerische Tätikeit dabei beschränkt sich allerings auf Kopieren von Text und etwas Würzen mit Zufall.

Benutzerbericht - ein Perl-Script

Dieses kleine Perl-Script gibt den von Benutzern eines UNIX-Systems verbrauchten Plattenplatz aus.

Über's Holzschnitzen und Textschnitzen

"So wie der Schreiner das Holz bearbeitet, bearbeiten pragmatische Programmierer Text", schreiben Andrew Hunt und David Thomas in ihrem bekannten Buch "Der Pragmatische Programmierer".

Perl-Grundlagen: die map-Funktion

Die perl-Funktion map {BLOCK oder FUNKTION oder AUSDRUCK} (LISTE) ruft für jedes Element von LISTE den übergebenen BLOCK, die übergebene FUNKTION oder den übergeben AUSDRUCK auf. Der Rückgabewert ist wieder eine Liste, welche aus den Ergebnissen der einzelnen Funktionsaufrufe besteht. Das klingt komplizierter, als es in Wirklichkeit ist.

Sortieren durch Auswahl (Selection Sort)

Eines der einfachen Sortierverfahren mit einer Laufzeit von O(n²), hier implementiert in Perl.

Die ganze Wahrheit: Boole'sches mit Perl

Ein kleines Perl-Script kann bei der Erstellung von Wahrheitstabellen für Boole'sche Ausdrücke sehr behilflich sein.

Binäre Suchbäume

Binäre Suchbäume dienen der effizienten Implementierung von sogenannten DICTIONARIES, das sind Datentypen zur Darstellung von Mengen, welche die Operationen INSERT, DELETE und MEMBER, also Einfügen eines Elementes, Löschen eines Elementes und den Test auf "Enthaltensein" eines Elementes zu Verfügung stellen.

Verwandlung mit Perl

Ein Problem, welches in der Informatik immer wieder auftritt ist das Umwandeln von Zahlen in unterschiedliche numerische Repräsentationen.

Sortieren durch Einfügen (Insertation Sort)

Eines der einfachen Sortierverfahren mit einer Laufzeit von O(n²), hier implementiert in Perl.

Über's Hashing

Hashing ist eine Möglichkeit zur Implementierung von so genannten DICTIONARIES, dies sind Datentypen zur Darstellung von Mengen, welche die Operationen INSERT, DELETE und MEMBER zu Verfügung stellen.