• [^] # Re: Ah! C'est la saison de la galinette cendrée!

    Posté par . En réponse au journal Go : Un nouveau langage chez Google. Évalué à 5.

    On a les opérations infixées, préfixées, postfixées, ... Tu peux donc définir la priorité des opérateurs comme tu le souhaites. C'est fait pour pouvoir écrire tes formules au plus près de l'écriture mathématique classique.

    L'intention est louable mais le problème c'est que ton code est illisible. Sans parenthèses je me demande toujours si je doit comprendre (45020089/8)! ou bien 45020089/(8!). Et le fait de pouvoir spécifier la priorité de ces opérateurs de manière différente suivant le type de données manipulée rend les choses encore pire.
    Quand je vois les horreurs qui sont fait avec la surcharge des opérateurs en C++, je n'imagine même pas à quoi on finira pas arriver en Lisaac.

    Des programmeurs "qui en usent sans en abuser et qui le font avec précautions" et qui sont capable de maitriser la chose, maintenant ça se compte sur les doigts de la main : va bosser dans des SSII, des boites ou on fait du logiciel de gestion, etc... Tu verras que très peu sont capable de faire du code propre sans qu'on soit constamment derrière leur dos, alors faire du code propre avec des pointeurs...

    Pour récapituler : les pointeurs sont un outils très puissant dans les mains des bon programmeurs mais une grosse bombe à retardement dans les main des mauvais programmeurs.
    Le problème est que l'on à peu près que des mauvais programmeurs. Donc on oubli les pointeurs, on va pas prendre de risque.

    Pour tout dire, tu prend le paragraphe précédent et tu remplace pointeur par surcharge d'opérateurs et le texte reste parfaitement vrai.
    Tu prend du C++ pondu en SSII et tu regardes à quoi sert la surcharge d'opérateur. Le plus souvent tu te retrouve avoir des objets qui s'additionne ou ce multiplie de manière complètement illogique et le code deviens incompréhensible et tout aussi dangereux qu'avec des pointeurs.

    D'après toi pourquoi PHP, qui est un des langage les plus permissif et non rigoureux a eu un tel succès ?
    Parce que le programmeur moyen a un niveau assez bas.

    Faut faire des langages qui s'adaptent aux gens, pas l'inverse.


    Le problème c'est que lorsque le niveau est si bas, il ne faut pas un langage permissif mais au contraire un langage extrêmement strict et très redondant afin que le compilateur puisse détecter le maximum d'erreurs et afficher des messages les plus clairs possible.

    C'est pour cela que le PHP est une bouse infâme : il a une syntaxe qui lui permet de ne se préoccuper des erreur que le plus tard possible : en général quand il est trop tard. Ajoute à cela le fait qu'il est principalement utiliser sur des machine connectée au net et tu peut en déduire ce que je pense de ce langage.