Search code examples
vm-implementation

Virtual machines of the future


I'm looking for some resources regarding the virtual machines of the future (Like jvm or clr)

What are they going to look like? Will they provide a concurrent runtime, more powerful metaprogramming models?

I'm looking for articles, research projects, or pure speculation, anything that is going to be an interesting read.

So if you have any links or opinions please do share.


Solution

  • The Parrot is an upcoming virtual machine that will be used for Perl 6 along with other dynamic languages such as Ruby, PHP, Python, to name a few.

    Parrot is a little different from the Java Virtual Machine and Common Language Runtime as it is a register-based VM rather than stack-based like the JVM and CLR. Here's a bit from the Wikipedia entry on the Parrot virtual machine:

    Virtual machines such as the Java virtual machine and the current Perl 5 virtual machine are also stack based. Parrot developers see it as an advantage of the Parrot machine that it has registers, and therefore more closely resembles an actual hardware design, allowing the vast literature on compiler optimization to be used generating code for the Parrot virtual machine so that it will run bytecode at speeds closer to machine code.

    Although it may not be exactly what you're looking for, there was news of an interesting use of the Low Level Virtual Machine (LLVM). Adobe has a project called Alchemy, a C/C++ to Flash bytecode compiler, which utilizes the LLVM's optimization facilities to produce well-optimized Flash bytecode, according to this Slashdot article.

    I think we're going to see more interesting uses for virtual machines, and increased adoption with better optimization and on-the-fly compilation techniques, along with the increased amount of computing power which is becoming available with newer, faster processors.