Compilers for ultra-compact byte code?

phr@netcom.com (Paul Rubin)
9 Feb 1996 17:13:38 -0500

          From comp.compilers

Related articles
Compilers for ultra-compact byte code? phr@netcom.com (1996-02-09)
Re: Compilers for ultra-compact byte code? koopman@cs.cmu.edu (1996-02-13)
Re: Compilers for ultra-compact byte code? cliffc@ami.sps.mot.com (1996-02-13)
Re: Compilers for ultra-compact byte code? taj@vanbc.wimsey.com (1996-02-16)
Re: Compilers for ultra-compact byte code? maatwerk@euronet.nl (1996-02-16)
Re: Compilers for ultra-compact byte code? hbaker@netcom.com (1996-02-17)
Re: Compilers for ultra-compact byte code? cdg@nullstone.com (1996-02-17)
[1 later articles]
| List of all articles for this month |
From: phr@netcom.com (Paul Rubin)
Newsgroups: comp.compilers
Date: 9 Feb 1996 17:13:38 -0500
Organization: NETCOM On-line Communication Services (408 261-4700 guest)
Keywords: interpreter, question, comment

I'm wondering what languages and compilers are available for
implementing programs with the idea of using an absolute minimum
amount of output code space. The idea is to compile to some byte-code
format which would then be interpreted at runtime. My intended target
machines are 8-bit microcontrollers with very limited program and data
memory. To my slight surprise (maybe not to anyone else's), I've
found that compiled FORTH and similar formats use more space than
native machine code would on these machines. This is partly because
the microcontrollers have many single byte instructions (vs. two-byte
FORTH words), partly because having several registers available gives
compact code than when everything has to go through the stack.


The main purpose of wanting such a compiler is to be able to run the
"application" on several different microcontrollers by just
reimplementing the bytecode interpreter on each one, rather than
needing to rewrite the whole "application". But it would be nice if
the resulting object code were smaller than native machine code. I'm
not too worried about running speed, since I can code critical loops
in machine language separately on each target processor.


Any suggestions are welcome.
[The byte codes that the MS C compiler can produce are worth looking at.
-John]
--


Post a followup to this message

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