Related articles |
---|
Compiler types? cwerner@gmx.de (Constantin Werner) (2000-09-11) |
Re: Compiler types? luminous-is@home.com (AndrewJ) (2000-09-15) |
Re: Compiler types? genew@shuswap.net (2000-09-17) |
Re: Compiler types? mac@ac.valley.net (2000-09-17) |
From: | genew@shuswap.net (Gene Wirchenko) |
Newsgroups: | comp.compilers |
Date: | 17 Sep 2000 22:58:58 -0400 |
Organization: | Okanagan Internet Junction |
References: | 00-09-083 00-09-101 |
Keywords: | practice |
AndrewJ <luminous-is@home.com> wrote:
>On 11 Sep 2000 02:16:48 -0400, "Constantin Werner" <cwerner@gmx.de> wrote:
>
>>Hi all,
>>
>>the types of compilers are classified in:
>>- one-pass compilers
>>- multi-pass compilers
>>- load and go compiler
>>- optimizing compilers
>>- ...and some other
>>
>>can anybody tell me whats the difference between all mentioned 4 compiler
>>types? i was not able to find any explanation in science books :-(
>>thanks
>
>While I'm no expert of compiler methods and such, even I'm able to
>realize what most of these describe.
>
>One pass compiler: a compiler that translates the source unit in a
>single pass
. . .possibly with a patch-up phase, but the source code is
looked at only once.
>Multi pass compiler: a compiler that translates the source unit in two
>or more passes
>
>Load and go compiler: not sure, never seen this terminology, unless
>you're talking about an interpreter
>
>Optimizing compiler: a compiler that optimizes the translated code,
>usually during the code generation phase (?)... it makes the code run
>better on the particular architecture it is compiling for (ie using
>shifts instead of multiplies, loop unrolling etc...)
>--
>AndrewJ
>[Load and go compiles directly into memory and immediately runs the code.
>They used to be quite popular, not any more. -John]
To add to our Esteemed Moderator's point, they're good for where
the code will be run only once or a few times. Typically, they don't
bother with [|much] optimization. In the mainframe days, on campus,
they were often used for student jobs.
There is also Just-In-Time compilation. The code is compiled as
necessary and runs in an interpreted framework. Code that is not
executed doesn't get compiled. This works for languages where the
meaning of a statement is fairly easy to tell from the statement only.
e.g. BASIC but not C.
Sincerely,
Gene Wirchenko
Return to the
comp.compilers page.
Search the
comp.compilers archives again.