Re: [SSFR] quel langage ?

[ Thread Index | Date Index | More debianworld.org/shellscript-fr Archives ]


Troisième essai...


Selon Philippe Jacquot <philippe.j@xxxxxxxxx>:

> La gestion d'erreurs est aussi simplifiée avec les clauses try/except
> Je connais pas trop C, mais j'imagine que ça marche pareil que catch.

En C, il n'y a rien nativement pour gérer les exceptions, mais on
peut bien sûr construire des mécanismes aussi sophistiqués que l'on
veut. La méthode classique et basique consiste à utiliser setjmp() et
longjmp().

> L'indentation, on aime ou on aime pas, mais elle est significative en
> python. Attention aux editeurs de textes mal configurés..

Probablement la pire "fonctionnalité" de Python : les longs blocs
composants les boucles et fonctions, perdant leurs frontières deviennent
difficiles à distinguer. Rien pour faciliter la tâche du mainteneur.

> Support des fonctions lambda, équivalent des fonctions anonymes de perl.

Dommage, les fonctions map(), filter() et reduce() ont été jugées trop
lispiennes par Guido qui va les supprimer de Python 3000 :

    http://www.artima.com/weblogs/viewpost.jsp?thread=98196
    http://lambda-the-ultimate.org/node/view/587

> Maintenant, bon, je découvre aussi. Je suis en train de passer petit à
> petit mes moulinettes en Python, et je me rends compte que, non
> seulement ça facilite la lecture, mais en plus je peux mieux gérer des
> conditions d'exception qui étaient assez "lourdes" à traiter en Perl.

Pourtant la gestion d'exceptions en Perl est assez simple avec eval{} et
test sur $@, ou si tu veux une synyaxe plus OO, tu peux utiliser l'un
de Exception::Class::TryCatch ou Error::TryCatch.

    http://search.cpan.org/dist/Exception-Class-TryCatch/
    http://search.cpan.org/dist/Error-TryCatch/

La syntaxe de Python ressemble à celle de Java, mais avec un défaut
typique du n'importe quoi de Python : le mot-clé pour déclarer la
gestion d'une exception est "except". Résultat, en anglais
  "try: execute something / except: Exception"
se lit
  "essaye d'exécuter tel code / [gérer] sauf telle exception"

Pourquoi ne pas avoir utilisé "exception" comme mot-clé ? Ou "error"
si économiser la frappe de 3 caractères était si important ?


--
Sébastien Aperghis-Tramoni

Close the world, txEn eht nepO.



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/