Posté par benja .
En réponse à la dépêche Python 3.10 est disponible.
Évalué à 2.
Dernière modification le 16 août 2021 à 00:03.
Oui, tout comme ML, haskell, etc. Et sauf qu'il manque /juste/ l'étude de cas qui rend cet outil vraiment puissant, par exemple en vérifiant l'exhaustion des combinaisons (pour détecter, à la compilation, les bugs du à des cas non-traités).
De plus, n'y a-t-il pas une contradiction avec l'adage "si ça vole comme un canard et que ça fait quack, alors c'est un canard" ? Comment fonctionne case Canard((_)) as obj: si l'objet n'est pas un canard mais vole comme un canard ? Après une lecture rapide de la PEP, je n'arrive pas à répondre à cette question. Je n'y trouve aucune mention de sub-typing ou de classe dérivée.
Mon impression c'est qu'on est en train de rendre le langage python beaucoup plus complexe pour le faire ressembler à certains langages compilés, mais sans obtenir aucune aide que les compilateurs de ces langages offrent. En quelque sorte, on perd sur les 2 tableaux... Autant apprendre un langage de type scala, qui finalement offre une syntaxe très agréable (c'était finalement le principal argument qui a engendré la popularité de python) avec les avantages d'un compilateur fonctionnel de haut niveau qui possède aussi un très large éco-système de bibliothèques.
[^] # Re: switching cases finally
Posté par benja . En réponse à la dépêche Python 3.10 est disponible. Évalué à 2. Dernière modification le 16 août 2021 à 00:03.
Oui, tout comme ML, haskell, etc. Et sauf qu'il manque /juste/ l'étude de cas qui rend cet outil vraiment puissant, par exemple en vérifiant l'exhaustion des combinaisons (pour détecter, à la compilation, les bugs du à des cas non-traités).
De plus, n'y a-t-il pas une contradiction avec l'adage "si ça vole comme un canard et que ça fait quack, alors c'est un canard" ? Comment fonctionne
case Canard((_)) as obj:si l'objet n'est pas un canard mais vole comme un canard ? Après une lecture rapide de la PEP, je n'arrive pas à répondre à cette question. Je n'y trouve aucune mention de sub-typing ou de classe dérivée.Mon impression c'est qu'on est en train de rendre le langage python beaucoup plus complexe pour le faire ressembler à certains langages compilés, mais sans obtenir aucune aide que les compilateurs de ces langages offrent. En quelque sorte, on perd sur les 2 tableaux... Autant apprendre un langage de type scala, qui finalement offre une syntaxe très agréable (c'était finalement le principal argument qui a engendré la popularité de python) avec les avantages d'un compilateur fonctionnel de haut niveau qui possède aussi un très large éco-système de bibliothèques.