Zum Inhalt springen

Pugs

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 12. Mai 2005 um 22:51 Uhr durch Lichtkind (Diskussion | Beiträge) (etwas erweitert). Sie kann sich erheblich von der aktuellen Version unterscheiden.

Pugs ist ein alternativer Interpreter und Compiler für Perl 6, der in Haskell (GHC) geschrieben wird. Das Softwareprojekt wurde im February 2005 von Autrijus Tang begonnen um die Enstehung von Perl 6 zu unterstützen. Es ist eine freie Software, die wahlweise unter der GPL oder der Artistic License verwendet werden darf.

Zweck

Zum einen dient Pugs als Testimplementierung für den Perl 6-Parser. Wesentliche Fehler die in Pugs gemacht wurden können dann später vermieden werden, aber es wird auch Syntax-Schwächen im Entwurf der Sprache Perl 6 zu einem Zeitpunkt aufzeigen, an dem Korrekturen noch relativ einfach sind.

Zum anderen wird der eigentliche (in Perl 6 geschriebene) Perl 6 - Parser ein Programm sein, das von Pugs zu Parrot-Bytecode kompiliert wird. Bereits heute ist es möglich, mit Pugs Parrot-Code zu erzeugen, oder von Parrot erzeugten Parrot-Code mit Pugs zu kompilieren. Pugs wird auch helfen helfen Engpässe zu umgehen, da Sprache als auch Parrot noch halb fertig sind. Detaillösungen, wie die Test-Suite, können bereits entwickelt werden, obwohl andere, technisch dafür notwenindige Teile, noch nicht benutzbar sind.

Haskell

Haskell eignet sich für dieses Vorhaben gut, weil es viele Ähnlichkeiten zu Perl 6 besitzt und schnell zu Ergebnissen führt, und die in Haskell verfügbaren Bibliotheken viele wichtige Perl-6-Funktionalitäten bereits abdecken.

Eine essentielle Anforderungen an den Perl 6 Interpreter ist die Lauffähigkeit unter allen Betriebssystemen, unter denen auch Perl 5 Verbreitung fand. Da Haskell dies 2005 noch nicht konnte, kommt es für diese Aufgabe auch nicht in Frage.

Versionen

Die Versionierung von Pugs beginnt mit 6.0, und es wird mit jedem neuen Meilenstein eine Ziffer hinzukommen, so dass die Versionsnummer das Doppelte von Pi nachgebildet. Dies geht auf einen Scherz von Larry Wall zurück, der auf die Frage nach einem Perl 7 erklärte, warum Perl in seiner Version 2*Pi nicht überschreiten sollte. Aktuell ist Version 6.2.2 (1. Mai 2005).

Aktuelle Informationen

Die wöchentlich verschickte Mai "This week on Perl 6", die man auch auf perl.com nachlesen kann, bietet einen bequemen Einblick in die Pugs-Entwicklung. Es ist auch möglich, die Entwickler direkt per IRC (irc.freenode.net #perl6) zu erreichen.