Presentation: Evolving the Java Platform

| by Abel Avram Follow 7 Followers on Mar 23, 2009. Estimated reading time: 1 minute | NOTICE: The next QCon is in New York Jun 25 - 29, 2018. Join us!

A note to our readers: You asked so we have developed a set of features that allow you to reduce the noise: you can get email and web notifications for topics you are interested in. Learn more about our new features.

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

Adoption Stage

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.

Tell us what you think

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

Email me replies to any of my messages in this thread

too slow by wang metis

too slow, I'm in china!!!

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

Email me replies to any of my messages in this thread

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

Email me replies to any of my messages in this thread

1 Discuss

Login to InfoQ to interact with what matters most to you.

Recover your password...


Follow your favorite topics and editors

Quick overview of most important highlights in the industry and on the site.


More signal, less noise

Build your own feed by choosing topics you want to read about and editors you want to hear from.


Stay up-to-date

Set up your notifications and don't miss out on content that matters to you