Re: What is byte-code ?

torbenm@diku.dk (=?iso-8859-1?q?Torben_=C6gidius_Mogensen?=)
8 Mar 2005 09:23:08 -0500

          From comp.compilers

Related articles
[2 earlier articles]
Re: What is byte-code ? anton@mips.complang.tuwien.ac.at (2005-03-05)
Re: What is byte-code ? lfinsto1@gwdg.de (Laurence Finston) (2005-03-05)
Re: What is byte-code ? nmm1@cus.cam.ac.uk (2005-03-08)
Re: What is byte-code ? joe@burgershack.com (Randy) (2005-03-08)
Re: What is byte-code ? Brian.Inglis@SystematicSW.ab.ca (Brian Inglis) (2005-03-08)
Re: What is byte-code ? torbenm@diku.dk (2005-03-08)
Re: What is byte-code ? torbenm@diku.dk (2005-03-08)
Re: What is byte-code ? cdc@maxnet.co.nz (Carl Cerecke) (2005-03-08)
Re: What is byte-code ? torbenm@diku.dk (2005-03-15)
Re: What is byte-code ? kers@hpl.hp.com (Chris Dollin) (2005-03-15)
Re: What is byte-code ? xous@xouslab.com (Xous - Jose R. Negreira) (2005-03-18)
Re: What is byte-code ? nathan.moore@sdc.cox.net (Nathan Moore) (2005-03-24)
Re: What is byte-code ? anton@mips.complang.tuwien.ac.at (2005-03-31)
[10 later articles]
| List of all articles for this month |
From: torbenm@diku.dk (=?iso-8859-1?q?Torben_=C6gidius_Mogensen?=)
Newsgroups: comp.compilers
Date: 8 Mar 2005 09:23:08 -0500
Organization: Department of Computer Science, University of Copenhagen
References: 05-03-015 05-03-037
Keywords: interpreter
Posted-Date: 08 Mar 2005 09:23:08 EST

Randy <joe@burgershack.com> writes:


> 5) Final translation of bytecode into executable can be very fast and
> can often occur concurrently with execution. In addition, most
> bytecode programs are expected to be web-oriented, thus having a large
> GUI component, thus requiring less in terms of execution speed (making
> the added overhead of the VM less onerous).


Bytecode predates GUI's and the web by several decades. Additionally,
bytecodes have traditionally been interpreted rather than translated,
it is only in the last couple of decades that bytecodes designed for
compilation or JIT's have emerged. And, arguably, JVM bytecode was
designed for interpretation and only later JIT'ed or compiled when
Java was used in contexts for which it was not originally designed.


One reason for using byte-formatted code for interpretation is that
decoding is a table lookup: You use the byte to index into a jump
table that points to code that executes the bytecode instruction,
possibly taking parameters from the subsequent bytes, updating the PC
as required.


Many bytecodes are interpreted even these days, as this makes it
easier to port the language to other systems. Such interpreted
langauges are often used for non-GUI tasks that are not time critical
or where the problems are i/o-bound, so raw execution speed is of
little importance. Perl and Python are good examples of languages
that traditionally use interpreted bytecodes.


                Torben


Post a followup to this message

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