Diese Seite erstelle ich derzeit mit Hugo. Hugo ist in Go geschrieben.
Da diese Seite die Programmiersprache Perl behandelt, würde ich gerne ein Werkzeug in Perl benutzen.
Bevor ich den Grundstein für das Perlhaus gelegt habe, hatte ich mir einige statische Webseiten-Generatoren angesehen. Leider hatte ich keinen Generator in Perl 5 gefunden, der mir gefallen hat.
Allerdings sah die Dokumentation von Uzu vielversprechend aus – und das ist in Perl 6 geschrieben.
Jedoch konnte ich Uzu nicht ausprobieren, da ich das Werkzeug nicht installieren konnte. Die Installation benötigter Module schlug fehl. Ich hatte das letzte stabile offizielle Perl-6-Release »Rakudo Star« gewählt. Nach ein wenig Recherche musste ich feststellen, dass es nicht an mir lag, sondern tatsächlich die Rakudo-Version das Problem war. Also eröffnete ich ein Ticket und griff dann zunächst zu Hugo, das zudem den Vorteil hatte, von Netlify betrieben zu werden. So konnte ich mit einem simplen »git push« für eine Aktualisierung der Webseite sorgen.
Inzwischen habe ich Uzu installieren können. Dafür habe ich mit rakudobrew die Rakudo-Version 2017-06 installiert, so dass ich Uzu nun endlich ausprobieren kann.
Nebenbei werde ich dann Erfahrungen in Perl 6 sammeln. Meine letzten Erfahrungen sind Jahre her. Gelernt habe ich inzwischen folgendes:
Perl 6 trennt weiterhin strikt die Sprache und deren Implementation voneinander. Es gibt mehrere Implementierungen davon, eine ist Rakudo.
Rakudo erscheint ungefähr monatlich und enthält neben dem Sprachkern ergänzende Werkzeuge wie zum Beispiel einen Paketmanager.
Als Paketmanager nimmt man inzwischen nicht mehr »panda«, sondern »zef«. Dieses Werkzeug fühlte sich bei meinen ersten Gehversuchen damit wie ein aufgemotztes »cpanm« an.
Mit »rakudobrew« kann man analog »perlbrew« mehrere Perl-6-Versionen parallel auf einem System betreiben.
Es gibt eine rudimentäre CPAN-Tester-Matrix für Perl 6. Ich habe aus ihr aber nicht herauslesen können, ob nun die Module, deren Installation bei mir fehlschlug, auf meiner Platform und in meiner Rakudo-Version laufen sollten oder nicht.
»Zef« scheint ab und zu auf veraltete Versionsstände der installierten Module zuzugreifen, hier muss man dann mit einem beherzten »rm -rf« nachhelfen.
Insgesamt bin ich gespannt auf Perl 6 und wie ich damit arbeiten kann. Die ersten Versuche waren etwas ernüchternd: Ich bin an der Installation von Modulabhängigkeiten gescheitert. Das passiert mir bei Perl 5 natürlich auch gelegentlich, es war hier aber wenig erbaulich, da Uzu aufgrund der Dokumentation recht reif wirkte – ich hatte erwartet, dass ich es tatsächlich einfach mit dem aktuellen stabilen Rakudo installieren kann.
Ich bleibe am Ball und werde hier berichten, inwieweit ich ein Produkt, das in Perl 6 geschrieben ist, produktiv nutzen kann.