Login
Newsletter
Werbung

Fr, 13. Juli 2018, 10:13

Software::Entwicklung

Python-Projektleiter Guido van Rossum tritt zurück

Guido van Rossum ist nach rund 30 Jahren überraschend von seinem Amt als Python-Projektleiter zurückgetreten. Er will weiter bei der Entwicklung mitwirken, aber nicht mehr der »Wohlwollende Diktator auf Lebenszeit« sein, der in allen Entscheidungen das letzte Wort hat.

Guido van Rossum

Guido van Rossum

Guido van Rossum

Guido van Rossum startete Python Ende der 1980er-Jahre als Nachfolger einer Sprache namens ABC. Er war damals bei CWI in den Niederlanden und arbeitete an einem Betriebssystem namens Amoeba, das als freie Software veröffentlicht wurde, aber nie eine praktische Einsatzfähigkeit außerhalb des CWI erreichte und längst in Vergessenheit geraten ist. Python hingegen erschien im Februar 1991 in Version 0.9 und erreichte im Januar 1994 Version 1.0. Es war für die damalige Zeit eine moderne Sprache, die von einem Interpreter ausgeführt wurde und Objektorientierung, Ausnahmebehandlung und eine Menge eingebaute Datentypen mitbrachte.

Im weiteren Verlauf der Entwicklung, die bis heute anhält, wurde van Rossum von den mittlerweile hinzugekommenen weiteren Entwicklern zum »Wohlwollenden Diktator auf Lebenszeit« (Benevolent Dictator for Life, BDFL) ernannt. Sie erkannten damit an, dass van Rossum als Initiator der Sprache am besten wisse, wohin die Reise mit Python gehen sollte, und gaben ihm damit das alleinige Entscheidungsrecht über alle Dinge, die Python betreffen. Was nicht seine Zustimmung fand, konnte innerhalb von Python nicht passieren.

Jetzt hat von Rossum überraschend seinen Rücktritt bekannt gegeben. Als Hauptgrund nennt er den Stress, den es im Zusammenhang mit der Einführung eines neuen Sprachkonstrukts in Python gab. Das neue Konstrukt, ausführlich dokumentiert in PEP 572, führt eine Zuweisung als Ausdruck ein, wie sie in Programmiersprachen wie C schon immer möglich war. In Python hingegen war eine Zuweisung bisher immer eine Anweisung, konnte also nicht in andere Ausdrücke eingebaut werden, weil sie kein Ergebnis lieferte. Musste man bisher schreiben:

result = solution(xs, n)
if result:
    # use result

so kann man künftig eine kürzere Schreibweise verwenden, was selbstverständlich nicht die einzige mögliche Anwendung des neuen Operators ist.

if result := solution(xs, n):
    # use result

Der Operator := wurde gewählt, um Verwechslungen und Unklarheiten zu vermeiden. Aus demselben Grund wurden auch alle Alternativvorschläge verworfen, die PEP 572 im Detail vorstellt. Die Syntax des neuen Konstrukts war offenbar heftig umstritten, so dass van Rossum jetzt frustriert feststellt, dass er sich einen solchen Kampf künftig nicht mehr geben wolle. Er werde schließlich auch nicht jünger. Er tritt daher zurück und zieht sich aus allen Entscheidungsprozessen zurück. Einen Nachfolger gibt es nicht. van Rossum überlässt es den Kern-Entwicklern, das Projekt neu zu organisieren. Wenn man andere Projekte zum Vergleich heranzieht, liegt es nahe, dass das Projekt sich eine Satzung gibt und einen Vorstand oder ein Kern-Team wählt. Auch mehrere getrennte Leitungsteams wären denkbar, beispielsweise eines für das gesamte Projekt und ein technischer Beirat für Entwicklungsthemen.

Python hat sich zwar mit der Inkompatibilität zwischen der (immer noch genutzten) Version 2 und Version 3 auf Jahre hinaus selbst geschadet, ist aber trotzdem zu einer der beliebtesten Programmiersprachen geworden, ganz besonders im wissenschaftlichen Umfeld, aber auch in der Lehre. Gründe dafür waren sicherlich ihre Modernität, wobei auch neue Konzepte im Laufe der Zeit aufgegriffen wurden, die einfache und klare Syntax, die durch die Einrückungen der Zeilen erzwungen wird, und die große Anzahl der verfügbaren Module. Pythons Leitlinie war immer »Batteries included«, was bedeutet, dass die umfangreiche mitgelieferte Standardbibliothek bereits eine Vielzahl von Anwendungsfällen abdeckt. Zahlreiche weitere Module können aus einem zentralen Repositorium bezogen werden.

Werbung
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung