Historical Background of Interpreted/compiled
In the early days of computing, language design was heavily influenced by the decision to use compiling or interpreting as a mode of execution. For example, some compiled languages require that programs must explicitly state the data-type of a variable at the time it is declared or first used while some interpreted languages take advantage of the dynamic aspects of interpreting to make such declarations unnecessary. For example, Smalltalk (1980), which was designed to be interpreted at run-time, allows generic objects to dynamically interact with each other.
Initially, interpreted languages were compiled line-by-line; that is, each line was compiled as it was about to be executed, and if a loop or subroutine caused certain lines to be executed multiple times, they would be recompiled every time. This has become much less common. Most so-called interpreted languages use an intermediate representation, which combines compiling and interpreting. In this case, a compiler may output some form of bytecode or threaded code, which is then executed by a bytecode interpreter.
Examples include:
- Java
- Python
- Ruby (similarly, it uses an abstract syntax tree as intermediate representation)
The intermediate representation can be compiled once and for all (as in Java), each time before execution (as in Perl or Ruby), or each time a change in the source is detected before execution (as in Python).
Read more about this topic: Interpreted Language
Famous quotes containing the words historical, background and/or interpreted:
“We need a type of theatre which not only releases the feelings, insights and impulses possible within the particular historical field of human relations in which the action takes place, but employs and encourages those thoughts and feelings which help transform the field itself.”
—Bertolt Brecht (18981956)
“Pilate with his question What is truth? is gladly trotted out these days as an advocate of Christ, so as to arouse the suspicion that everything known and knowable is an illusion and to erect the cross upon that gruesome background of the impossibility of knowledge.”
—Friedrich Nietzsche (18441900)
“A separation situation is different for adults than it is for children. When we were very young children, a physical separation was interpreted as a violation of our inalienable rights....As we grew older, the withdrawal of love, whether that meant being misunderstood, mislabeled or slighted, became the separation situation we responded to.”
—Roger Gould (20th century)