Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Presentation: Evolving the Java Platform

Presentation: Evolving the Java Platform


In this presentation recorded at QCon London 2008, Ola Bini talks about the current status of the JVM regarding languages running on top of it and the need to evolve in order to support dynamic languages.

Watch: Evolving the Java Platform (43 min.)

Bini presents the benefits of using a JVM, now that CPU cycles are cheap enough to afford GC, JIT, RTT: garbage collection, online code loading, reflection, JIT, tools, libraries, maturity, and others, concluding that the JVM is the best virtual machine in production.

After mentioning about 50 languages built on JVM (here is a research site that compiled a list of about 200 such languages), he talks about the needs high level languages have, which the JVM partially supports:

• Very late binding (runtime linking, typing, code gen)
• Automatic storage management (GC)
• Environmental queries (reflection, stack walking)
• Exotic primitives (tailcalls, bignums, call/cc)
• Code management integrated with execution
• Robust handling of incorrect inputs
• Helpful runtime support libraries (regexps, math, ...)
• A compiler (JIT and/or AOT) that understands it all


After that, Bini talks about what’s really missing from the JVM:

• Dynamic invocation
• As always, higher performance
• Lightweight method objects
• Lightweight bytecode loading
• Continuations and stack introspection
• Tails calls and tail recursion
• Tuples and value-oriented types
• Immediate wrapper types
• Symbolic freedom (non-Java names)


Bini continues his presentation explaining what actually each feature is and evaluating the difficulties to be encountered if they are implemented in the JVM mentioning that they are currently implemented in the DaVinci virtual machine, a multi-language research JVM targeted especially at dynamic languages.

During the rest of the presentation Bini talks about JRuby, the progress done so far, JSR 292, and answers questions.

Rate this Article


Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • too slow

    by wang metis,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    too slow, I'm in china!!!

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p