|
Authored by: Anonymous on Wednesday, May 09 2012 @ 11:34 AM EDT |
Because almost all processors and systems keep code and data separate instead of
co-mingling them (you can do it either way).
So the "hello world" gets loaded in as part of the code, but then has
to be moved into the data space allocated to be used in the current setup (most
languages do it this way).
These are all things done at startup. That silly speed test stuff was measuring
startup time (for the whole system of the code loading and VM intitialization)
and has exactly zero to do with how fast a program runs, once begun.
All trivially eliminate-able, too. Ask anyone who knows about mod_perl in an
Apache server to solve some of the same problems - just preload the VM and
initialize once for the entire system run. This eliminates the need to spawn a
new process and init the perl VM for every hit on a perl CGI program.[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Wednesday, May 09 2012 @ 12:03 PM EDT |
"It is not clear that the 'Hello World' program requires initialisation of
arrays."
static public void main(String[] args) {
..
}
args is never null, at best is is only ever 0 length (i.e no arguments were
passed on the command line)
So simply starting a program requires the initialization of an Array, even if
nothing is ever stored in it.
[] is programmer short cut for Array (loosely)
[ Reply to This | Parent | # ]
|
|
Authored by: Anonymous on Wednesday, May 09 2012 @ 01:52 PM EDT |
A string is represented internally as an array of bytes. You need code to put
that data into that array, even if it never changes.[ Reply to This | Parent | # ]
|
|
|
|
|