------art_42542_15415924.1154064737696
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

On 7/28/06, Chad Perrin <perrin / apotheon.com> wrote:
>
> Wait . . . what?  When some Java applet (for example) is sent over an
> HTTP connection to your computer to be executed cient-side, it is NOT
> just source code.  Similarly, when you install a Java application, it
> too is NOT simply copied onto the system in source code form.  It's
> compiled to bytecode (or whatever the hell you want to call it) and
> distributed thusly, for the JVM to run it.
>

Interpretation does not necessarily mean raw source code is being processed.
Even interpreters parse raw source into a form they can understand.
Interpretation in the Java VM comes in the form of bytecode interpretation,
so called because instead of the system CPU running native operations it's
running another process that steps through the bytecodes. This is what's
typically called "interpreted mode" in the JVM. However every VM since Java
1.3 has taken the next step at run time and compiled that bytecode into
native processor instructions, so that the interpreter is no longer involved
for those compiled pieces.

Bytecode is what's distributed, yes, but it's little more than pre-parsed
and lightly optimized source code. You can convert it back to source, if you
like. Your definition of "interpreted" is too narrow.

-- 
Contribute to RubySpec! @ www.headius.com/rubyspec
Charles Oliver Nutter @ headius.blogspot.com
Ruby User @ ruby.mn
JRuby Developer @ www.jruby.org
Application Architect @ www.ventera.com

------art_42542_15415924.1154064737696--