Walrus-Operator

Alles, was nicht direkt mit Python-Problemen zu tun hat. Dies ist auch der perfekte Platz für Jobangebote.
Antworten
Benutzeravatar
noisefloor
User
Beiträge: 3843
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,
Mein Eindruck ist, dass es Sprachentwicklern generell erstaunlich schwer zu fallen scheint, die Füße still zu halten, eine Sprache (also deren Syntax/formale Definition) einfach mal als "abgeschlosses Gesamtkunstwerk" anzusehen und nicht permanent daran irgendwelche Ergänzungen vorzunehmen.
Kommt drauf an. Was mir als Gegenbeispiel einfällt ist Lua. Das ist ja schon irgendwie im Mainstream, wenn auch weit von der Popularität von Python & Co entfernt. Bei Lua braucht man seit Version 5 so 3-5 Jahre für den nächsten Minor-Release.

Bei Python denke ich auch, dass da ein gewisser "Erfolgsdruck bedingt durch die Popularität" herrscht. Andererseits lesen sich IMHO die PEPs, die umgesetzt werden, in den allermeisten Fällen plausibel. Auch, wenn ich selber viele Sachen selber nicht einsetze bzw. vermisst habe (wie Type Annotations).

Solange Python nicht auf ein so komisches Release-Modell wie Java wechselt, wo die Short-Term-Support Versionen nur 9 Monate Support haben...

Gruß, noisefloor
Benutzeravatar
__blackjack__
User
Beiträge: 13004
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@noisefloor: Bei Lua werden die Sprachentwickler von der Community extrem ausgebremst. Die würden gerne mehr machen, aber die Leute benutzen einfach nur die Uralt-Versionen. So ein bisschen wie bei Python 2.7 nur das ich bei Lua nicht sehe das sich die Sprachentwickler da durchsetzen könnten.

Typannotationen sind der erste Fall den ich so richtig krass fand. Traditionell hat Guido ja immer nur Sachen ”genehmigt”, die einen klaren Nutzen/Vorteil haben. Und dann kam er plötzlich mit Syntax für Annotationen um die Ecke. Wofür? Für *irgendwas*! Macht damit was ihr wollt. Mal schauen was da interessantes bei herum kommt. Es hat kaum jemand benutzt. Unter anderem auch weil es ja nicht unproblematisch ist wenn Bibliothek A die Annotationen für irgendwas benutzt und Bibliothek B die Annotationen für irgendetwas anderes benutzt. Und nach dem laaaange Zeit nur ganz wenige Bibliotheken mit den Annotationen experimentiert haben, hat Guido entschieden, dass die ab sofort für Typannotationen verwendet werden. Und zwar nur dafür. Und irgendwie auch weil das gerade ”in” ist. Also im Grunde Typescript & Co nachgeäfft. Und vielleicht weil Python in Unis mehr verwendet wird und die Profs auf statische Typorgien stehen um da noch mehr Fuss zu fassen.

Der Walruss-Operator war letztlich ja auch der Grund aus dem Guido den Posten als BDFL niedergelegt hat, weil da echt heftiger Unmut aus der (auch engeren) Community kam.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis
nezzcarth
User
Beiträge: 1632
Registriert: Samstag 16. April 2011, 12:47

noisefloor hat geschrieben: Dienstag 24. November 2020, 20:36 Kommt drauf an. Was mir als Gegenbeispiel einfällt ist Lua. Das ist ja schon irgendwie im Mainstream, wenn auch weit von der Popularität von Python & Co entfernt. Bei Lua braucht man seit Version 5 so 3-5 Jahre für den nächsten Minor-Release.
Danke für das Beispiel :) Ich kann mir vorstellen, dass das bei einer Sprache, die vor allem eingebettet wird, auch noch mal etwas anders ist. Wenn man lua in irgendein Spiel oder eine Anwendung einbaut, möchte man vielleicht keine Änderung an der Sprache haben, die dafür sorgen, dass Plugins/Mods auf einmal nicht mehr funktionieren oder Inkompatibilität zwischen Versionen erzeugen.
Benutzeravatar
pillmuncher
User
Beiträge: 1482
Registriert: Samstag 21. März 2009, 22:59
Wohnort: Pfaffenwinkel

@__blackjack__: Type Annotations könnte man für Property Based Testing verwenden. Hypothesis macht das anscheinend, aber ich hab es mir nicht genauer angeschaut.
In specifications, Murphy's Law supersedes Ohm's.
Benutzeravatar
noisefloor
User
Beiträge: 3843
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

bzgl. Type Hints: ich habe vor ein oder zwei Jahren mal ein Video von ein er Pycon gesehen, wie jemand von Instagram erzählt, wie sie Type Hints und Type Checking (ich meine mit mypy) eingeführt haben und was es für die gebracht hat bzw. immer noch bringt. Vom Use Case her war das in dem Fall sehr plausibel und einleuchtend. Ich selber habe das aber nie vermisst und sehe auch keinen Grund, warum nicht das nutzen sollten.
Keine Ahnung, ob Type Checking ab einer bestimmten Größe und Komplexität von Programm (wie Instagram) sinnvoll ist und das Feature in erster Linie für die "entreprise level" Nutzer von Interesse ist.

Gruß, noisefloor
Antworten