views:

774

answers:

6

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.

+1  A: 

There's some academic work on new security ideas for VMs: http://csis.gmu.edu/VMSec/

Uri
+7  A: 

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.

coobird
+1  A: 

Not knowing what would attract you the most (compilation, garbage collection, security, etc...), my advice would be to do some "depth first search" in webpages/papers/conferences/blog posts/etc related to people working on different virtual machines for java, clr, python, javascript etc.

First starters that come to my mind are Micheal Hind (behind IBM VM for java - JikesRVM), Ben Zorn (Mircosoft), Pypy's blog... But just from those webpages you should find lots of links I think...

Piotr Lesnicki
+1  A: 

One thing we're almost certain to see in VMs of the future is that they will be built from the ground up to handle multiple programming languages.

Bruce Alderman
+2  A: 

http://openjdk.java.net/projects/mlvm/

HTH

plan9assembler
+2  A: 

Like Parrot, the Lua VM is register-based; here's a link to a PDF by the language's creator:

http://www.inf.puc-rio.br/~roberto/talks/lua-ll3.pdf

George Jempty