JVM Language Summit 2012
2012-07-30..2012-08-01
Santa Clara, United States
[JVM Language Summit 2012, JVM Language Summit 2015, JVM Language Summit 2017, JVM Language Summit 2018, JVM Language Summit 2019, JVM Language Summit 2023, JVM Language Summit 2024, JVM Language Summit 2025]
who it's for
compiler developers, runtime and VM engineers, language designers, JVM language implementers, tooling and IDE developers, database and storage architects
topics
invokedynamic-based lambda implementation; method handle introspection; ahead-of-time and JIT compilation with Graal; Truffle language implementation framework; hybrid array layouts and value types; multi-language JDI support; database-as-value architecture (Datomic); batch blocks for unified RPC and DB; Groovy call site optimization strategies; stream processing CEP code generation; multitenant JVM support
| title | author | length |
|---|---|---|
| Welcome to | Georges Saab | 11m |
Oracle states continued investment in the JVM with Java 7 GA plus multiple update releases (7u5/7u6) and a Mac/OpenJDK port shipped so releases land… | ||
| Arrays 2.0 - Opportunities and Challenges | John Rose | 51m |
Proposes concrete JVM support for library-defined hybrid arrays with fused head-and-tail layout that let headers and packed element tails share a single… | ||
| Assembling | Michael Wiedeking | 37m |
Proposes a multi-level assembler for the JVM that maps explicit linear memory segments and registers onto Java objects, with directives for labels, imports and… | ||
| Batches - Unifying RPC, WS and Database Access | William Cook | 38m |
Proposes a language-level batch block that the compiler partitions into a small server-side script and a client-side continuation, yielding one round-trip for… | ||
| Big Data, Small Computers | Cliff Click | 21m |
Builds a distributed key-value store that uses UDP for control and TCP for data transfers, caches keys locally, and integrates HDFS pointers to handle… | ||
| CLR Features That Might Benefit | Jeroen Frijters | 43m |
Ten years of running a JVM on the CLR yields concrete suggestions: add reified generics and value types so dictionaries and tuples avoid boxing; give arrays a… | ||
| Datomic | Rich Hickey | 51m |
Datomic is a JVM database that models the store as an database-as-value: an append‑only accretion of timestamped facts (an entity-attribute-value-transaction… | ||
| Dynamic Dispatch and Type Inference in Fortress | David Chase | 27m |
Implements multi-argument overloaded dispatch plus generic type inference for Fortress, producing statically checked but dynamically inferred calls; dispatch… | ||
| Graal | Doug Simon | 38m |
A Java-written JIT called Graal compiles and installs machine code into HotSpot at runtime using meta, code and interpreter APIs, so developers generate… | ||
| Groovy - The Art of Calling Methods | Jochen Theodorou | 46m |
Three dispatch strategies and measurable tradeoffs: the simple central invoker uses ScriptBytecodeAdapter.invokeMethodN, is easy to implement but causes… | ||
| Implementing Lambda Expressions in Java | Brian Goetz | 39m |
Java implements lambdas by emitting an invokedynamic call (JSR 292) that defers creation to a runtime lambda metafactory which returns instances of existing… | ||
| Implementing StreamBase | Matt Fowles | 22m |
Graphical CEP language that hits hundreds of thousands to millions of events/sec with microsecond latency by generating specialized Java classes from abstract… | ||
| JDart | Rémi Forax | 30m |
JDart is a JVM port of Dart that reuses HotSpot server VM and generates JVM bytecode designed to force HotSpot to emit unboxed, integer-specialized machine… | ||
| Kotlin | Andrey Breslav | 40m |
Kotlin is a JetBrains language targeting JVM 1.6 and JavaScript, open source at m3 with an IntelliJ plugin and a Kotlin-demo web IDE for instant play. It adds… | ||
| Lambda Forms | John Rose | 45m |
Hotspot refactors JSR 292 by replacing ad-hoc per-argument assembly stubs with a compact IR called lambda forms, moves most call-shuffling out of the VM into… | ||
| Mesh | Basil Hosmer | 43m |
A new experimental language called Mesh targets practical concurrency by combining serializable STM over persistent data structures, a tupled function model… | ||
| MethodHandle Introspection | Dan Heidinga | 30m |
Adds limited method-handle introspection to recover the symbolic constant-pool info needed for lambdas, shrinking invokedynamic bootstrap arguments from seven… | ||
| Multitenant | Ryan Sciampacone | 43m |
IBM prototypes a multitenant JVM that runs many application instances inside a single host process using a new -Xmt option, transparent class sharing and… | ||
| Multi-Language JDI | Jim Laskey | 32m |
Built a proxy JDI that wraps the standard Java JDI to make Nashorn JavaScript values look like Java objects, implements object interning, class-detection… | ||
| RTALK - A Smalltalk 'Live' Environment | Mark Roos | 25m |
RTALK is a Smalltalk-like live environment implemented on the JVM that runs an instance-based editor, inspector and debugger and exports code as text. It uses… | ||
| Truffle | Thomas Wuerthinger | 28m |
Truffle implements language interpreters as Java ASTs that self‑specialize and undergo partial evaluation to produce compact, primitive‑typed Java IR which is… | ||
| nothing matches | ||