top | item 4371032

"Third Hand" Languages

8 points| jonbeebe | 13 years ago |jonbeebe.net

10 comments

order
[+] octopine|13 years ago|reply
Is Haskell then a "Third Hand" language because it is compiled into C?
[+] ek|13 years ago|reply
It seems like he's using the term "third-hand" to refer to languages that merely undergo syntactic expansion in the process of translation to their target language. In the programming languages community, we often refer to this as a "desguaring" transformation, since when CoffeeScript is "compiled" to JS, the syntactic sugar is removed and replaced with JS that exactly replicates the semantics.

This is in contrast to Haskell, which undergoes a fair amount of static analysis and optimization before code generation ever happens. Also, GHC doesn't only output C, and doesn't even translate Haskell directly to C. Instead, Haskell is transformed into C-- code, and GHC can be made to target C to be compiled by GCC, as you say, or the LLVM intermediate representation, or, most commonly, machine code directly.

[+] lucian303|13 years ago|reply
"Third Hand" languages ... for young teenagers who have nothing better to do and can't hack the real thing or think they are developing something useful. Been there, done that.
[+] ojr|13 years ago|reply
Javascript was made to be a target language ... Brendan Eich is a supporter of the BYOJ ( Build Your Own Javascript) movement
[+] kamkha|13 years ago|reply
If you think CoffeeScript is solely for "young teenagers who have nothing better to do," your arrogance is obviously clouding your vision.
[+] jonbeebe|13 years ago|reply
It's a really great day in age to be a teenager then. :-)