DEV Community

Discussion on: What Is An "Interpreted" Language?

Collapse
 
jeikabu profile image
jeikabu

I'm playing devil's advocate.

It's not all that exotic, ARM has Jazelle.

Similarly, many CPUs have complex instructions that are decoded at execution time into smaller, native instructions (i.e "interpreted").

Since the beginning Java has had javac- the "Java compiler". Surely having a compiler makes you compiled.

But mostly it doesn't really matter. It's an imprecise term that can be interpreted as pedantically as you like (pun intended).

Thread Thread
 
codemouse92 profile image
Jason C. McDonald • Edited

Since the beginning Java has had javac- the "Java compiler". Surely having a compiler makes you compiled.

Remember the definition, which I didn't make up.

Compiler — converts code to either source code in another language, or to bytecode. (Contrast with assembler.)

You can compile to anything, but if the product of the compilation is not actually executable in and of itself, but requires an interpreter to execute, isn't that still an interpreted language?

After all, Python compiles to Python Bytecode (*.pyc), but that still can only be executed through the Python interpreter. According to the language's own documentation, Python is an interpreted language, and not a compiled language.