This article is within the scope of WikiProject Software, a collaborative effort to improve the coverage of software on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
This article is within the scope of WikiProject Computer science, a collaborative effort to improve the coverage of Computer science related articles on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
I changed some occurances of IL generation as a compiler phase to "intermediate representation", since that is more correct. The intermediate representation from which code is generated doesn't have to be a language, even in the broadest sense of the word. And more important, it often isn't. I kept IL as an example of an IR though, and also mentioned compile graphs and trees.
In the introduction section, the phrase "Compilers also exist which translate from one high level language to another (cross compilers), or[...]" is highly inaccurate. "Cross compiler" refers to something very different, as described in the immediately following section. Having worked in the industry for many years, I've heard lots of names for a high-level-to-high-level translator, but cross compiler was never one of them. I've deleted the parenthetical comment.
In section Front end (item 1, line reconstruction), this sentence seems odd to me (emphasis added): « Atlas Autocode (…) are examples of stropped languages which compilers would have a Line Reconstruction phase. » Shouldn’t it be something like “whose compilers would (…)” or “for which compilers would (…)”?
With apologies if it seems obvious one way or the other!
— Wlgrin 22:20, 8 January 2012 (UTC)
What bytecode and JIT has to do with Interpretation vs. Compilation?
Article says: "Modern trends toward just-in-time compilation and bytecode interpretation at times blur the traditional categorizations of compilers and interpreters." JIT compiles bytecode into machine language. Bytecode was not intended for compilation (Sun have designed the bytecode as a machine language in mind). It was not intended for translation at all. It is result of compilation. Whether you interpret, compile or directly execute the bytecode, it does not matter at all. The only thing that we were always sure about was the fact that bytecode is produced from java source as result of compilation. For this reason also, the status of Java as compiled language is not debatable. So, which blurring are you talking about? --Javalenok (talk) 20:42, 29 January 2012 (UTC)