------ 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--