|[TDR] Token-Based Compilers firstname.lastname@example.org (1993-01-20)|
|Re: [TDR] Token-Based Compilers email@example.com (1993-01-23)|
|Re: [TDR] Token-Based Compilers firstname.lastname@example.org (1993-01-25)|
|P-Code (was Re: [TDR] Token-Based Compilers) email@example.com (1993-01-26)|
|Re: [TDR] Token-Based Compilers firstname.lastname@example.org.EDU.AU (1993-02-01)|
|From:||email@example.com (Paul Robinson)|
|Organization:||Tansin A. Darcos & Company, Silver Spring, MD USA|
|Date:||Wed, 20 Jan 1993 09:39:06 GMT|
|Keywords:||Pascal, interpreter, code, comment|
I'd like to ask what people think of the idea of Compilers that generate
ficticious machine code, i.e. tokens for an optimized machine which is
then interpreted on the target.
One point to this is that a compiler, if it is self-compilable, can be
ported to a new installation in a much easier fashion than trying to
create a bootstrap compiler to create the compiler that creates the
compiler that creates...
If you think that creation of P-Code is a valid concept for some
implementations, i.e. for porting applications, then what is the minimum
class of instructions needed in the "pseudo code"? There should be some
for file I/O and a few others. Does anyone know of anyone having written
something on minimum support features for any professional language?
This may be a more effective means of obtaining certain classes of
compilers on some implementations over waiting for someone to do a full
port along with writing the run-time system in assembler (or C or any
language giving enough features to startup the user's program.)
While it may not necessarily be efficient, sometimes efficiency is
unimportant. Who cares if a recompile of a compiler to make machine code
takes four hours when interpreted, but only 2 minutes when compiled, if
it's only going to be done once?
[There have been lots of such systems, particularly for database and
application systems. They can be slow but are very portable. For the
database parts, they're not even that slow since the database operations
are single ops and can run at full speed. -John]
Return to the
Search the comp.compilers archives again.