• [^] # Re: Pas vraiment

    Posté par (site web personnel) . En réponse au lien Lua, un langage incompris.. Évalué à 3.

    Un truc qui m'a toujours semblé un peu une mauvaise idée (d'un point de vue maintenance) dans lua et que tu ne mentionnes pas, c'est le fait que les variables sont globales par défaut et qu'il faut utiliser local, plutôt que le comportement inverse (un global à la Tcl ou Python).

    Oui c'est vrai je l'avais oublié. Pour ma part j'ai rarement été affecté par ce choix de décision donc je dois avouer que ça ne m'a pas dérangé tant que ça mais je peux le comprendre.

    Le goto est une version très restreinte (un peu comme en Go, c'est un goto sans vraiment l'être), donc qui évite les cas vraiment problématiques qui lui valent une mauvaise réputation, non ?

    C'est le même qu'en C, il permet de faire un saut local. Il n'est pas possible de faire un « long » saut de fonction à fonction comme setjmp et il n'est pas possible de stocker des labels de goto non plus. Je pense que ça aurait pu avoir un quelconque intérêt de rajouter les goto si les labels étaient des objets de première classe.

    Pour le coup, ça c'est assez compréhensible pour un langage qui se veut petit et d'extension : un moteur d'expression régulières un peu moderne représenterait probablement autant de code que le reste de l'interpréteur, et un moteur trop simpliste donnerait de mauvaises performances.

    Oui c'est ce qu'ils ont indiqué dans leur livre. Mais utiliser un format spécial plutôt que rester proche des vrai regex fait qu'on doive apprendre une nouvelle syntaxe quand même. Bon l'avantage est qu'il n'y pas besoin de faire des échappement du style \d -> \\d comme en C.

    AI is a mental disorder