Interpreted Programming Language
An Interpreted Programming Language is a Programming Language that does not require Program Compilation.
- Example(s):
- Counter-Example(s):
- See: Interpreter Software System, Dynamic Programming Language.
References
2013
- http://en.wikipedia.org/wiki/Interpreted_language
- An interpreted language is a programming language that avoids explicit program compilation. The interpreter executes the program source code directly, statement by statement, as a processor or scripting engine does. This can be contrasted with compiled language programs, which the user must explicitly translate into a lower-level machine language executable.
Interpreted languages can also be contrasted with machine languages. Functionally, both execution and interpretation mean the same thing — fetching the next instruction/statement from the program and executing it. Although interpreted bytecode is additionally identical to machine code in form and has an assembler representation, the term "interpreted" is practically reserved for "software processed" languages (by virtual machine or emulator) on top of the native (i.e. hardware) processor.
Theoretically, any language may be compiled or interpreted, emulated or executed natively, so this designation is applied solely based on common implementation practice, rather than representing an essential property of a language. Akin to processor microcoding, many interpreters internally rely on just-in-time compilation.
Avoiding compilation, interpreted programs are easier to evolve during both development and execution (where they can morph themselves). On the other hand, since compilation implies translation into more machine-friendly format, interpreted programs run slower and less efficiently (i.e. waste considerably more energy). This is especially true for higher-level scripting languages, whose statements are complex to analyze compared to machine instruction.
Many languages have been implemented using both compilers and interpreters, including BASIC, C, Lisp, Pascal, and Python. Java and C# are compiled into bytecode, the virtual machine-friendly interpreted language. Lisp implementations can freely mix interpreted and compiled code.
- An interpreted language is a programming language that avoids explicit program compilation. The interpreter executes the program source code directly, statement by statement, as a processor or scripting engine does. This can be contrasted with compiled language programs, which the user must explicitly translate into a lower-level machine language executable.