Just ask folks how this term differentiates from Compile and you'll get wildly varying answers and definitions.
Just ask folks how this term differentiates from Compile and you'll get wildly varying answers and definitions.
Using the term for anything where the source is JVM bytecode is plain wrong, and it's also dubious for anything targeting WebAssembly (though if the target is specifically .wat/.wast, it may perhaps be arguably defensible.)
so i guess one might use "transpile" wrt bytecode in the spirit of that. but i guess asm source files are still "human readable", where bytecode generally isn't considered as such.
[0] P47, "TRANS": http://www.patersontech.com/dos/Docs/86_Dos_usr_03.pdf
[1] http://www.s100computers.com/Software%20Folder/Assembler%20C...
I don't see why the existence of a grey area should be enough to question the utility of the term.
If compile/decompile are used for a transformations along one axis, transpile is used for transformations that are predominantly orthogonal to that axis.
Given the large inconsistency and incompatibility between all these definitions and the existence of a well-accepted term that comprises all of these definitions, is it a mystery why people question the utility of the term? After all, what use is a nuanced term if it can't reliably convey that additional information.
I would recommend the general term "A/B compiler" where A and B are arbitrary regular languages. That way it would be pretty clear what a Pascal/C compiler is, or a JVM/Webasm compiler, for instance. Or a x86/C compiler which would also make the word "decompiler" obsolete.