Differences between version 4 and previous revision of InterpretedLanguages.
Other diffs: Previous Major Revision, Previous Author, or view the Annotated Edit History
Newer page: | version 4 | Last edited on Wednesday, November 19, 2003 3:19:52 pm | by AristotlePagaltzis | Revert |
Older page: | version 3 | Last edited on Sunday, August 24, 2003 8:31:32 am | by AristotlePagaltzis | Revert |
@@ -1,11 +1 @@
-InterpretedLanguages present an interface to the user such that it appears that the computer is executing the SourceCode. With the exception of MachineLanguage, this can't actually be done, so instead it's done with smoke and mirrors. The two common approaches are incremental compilation (either to an intermediate form or to MachineLanguage) and writing a VirtualMachine which translates the SourceCode into MachineLanguage an instruction at a time as it is executed.
-
-[BASIC], [Scheme] and [Haskell] are examples of InterpretedLanguages.
-
-The line is blurry at best, though.
-
-By the above definition, [Java] is also an interpreted language, yet because it actually saves its intermediate VirtualMachine MachineCode to class files, people regard it as a compiled language. [Perl] on the other hand is regarded as interpreted, even though it compiles the source to an optree - simply because it does not save this optree to disk. Even so there do exist environments (such as [Apache] __mod_perl__) which cache the compiled optree for reuse.
-
-On the other hand, a lot of modern [CPU]s do not implement all of their MachineLanguage in hardware - rather, they contain MicroCode for some of their more complex instructions, which is interpreted and executed as a series of "real" operations.
-
-For all intents and purposes, attempting to make a clear distinction between compiled and InterpretedLanguages is impossible.
+DeleteMe