Related articles |
---|
Is Assembler Language essential in compiler construction? marco.m.petersen@gmail.com (2009-02-09) |
Re: Is Assembler Language essential in compiler construction? haberg_20080406@math.su.se (Hans Aberg) (2009-02-11) |
Re: Is Assembler Language essential in compiler construction? tony@my.net (Tony) (2009-02-14) |
Re: What makes a compiler, was Is Assembler lkrupp@pssw.com (Louis Krupp) (2009-02-14) |
Re: What makes a compiler, was Is Assembler haberg_20080406@math.su.se (Hans Aberg) (2009-02-15) |
Re: What makes a compiler, was Is Assembler cr88192@hotmail.com (cr88192) (2009-02-16) |
Re: What makes a compiler, was Is Assembler tony@my.net (Tony) (2009-02-15) |
Re: What makes a compiler, was Is Assembler tony@my.net (Tony) (2009-02-15) |
Re: What makes a compiler, was Is Assembler cr88192@hotmail.com (cr88192) (2009-02-19) |
Re: What makes a compiler, was Is Assembler walter@bytecraft.com (Walter Banks) (2009-02-19) |
[1 later articles] |
From: | Louis Krupp <lkrupp@pssw.com> |
Newsgroups: | comp.compilers |
Date: | Sat, 14 Feb 2009 15:28:52 -0700 |
Organization: | Compilers Central |
References: | 09-02-021 09-02-035 09-02-054 |
Keywords: | assembler, design |
Posted-Date: | 15 Feb 2009 18:32:50 EST |
Tony wrote:
> "Hans Aberg" <haberg_20080406@math.su.se> wrote in message
>> marco.m.petersen@gmail.com wrote:
>>> I mean, if you wrote a program that converts code from BASIC to C++
>>> then calls another compiler to do the compilation process, wouldn't
>>> that be considered as a compiler?
>> Yes, formally a compiler just translates one computer language into
>> another. For example, an assembler translates into the machine code
>> language.
>
> I would say that is simply translation and not compilation because there is
> no intermediate representation. The IR (and the creation of it via
> lex/parse/semantic analysis before code generation) is what I think
> distinguishes compilers from interpreters and translators.
I wouldn't say that. I can't speak to modern Unisys MCP-Series
software, but most Burroughs compilers used a single pass that read
source code and emitted machine code. There was no intermediate
representation.
An intermediate representation might enable translation from more source
languages to a wider range of target architectures and with better
optimization, but from the definitions I've seen, a compiler is a
program that translates source code to machine code. The implementation
details are interesting but are not part of the definition.
Louis
Return to the
comp.compilers page.
Search the
comp.compilers archives again.