• [^] # Re: La réponse de Bram Moolenaar

    Posté par . En réponse au journal Neovim : vim's rebirth for the 21st century. Évalué à 1.

    Je n'ai jamais écrit de code en Python 2.2.

    Ça ne me choque pas de définir une constante None à 0, et d'utiliser cette constante symbolique plutôt qu'un entier. C'est exactement ce qu'on fait avec NULL.

    raise "foo" est valide jusqu'à 2.6 et renvoie un TypeError depuis 2.6. Je ne vais sérieusement pas énuméré tous les "Porting your code to Python 2.x" de la documentation pour prouver que l'assertion "Un script qui fonctionne avec Python 2.2 fonctionnera avec Python 2.7" est fausse. Un contre-exemple suffit.

    Python 2 est globalement rétrocompatible.

    Globalement, globalement:) Lua est globalement compatible à quelques exceptions près :).

    Je maintiens un programme qui tourne sur Python 2.5 à 3.4 toutes versions comprises, avec une seule base de code.

    Je ne dis pas que c'est impossible.
    Juste le traitement des u"foo" est chiant, vu que c'est valide en 2.{5, 6, 7}, 3.{3, 4}, mais pas en 3.{0, 1, 2}. Mais on peut toujours se débrouiller.
    Le nom des imports change, mais on peut se débrouiller aussi (avec des raise / except).
    Il ne faut juste pas dire que c'est "out of the box", je ne fais pas attention, et ça marche parfaitement entre 2.5 et 3.4. Là, personnellement, je n'y crois pas.