Von Anonymous am Di, 10. September 2019 um 11:14 #
Wenn ich mir einige verbreitete Softwarebibliotheken ansehe, wo die Maintainer mit allen erdenklichen Hacks versucht haben, den Code Python 2 & 3 -kompatibel zu halten, wird mir schwindelig. Ich selbst habe glücklicherweise von 2012 an ausschließlich auf Python 3 gesetzt, da bereits damals Python 2 auf der offiziellen Website als "legacy" eingestuft war. Ich habe kein Verständnis für irgendwelche Maintainer, für die die Einstellung von Python 2 jetzt "unvorhergesehen", "kurzfristig" oder "überraschend" kommt.
Die Frage ist eher, musste eine solche inkompatible Änderung wie von Python 2 auf Python 3 überhaupt kommen? Ja. Wenn man sich die Änderungen anguckt, die machen Sinn. Was dann wiederum die Frage aufwirft, warum hat man es nicht von Anfang an so gemacht?
Ganz einfach. Weil man sich nicht genug Gedanken beim Sprachdesign macht. Weil man nicht immer guck, was es schon gibt. Was für Probleme da aufgetreten sind. Ähnliches kannst Du ja auch bei anderen Sprachen beobachten wie z.B: PHP oder Javascript oder Ruby.
Die alle haben angefangen so a-la "Ich mach erst mal das was mir in den Kram passt und dann guck ich weiter". Und so was kommt dann halt bei raus.
Von Anonymous am Di, 10. September 2019 um 12:31 #
Naja, Ende letzten Jahres sah die Welt noch anders aus. Mittlerweile tut sich da was, wie man den Commits entnehmen kann: https://github.com/kovidgoyal/calibre
Wenn ich mir einige verbreitete Softwarebibliotheken ansehe, wo die Maintainer mit allen erdenklichen Hacks versucht haben, den Code Python 2 & 3 -kompatibel zu halten, wird mir schwindelig.
Ich selbst habe glücklicherweise von 2012 an ausschließlich auf Python 3 gesetzt, da bereits damals Python 2 auf der offiziellen Website als "legacy" eingestuft war.
Ich habe kein Verständnis für irgendwelche Maintainer, für die die Einstellung von Python 2 jetzt "unvorhergesehen", "kurzfristig" oder "überraschend" kommt.
Die Frage ist eher, musste eine solche inkompatible Änderung wie von Python 2 auf Python 3 überhaupt kommen?
Ja. Wenn man sich die Änderungen anguckt, die machen Sinn. Was dann wiederum die Frage aufwirft, warum hat man es nicht von Anfang an so gemacht?
Ganz einfach. Weil man sich nicht genug Gedanken beim Sprachdesign macht. Weil man nicht immer guck, was es schon gibt. Was für Probleme da aufgetreten sind. Ähnliches kannst Du ja auch bei anderen Sprachen beobachten wie z.B: PHP oder Javascript oder Ruby.
Die alle haben angefangen so a-la "Ich mach erst mal das was mir in den Kram passt und dann guck ich weiter".
Und so was kommt dann halt bei raus.
Letztens habe ich mir mal wieder PHP angesehen.
PHP 7 hat mir schon wesentlich besser gefallen, als die Versionen, die es davor gab.
Naja, es gibt wohl auch "Unbelehrbare", die lieber python2 in Eigenregie weiterpflegen wollen anstatt ihren Code auf python3 zu portieren:
https://www.mobileread.com/forums/showthread.php?t=293242
Naja, Ende letzten Jahres sah die Welt noch anders aus.
Mittlerweile tut sich da was, wie man den Commits entnehmen kann:
https://github.com/kovidgoyal/calibre