Programmiersprache: Perl 7 angekündigt

Die Hauptversion baut auf Perl 5.32 auf und wird technisch zunächst vor allem Standardvorgaben ändern.

In Pocket speichern vorlesen Druckansicht 73 Kommentare lesen
Programmiersprache: Perl 7 angekündigt
Lesezeit: 4 Min.
Von
  • Rainald Menge-Sonnentag
Inhaltsverzeichnis

In seiner Keynote auf der virtuellen Perl-Konferenz mit dem Titel "Conference in the Cloud" hat der Entwickler Sawyer X Perl 7 angekündigt. Trotz des großen Versionssprungs bringt es planmäßig zunächst kaum Neuerungen gegenüber Perl 5.32 mit.

Erst einmal zielen die Perl Porters, wie die freiwilligen Programmierer heißen, die sich um die Weiterentwicklung der Sprache kümmern, auf sinnvollere Standardeinstellungen. Schließlich soll Perl 7 auf künftige größere Neuerungen vorbereiten.

Laut einem Artikel auf Perl.com entspricht Perl 7 im Wesentlichen dem vor Kurzem veröffentlichten Perl 5.32. Angepasste Grundeinstellungen sollen typischen Boilerplate-Code vermeiden, den nahezu alle Perl-Entwickler einsetzen. Perl 5.000 war 1994 erschienen, und alle Minor Releases enthalten seitdem zahlreiche Funktionen und Einstellungen aus Gründen der Rückwärtskompatibilität. Ebendiese Altlasten sollen durch den Versionssprung entfallen.

Allerdings werden laut den derzeit bekannten Plänen wenige Features tatsächlich verschwinden. Die indirekte Objektnotation ist ein Kandidat, aber von der indirekten Syntax rät die Dokumentation ohnehin ab. Auch einige Perl-4-Relikte wie Fake Multidimensional Arrays und Hashes sowie Prototyp-Definitionen, die statt :prototype() die Perl-4-Syntax verwenden, könnten in Perl 7 entfallen. Die Bareword File Handles, also das Verwenden von Zeichenketten ohne Anführungszeichen für Dateinamen, stehen wohl ebenfalls auf dem Abstellgleis.

Die Ankündigung von Perl 7 soll auch mittelfristig nicht das Ende des 5.x-Strangs der Programmiersprache einläuten. Laut dem Artikel soll Perl 5 in einen Long-term Maintenance Mode übergehen, der deutlich länger als die jeweils zwei Jahre für die jüngsten Versionen ist. Denkbar ist ein Support über die nächsten zehn Jahre.

Der Versionssprung, der die Nummer 6 auslässt, verwundert wenig. Schließlich existiert Perl 6 bereits seit Weihnachten 2015, auch wenn es inzwischen unter dem Namen Raku weiterlebt und technisch im Gegensatz zu Perl 7 deutlich von Perl 5 abweicht.

Mit einem Augenzwinkern merkt der Artikel auf Perl.com zudem an, dass man durchaus auch etwas von der PHP Community stehlen könne. Die Programmiersprache PHP hat nach gescheiterten Ansätzen der sechsten Hauptversion die Nummer 6 ebenfalls übersprungen.

Für Perl-5-Entwickler soll sich zunächst wenig ändern. Wer unter Version 5 einen modernen Perl-Style verwendet, findet laut dem Artikel einen geschmeidigen Übergang zu Perl 7. Sinnvoll sei jedoch eine zeitige Anpassung bezüglich der vermutlich entfallenden Funktionen wie Bareword File Handles.

Auch die Module aus dem Comprehensive Perl Archive Network (CPAN) mit gut 200.000 Einträgen sollen unter Perl 7 weitgehend weiter funktionieren. Ob es mittelfristig ein spezifisches CPAN für Perl 7 gibt, ist wohl nicht generell auszuschließen, aber zunächst sei man sich bewusst, dass Entwickler nicht Funktionierendes neu schreiben wollen.

Auf dem offiziellen Perl-Blog finden sich jedoch auch kritische Töne zu den Plänen für Perl 7. So glaubt ein Beitrag nicht daran, dass der Versionswechsel so geradlinig wie angekündigt möglich sei. Es bilde sich eher ein Fork und ein Nebeneinader wie beim Wechsel von Python 2 auf Python 3 – und dort befinde man sich "derzeit im Jahr 12 des fünfjährigen Übergangs". Python 2 hat inzwischen nach einigen Verlängerungen endgültig End of Life erreicht. Im April war das letzte 2.x-Release erschienen, aber der Umstieg gestaltet sich trotz langfristiger Ankündigung nach wie vor für einige schwierig.

Der Blogbeitrag erwartet nicht, dass Perl 7 das bestehende Release wirklich ersetzen wird. Stattdessen wird laut Ansicht des Autors Perl 5 die Version sein, die auf jeder Plattform verfügbar sein wird – und zwar unabhängig vom tatsächlichen Erfolg von Perl 7.

Auch sieht der Beitrag den Ansatz, lediglich die nicht kontroversen Features standardmäßig zu aktivieren, als unzureichend an. Stattdessen solle man sich Gedanken darüber machen, welche neuen Funktionen sinnvoll sind, um nicht kurz nach dem Release von Perl 7 eine weitere Hauptversion nachreichen zu müssen.

(rme)