Re: p-code compilers (Eric O'Dell)
25 Jan 1999 21:51:21 -0500

          From comp.compilers

Related articles
p-code compilers (Bogomil Alexondrov) (1999-01-22)
Re: p-code compilers (1999-01-23)
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: (Eric O'Dell)
Newsgroups: comp.compilers
Date: 25 Jan 1999 21:51:21 -0500
Organization: @Home Network
References: 99-01-078 99-01-085
Keywords: interpreter

On 23 Jan 1999 17:31:09 -0500, (Gene Wirchenko) wrote:

> This could get into a religious war. There's a similar one on
>alt.folklore.computers where someone is claiming that FORTH is an
>assembly language. His argument does have it point, but it seems to
>be stretching things a bit much for my comfort.

Actually, there are a few stack-based CPU designs whose opcodes are
patterned after a subset of Forth and whose accompanying development
tools are Forth compilers that treat high-level Forth as a sort of
macro assembly language. Outside of that narrow context, I would
hesitate to call Forth an assembly language as that term is commonly

As far as the difference between a compiler and a translator goes, I'd
have to say that the question can't be answered authoritatively in the
absence of generally accepted formal definitions. Connotatively (to
me, at least), I'd say that a translator translates program code from
one language to another, while a compiler specifically translates
program code into an executable form; whether that executable form is
byte-code intended for a virtual machine, or machine code intended for
a CPU is not especially relevant. That is, as Derek Ross argues,
"compiler" is a subset of the more general class "translator".

Now, without any real authority to back me up, I use the reference to
"program code" in the foregoing definitions to distinguish between
what we (or at least I) think of as translators and compilers, and
data file format conversion utilities. But even this line is blurry,
since many "data" files consist at least in part of executable code.
(Vector image formats and fonts spring to mind.)


Post a followup to this message

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