27 ms·
Am I the only one to completely disagree with the author? It's important not to mix everything. CoffeeScript is a language. There just happen to have an implem
by ms123 15y ago
Am I the only one to completely disagree with the author?
It's important not to mix everything. CoffeeScript is a language. There just happen to have an implementation for it.
This invalidates the "debug" workflow problem. Let me restate the CS debugging workflow:
Start discovering the problem in the code I wrote.
Fix it in the CS
Problem fixed, move on, otherwise start over.
A computer language is by definition a mean to express unambiguous statements. So does CS. So does the other languages. The resulting program will do exactly what your code asked to.
Do we check compiled code when we code in C? Do we look at the Bytecode when we write Java?
The fact that CS compiles to JS is an "implementation detail". That's the CS compiler's job. If you don't trust it, don't use it.
- skeptical 15y agoIt's the only implementation almost everybody knows of. I've never heard of any other, don't know if there is other. In defense of the author, he does explain why it will most likely always be a language that will be implemented in a compile-to-js fashion. Do we check compiled code when we code in C? Do we look at the Bytecode when we write Java? This is exactly what he is complaining about. Also, he does makes a few points about CS syntax, that can't be the implementation's fault.
- dextorious 15y agoYou take the "useless pedantic comment of the year" award. Yeah, "it's a language". In bloody THEORY. In reality it's also ONE, and only ONE, specific implementation widely used. In reality the language IS the compiler. And that implementation compiles to JS, not as an implementation detail but as it's sole reason to exist.
- ms123 15y agoThanks for the award. Yup, there's only one implementation. But doesn't in change? What will the compiled code be like in 3 years from now? The compiled code's prupose is to be optimised, not consistent. This is my point. By restricting yourself to think Javascript when you're coding in CoffeeScript, you're producing a code that sucks in JS and in CS.