InfoQ Homepage JVM Content on InfoQ
-
JSR-292 Early Draft Review Announced
The early draft review of JSR-292 has been released. JSR-292 defines the 'invokedynamic' instruction, a bytecode instruction to assist in the implementation of dynamic languages on JVM.
-
JavaOne: Garbage First
In a JavaOne presentation, Sun Microsystems’ Tony Printezis provided more details on Garbage First, a replacement for the CMS garbage collector particularly targeted at long running server applications.
-
Terracotta 2.6 Supports Cluster Visualization Tools and Tomcat 6 Integration
The latest version of Terracotta, an open source JVM clustering framework, includes new features like cluster visualization tools and official support for Tomcat 6 platform. Terracotta team announced on Monday, the general availability of version 2.6 of the product which also includes performance improvements in several common use-cases.
-
Presentation: Scala: Bringing Future Languages to the JVM
In this presentation, Lex Spoon discusses the Scala programming language. Topics covered include the origin of Scala, the philosophy behind Scala, the Scala feature set, Object-Oriented and Functional programming in Scala, examples of Scala code, writing DSLs, how Scala is converted into Java, Scala performance, Abstract Data Types, unapply, actors and partial functions.
-
Interview: Charles Nutter discusses JRuby
JRuby project lead Charles Nutter discusses how he got involved with JRuby, Sun's involvement with JRuby, how JRuby fits into enterprise-level web applications, the possibility of a friendly fork of the OpenJDK source code, reasons for switching to JRuby, the future of JRuby, Spring and JRuby, and the Ruby community as a whole.
-
Programming for the DLR
The Dynamic Language Runtime (DLR) is an effort to facilitate the creation of language runtimes on .NET. IronRuby, a Ruby for .NET, is one of the languages built on the DLR that helps to push its limits. A new blog gives a step by step introduction to the DLR and how to build languages on it.
-
Why Scala?
Scala is one of the newer languages for the JVM, but why would developers want to choose Scala over Java? There are many reason, but for many Scala provides many of the language features of Ruby in a statically-typed environment.
-
Programming languages in future systems
The trend seems to be clear; in the next few years there will be an increase in adoption of new programming languages and systems will be written in multiple languages. But what does the mix look like, and which languages are suitable for what? In a recent post, language explorer and JRuby developer Ola Bini describes what future systems may look like.
-
JSR-292 and the Multi-Language VM
The JSR-292 effort formed in early 2007 to improve support for dynamic languages on the Java Virtual Machine (JVM). Thus far, the effort has focused on an invokedynamic instruction for the JVM, but has recently included movement towards the creation of a multi-language virtual machine project.
-
Article: The Box: A Shortcut to finding Performance Bottlenecks
Quite often performance problems will be reported with some very antidotal comments that do nothing to help you understand where to start looking. Faced with this dilemma, it is not uncommon for teams to start guessing at the root cause. Now enter "the box", a little diagram that is an abstraction of a complete system. The box is a reminder of the true cases of performance bottlenecks.
-
Is it too late for Parrot VM?
The Parrot Virtual Machine recently had it’s sixth birthday. Parrot is a VM that sprung out of the Perl6 development, which primarily targets dynamic languages, but also for instance .NET and C99. But six years is a long time, and both Microsoft and Sun is targeting this segment. Is it too late for Parrot?
-
Longjumps, Tailcalls, Tuples for the JVM
This summer, John Rose made a series of posts described as "some exciting articles about the future of the JVM," including long jumps, tail calls and tuples. These could be folded into the Java language, but can also be seen as important for supporting other languages on the JVM, including both functional and dynamic languages.
-
Presentation: Cluster your JVM to simplify application architecture
Open Terracotta is an open-source, highly scalable, JVM-level clustering solution. As well as being a drop-in replacement for Tomcat Clustering, it can transparently cluster POJOs and Spring beans. This presentation will be an in-depth case study of a small mobile application built using Terracotta clustering.
-
Microsoft Surpasses Java's Dynamic Language Support?
Microsoft's announcement of the Dynamic Language Runtime (DLR) has caused quite a stir in many areas, also in the Java space. Many voices seem convinced that the DLR has given .NET a major head start over the JVM, because it solves many problems Java is only just starting to realize. We look at the current situation of dynamic language support and how it compares to the DLR.
-
Presentation: Java EE Class Loading Architectures
Ernie Svehla, Chief Architect of IntelliObjects reviews Java Class Loading basics, comparing the class loading architectures of the Sun's Appserver 9, BEA WebLogic 9.1, and JBoss 4.0.2. The presentation concludes with a discussion of best practices for packaging JEE applications followed by techniques for resolving common class loading problems such as ClassNotFoundException, or NoDefFound Errors.