C++ to Rust would be even crazier.
(Transpile is a silly word. It's "compile". Compiling already trans-es.)
C++ to Rust would be even crazier.
(Transpile is a silly word. It's "compile". Compiling already trans-es.)
But maybe a set of guidelines about translatable C code plus a translator which is good enough for a variety of cases would make refactoring the resulting code such a manageable task that many projects could consider switching to Go directly.
You are technically correct in that compile already implicates a translation, but we usually use that term refering to a translation into a lower level language and not another language at the same level. You can say transpiler or source-to-source compiler for those cases and I think it's clearer and more accurate for the reader.
Rust is not lower-level than C++ and neither is Go lower-level than C.
No, he said a compiler translates from a higher-level language to a lower-level language:
"You are technically correct in that compile already implicates a translation, but we usually use that term [= compile] refering to a translation into a lower level language"
The way I understood what he wrote, he was making the same point as you. Presumably the people downvoting you had a similar interpretation of what he wrote.
However, arguably the term could make more sense there, if we ignore the earlier definition and instead assume "trans" is short for "transcendent", as in "climbing to a higher level".
If we then simplify that to "compile from one language to another of roughly equal or higher level", it becomes a useful word to indicate a specific subset of ways one can do compilation.
Of course, I'm completely pulling this out of my ass and I might piss off actual CompSci people who use very specific and strict definitions in their papers (kind of like how some get annoyed with the procedure/function mixup), so take this with a grain of salt.