• [^] # Re: Avantage

    Posté par (site web personnel) . En réponse à la dépêche Publication de la version 2009Q2 de Unladen Swallow. Évalué à 5.

    En python, il faut tout réapprendre, en particulier, les messages d'erreurs que je trouve d'une confusion extrême.

    De quels messages parles-tu ? Si tu parles des exceptions : entre une traceback qui indique exactement où tu es (nom du fichier + numéro de ligne + ligne de code pour chaque fonction de la pile) et "Segmentation fault", j'ai fait mon choix :-)

    ... pour m'apercevoir qu'entre python 2.3 et 2.5 la syntaxe d'un truc avais changé

    Ça m'étonne, l'API standard est quand même hyper stable. Si tu parles de bibliothèques tierces : bah là ça dépend de la bonne volonté de ses mainteneurs. Mais ce problème n'est pas lié au langage effectivement :-)

    il faut re-apprendre toute l'API: A chaque ligne, je suis obligé d'aller voir la doc: Ouvrir un fichier, vérifier les permissions, récupérer un signal....

    Je trouve que l'API Python est très proche de l'API C (stdlib.h, stdio.h, signal.h, etc.). Au début, il faut juste trouver quel module contient telle ou telle fonction. Exemples C => Python :
    * open(), close() => os.open(), os.close()
    * fopen(), fclose() => f=open(); f.close()
    * sigaction(num, func, &oldfunc) => oldfunc = signal.signal(num, func)
    * access(path, mode) => os.access(path, mode)

    Et puis, la doc Python est plus agréable à lire que les manpages C je trouve. http://docs.python.org/library/