L'histoire des espaces autour des opérateurs ça me fait penser au C++ (2003) où
Code:vector<vector<int>>
était une erreur. Parfois les grammaires sont boguées, et C++ 2003 devait interpréter ">>" comme l'opérateur et non comme "fin de template, fin de template".
Il y a pas mal de points valides dans tout ce qui a été dit. Finalement l'indentation codante n'est pas un problème si et seulement si le parser (et par conséquent la grammaire) est suffisamment strict*. Je pense que c'est là ZE faiblesse de coffeescript. Le compilateur laisse passer des ambiguïtés et les messages d'erreurs sont parfois... satellisants. En fait, en resserrant un peu la grammaire et améliorant les retours du compilo, ça serait le top (mais ça foutrait la pagaille dans les programmes déjà existants :mouarf:).
Alors on peut peut-être espérer une évolution du compilo? Ou alors Coffeelint** comble-t-il les manques?
Mais déjà, pratiquant beaucoup Python, je me retrouve mieux dans (un certain dialecte strict de :roll:) Coffeescript que dans Javascript. Bref... question d'horizons sans doute.
Daniel
* et qu'on ne tient pas aux accolades/points-virgules/deux-points/... comme à un talisman ;)
** je ne connaissais pas, je devrais prendre l'habitude de chercher "{nom_du_langage}lint"