Java 7 is looking to improve support for dynamic languages using the Java Virtual Machine for their runtime environment. John Rose has been leading a project to explore some options, and JSR 292 will standardise some of this work for Java 7. InfoQ takes a look at the problems JSR 292 solves, and talks to JRuby lead Charles Nutter to find out more about InvokeDynamic in practice.
Memory barriers, or fences, are a set of processor instructions used to apply ordering limitations on memory operations. This article explains the impact memory barriers have on the determinism of multi-threaded programs. We'll look at how memory barriers relate to JVM concurrency constructs such as volatile, synchronized and atomic conditionals.
This article presents one developer's approach to dealing with the "fiendishly hard" OSGi issue of service dynamics. The basic problem is described and two different solutions are proposed. 2
Smalltalk, a language that has had a big influence on Ruby, is making a comeback. We take a look at the current situation and talk to Randal L. Schwartz about Smalltalk. 5
Cloud services have helped bring virtualization to the forefront. Its full power however, also includes other benefits such as high availability, disaster recovery, and rapid provisioning. 1
Ruby 1.9's Fibers and non-blocking I/O are getting more attention - we talked to Mohammad A. Ali of the NeverBlock project and Tony Arcieri of the Revactor project. 1
One of the most exciting things in Java right now is the work being done to get other programming languages onto the JVM. If you want to try something very different from Java, Lisp is a great option. 12
Jeroen Borgers examines if biased locking, lock coarsening, lock elision by escape analysis and adaptive spin locking techniques in the latest JVMs actually work in highly-concurrent apps. 3
Jeroen Borgers examines if biased locking, lock coarsening, lock elision by escape analysis and adaptive spin locking techniques in the latest JVMs actually work in highly-concurrent apps. 16
"Ruby has no debugger" - this misconception has stuck around for ages. Time to eradicate it: Ruby does indeed have powerful debugging support. We look at what's available for all Ruby implementations.
Simon Ritter explains the vision and capabilities of the Real-Time Java specification (RTSJ), which will bring guaranteed response times regardless of GC. 3