Re: p-code compilers

Robert Howard <>
31 Jan 1999 01:08:55 -0500

          From comp.compilers

Related articles
[2 earlier articles]
Re: p-code compilers (1999-01-23)
Re: p-code compilers (Derek Ross) (1999-01-23)
Re: p-code compilers (1999-01-25)
Re: p-code compilers (Toon Moene) (1999-01-25)
Re: p-code compilers (Aaron F. Stanton) (1999-01-27)
Re: p-code compilers (1999-01-27)
Re: p-code compilers (Robert Howard) (1999-01-31)
Re: p-code compilers (1999-01-31)
| List of all articles for this month |

From: Robert Howard <>
Newsgroups: comp.compilers
Date: 31 Jan 1999 01:08:55 -0500
Organization: Tower Technology Corporation
References: 99-01-078 99-01-102
Keywords: interpreter, translator

Aaron F. Stanton wrote:
> I'd like to throw an additional wrench into the fray if I could:
> It seems to be a sort of consensus that translators go from a high
> level language to another, while a compiler goes from a high level
> language to a low level one. (This is oversimplifying, I know, but
> bear with me.) A low level language seems to be one that is more-or-
> less directly executable by a processor, or is interpreted by a
> virtual machine.

But there are exceptions to this rule as well. A counter example is
our TowerJ compiler which takes Java bytecode as input and emits C
code that dovetails with our own Java runtime. I have no doubt that
this is a full compiler as it performs full call tree and flow control
analysis on a global or partitioned basis.

Bytecode is sufficiently low level that we also perform "structual
analysis" to recover loop and branching info that is used by the
back-end compiler for optimization purposes. (This structural
analysis, which is can be though of as a mild decompilation, has a
huge impact on runtime performance.)

My preference is to reserve the word "translator" for a straight
forward mapping process that is or could be performed in a single pass
and not worry to much about the input or output target forms.

Robert "Rock" Howard
CTO, Tower Technology Corporation
1501 W. Koenig Lane, Austin, TX 78756 Tel (512) 452-9455
Server-Side Java(tm) Performance Experts Fax (512) 452-1721

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.