I'm making this post to continue the discution about the strange
definition of
compiler in the game dictionary.
Please don't explain me for the 100th time how a compiler works with all the stages involved in the process of creating a binary file.
I know them:
source file(.c, .pas...) --compiler--> assembly language (.s, .asm)
assembly(.s, .asm) --assembler--> object file(.o, .obj)
object file(.o, .obj) --linker--> executable file(.exe, ...)
What bother me are some terms used in the definition that makes me feel it is wrong but somehow everybody say it is right and they explain me what I alredy know with words that I would have used.
Here is the definition:
quote:Game Dictionary
Compiler
A program that translates a computer language into object code which can then be assembled into machine language . This is necessary for programming in all high level languages (like C/C++ and Pascal) which are not interpreted
(like BASIC).
What I do think when I hear object
code is about object
files (.obj).
Then the definition say that the
object code can be assembled into machine language. It makes no sense since an .obj alredy come from the assembler.
What I would have expected is that we link the .OBJs.
Someone sugested that assemble is used in the sense of "put together", another word for link. It is unlikely since the definition say: "assembled
into machine language".
I'm completly lost. Or. Maybe, "object
code " have diferent meaning that the term "object
file " (.obj). Look at this other definition.
quote:American Heritage Dictionary
object code
n.
The code produced by a compiler from the source code, usually in the form of machine language that a computer can execute directly, or sometimes in assembly language.
Sometimes in assembly language!? Maybe with some archaic compilers, what I call "object
files "(.obj) was stored in textual assembly code? Or more likely, the intermediate "assembly (.asm) file" generated by most moderm compilers is also object
code " but not "oject
file "?
If the latter is true, the first definition "
object code which can then be
assembled " could make some sense.
But I don't know anything for sure (except of course that we can't assemble an obj), so please help.
Is this definition correct?
[edited by - __ALex_J_ on May 3, 2002 7:27:57 PM]