InfoQ Homepage Virtual Machines Content on InfoQ
-
Panel: The Future of Programming Languages
Guy Steele, Douglas Crockford, Josh Bloch, Alex Payne, Bruce Tate, and Ted Neward (moderator) hold a discussion on the future of programming taking questions from the audience.
-
Towards a Universal VM
Alex Buckley presents some of the challenges for JVM to become a universal VM, serving the needs of Java and non-Java languages, static and dynamic languages, and an ever growing number of features.
-
Diagnosing Web Application OutOfMemoryErrors
Mark Thomas explains the common Java OutOfMemoryError failures, showing how to diagnose such errors. He also discusses the JVM and tc Server configuration parameters affecting memory settings.
-
JRuby: You've Got Java in my Ruby
Tom Enebo explains reasons for choosing JRuby: Hotspot optimizations, JVM Garbage Collectors, tools like profilers. Also: how JRuby helps to write cleaner, more expressive code with Java libraries.
-
Exploring Dynamism
Allison Randal discusses what dynamic means, the static/dynamic spectrum, dynamic typing, dynamic dispatch, introspection, dynamic compilation and loading, and differences between static and dynamic.
-
A Crash Course in Modern Hardware
Cliff Click discusses the Von Neumann architecture, CISC vs RISC, Instruction-Level Parallelism, pipelining, out-of-order dispatch, cache misses, memory performance, and tips to improve performance.
-
Pragmatic Real-World Scala
Jonas Bonér talks about Scala showing the benefits of OO, the type system, closures, high-order functions, immutability, Actors, then using ORM, AOP, DI and Testing with Scala.
-
Erlang Concurrency, What’s The Fuss?
Erlang is built on 3 components: language, OTP, and VM. Francesco Cesarini explains the role played by each component in order to ensure Erlang’s highly successful concurrency model.
-
Writing DSLs in Groovy
After a short introduction to DSLs, Scott Davis plays with the keyboard showing how to approach the creation of a DSL by typing working snippets of Groovy code that get executed.
-
Evolving the Java Platform
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.
-
Ruby VMs: A Comparison
A look at the different Ruby virtual machines (JRuby, MagLev, IronRuby, Rubinius, MacRuby) and how to choose what fits best within the enterprise.
-
Language Parity: Closures and the JVM
Neal Gafter discusses closures on the JVM, running other languages on the JVM, language-specific wrapper libraries, making the JVM more language-friendly, and whether lambda expressions are too hard.