top | item 21384478

(no title)

antisemiotic | 6 years ago

Fine, but by that logic, gcc with -O0 is a transpiler, and becomes a compiler again with -O2. Similarly, TS transpiles to JS, but, say, ClojureScript compiles to JS. And if a compiler is built with something like Nanopass, it's a sequence of transpilers that somehow become a compiler along the way.

discuss

order

chrisseaton|6 years ago

No I don’t agree. A compiler pass is not a compiler. An non-optimising C to assembly compiler is not compiling to the same level of abstraction.

antisemiotic|6 years ago

>A compiler pass is not a compiler.

What is the difference, if there's one well-defined language before the pass and another after it?

>A non-optimising C to assembly compiler is not compiling to the same level of abstraction.

Neither are "transpilers", otherwise they'd be quite useless. Abstraction isn't a linear hirerarchy, in any case.