• [^] # Re: Surprise

    Posté par (site web personnel) . En réponse au journal Lisaac: sorti de la 0.39beta. Évalué à 1.

    >> Le jour ou on s'amusera à comparer l'expressivité des langages, on te demandera ton aide pour une partie lisp.

    Euh, « Turing complete, » c'est un moyen de comparaison d'expressivité, et beaucoup de gens s'y amusent.
    Tu as aussi « full abstraction » et « adequation theorem » qui sont des mots clefs de sémanticiens, un branche de l'informatique qui s'amuse à comparer l'expressivité des langages...

    Cela dit, je ne parlais pas de l'expressivité du langage (très bonne, au demeurant), mais juste du fait que les principaux éditeurs de texte (notamment vim et emacs) ont depuis fort longtemps des modes/plugins qui rendent la vie des programmeurs Lisp vraiment aisée, à commencer par gestion automatique des parenthèse (par exemple, paredit.el), et le déplacement dans les S-expressions.

    Petit exemple : http://img8.imageshack.us/img8/9479/openparen.gif
    Et sache que tu ne peux pas effacer une parenthèse par erreur, ouvrante ou fermante.

    Sinon : http://mikael.jansson.be/hacking/limp/docs/screenshots/highl(...)
    Note la couleur des parenthèse qui encadrent le curseur, et la couleur des autres (ainsi que la couleur du fond de la S-Exp qui contient le curseur).

    Après, tu rajoutes un colorscheme dynamique qui rend uniquement la parenthèse active en noir, et les autres en gris clair, et ça fait resortir l'expression courante, tout en cachant les autres parenthèse (qui, comme elles sont là, permettent d'avoir une indentation *toujours* correcte, et donc un feedback visuel encore plus fort, bien que les parenthèses soient cachées.)


    Ce sont là des aides visuelles pratiques, une gestion SYNTAXIQUE du langage, alors que la plupart des autres langages ne permettent qu'une gestion lexicale.

    Alors, je réitère : si tu codes en Lisp sans ces outils, soit t'es un blaireau fini, soit tu ne sais pas utiliser ton éditeur de texte. Dire que les parenthèses ici sont un fardeau, c'est comme dire que la roue c'est nul parce qu'elle est ronde/circulaire !