Re: p-code compilers

Robert Howard <rock@twr.com>
31 Jan 1999 01:08:55 -0500

          From comp.compilers

Related articles
[2 earlier articles]
Re: p-code compilers genew@vip.net (1999-01-23)
Re: p-code compilers derekross@fisheracre.freeserve.co.uk (Derek Ross) (1999-01-23)
Re: p-code compilers eodell@pobox.com (1999-01-25)
Re: p-code compilers toon@moene.indiv.nluug.nl (Toon Moene) (1999-01-25)
Re: p-code compilers aaron@farol.chem.purdue.edu (Aaron F. Stanton) (1999-01-27)
Re: p-code compilers wlohmann@informatik.uni-rostock.de (1999-01-27)
Re: p-code compilers rock@twr.com (Robert Howard) (1999-01-31)
Re: p-code compilers sda@rt66.com (1999-01-31)
| List of all articles for this month |

From: Robert Howard <rock@twr.com>
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 rock@twr.com
CTO, Tower Technology Corporation http://www.twr.com
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.