3 ms·
> - Languages that are compiled to machine instructions, vs compiled to VM bytecode, vs interpreted? > - What do these things mean? Languages are not compiled
by tacostakohashi 5y ago
> - Languages that are compiled to machine instructions, vs compiled to VM bytecode, vs interpreted?
> - What do these things mean?
Languages are not compiled or interpreted, rather they may have compiler implementations, interpreter implementations, or both!
If the code is ever going to be executed, it needs to be converted to machine instructions at some point.
Consider Java - JVMs started out being like interpreters, but ended up more like compilers once JIT implementations became available, all without changing the language or the bytecode. Additionally, many non-java languages target those same JVMs.
- da39a3ee 5y ago> If the code is ever going to be executed, it needs to be converted to machine instructions at some point. That’s not really true — take Python. The CPython interpreter has been compiled as native machine instructions. But the user’s Python code is turned into byte code and executed by the CPython interpreter; the user’s Python code is never converted to machine instructions. > Languages are not compiled or interpreted, rather they may have compiler implementations, interpreter implementations, or both! That’s true, thanks.