Die Geschichte hinter der Einführung von Pattern Matching in Python
(ryanking13.github.io)-
Die Nachfrage nach Pattern Matching
-
Die Geschichte der Pattern-Matching-Idee
-
Das Auftauchen von PEP 622
-
Die anhaltende Debatte
-
PEP 622 v2
-
PEP 622 is dead, long live PEP 634, 635, 636
-
Hello, Pattern Matching!
-
Eine Geschichte, die noch nicht zu Ende ist
4 Kommentare
Ich wusste gar nicht, dass es so eine Hintergrundgeschichte dazu gibt, und habe es wirklich mit großem Vergnügen gelesen.
Als ich das Zitat im Artikel las – „Dass
Point(x,0)eine völlig neue Bedeutung hat, bei der wederPoint.__new__aufgerufen noch nach einer Variablen namensxgesucht wird, ist nicht intuitiv.“ –, konnte ich der Meinung zustimmen, dass Pattern Matching nicht gut zu Python passt. Nachdem ich jedoch PEP 634 bis 636 gelesen hatte, dachte ich mir, dass Pattern Matching doch ganz gut funktionieren könnte.Bei Sprachen aus der ML-Familie wirkt es natürlich, weil Pattern Matching schon bei ihrer Entwicklung mitgedacht wurde. Bei Python hingegen wird
Pointbereits wie ein Klassenkonstruktor verwendet, also dachte ich: Das muss doch komplett verwirrend sein. Als ich dann aber die Codebeispiele im PEP gelesen habe, war es überhaupt nicht verwirrend.Das ist mein Artikel, danke für die Vorstellung.
Wenn man solchen Hintergrundgeschichten nachgeht, merkt man, wie schwierig es ist, bei Themen, bei denen die Meinungen scharf auseinandergehen, Entscheidungen zu treffen.
Ich wusste nicht genau, warum es rund um die Einführung von Pattern Matching so viele unterschiedliche Diskussionen gab, aber das hat mir sehr geholfen, es zu verstehen. Vielen Dank für den tollen Artikel!!