View Single Post
Posts: 12 | Thanked: 5 times | Joined on Apr 2010
#13
Originally Posted by zimon View Post
It is a modern (compiler science) way to have interpreted code in applications instead of fully compiled one.
Theoretically (and I believe in practise also in the future) interpreted code can be faster, more power efficient and less buggy than fully compiled one. There needs to be only one VM in RSS memory and all applications can use its codebase.
Device drivers and kernel is a different thing, but for applications it makes sense.
Speed, power efficiency and bugs have nothing to do with the way Java was designed. The reason why Java code is not fully compiled and uses a VM instead to run the bytecode is portability alone, or in other words: write the code once and use it everywhere no matter the hardware architecture that is under the hood (which is what the VM is for).

Cheers.