With the increased emphasis on multi-core systems an understanding of parallel and concurrent programming is more important than ever. Fortunately .NET 4 has made a lot of advances in the types of synchronization primitives available to developers. One such primitive is the Barrier, which Emad Omara uses to implement a parallel merge sort.
Akka 1.1 was released with many improvements in performance, Futures and more. The basic Akka also has no dependencies except for Scala 2.9. InfoQ caught up with Jonas Bonér to talk about the current state and the future of Akka.
EngineYard now offers Rubinius on its AppCloud PaaS service. InfoQ talked to Evan Phoenix about the state of Rubinius, the new performance tools and the status of the GIL removal.
Erlang Co-creators, Joe Armstrong and Robert Virding, admit that Erlang is heavily inspired by the Java world. In an interview at ErlangFactory 2011 SF, they reveal how Scala Actors had shaped their work in what they then called Erlang Processes. Moreover, they acknowledge the fact that Erlang's VM is barely a clone of the famous JVM.
Robert Harper and Dan Licata, Professors of Computer Science at Carnegie Mellon University, announced last week that they have decided to "eliminate entirely" OOP from the CS introductory curriculum.
Project lead Jonas Bonér has announced today that Akka has reached its 1.0 milestone. InfoQ spoke to Bonér to find out more about the project.
TPL Dataflow is Microsoft’s new library for highly concurrent applications. Using asynchronous message passing and pipelining, it promises to offer more control than thread pools and better performance than manual threading. The downside is that you have to adhere to design patterns that may be unfamiliar to .NET programmers.
The new Async CPT for VB and C# looks like it may actually make it into the core language. But with all the emphasis on multi-core systems, why is Microsoft investing so heavily in syntax for designed specifically for making single-threaded asynchronous programming easier?
In a recent blog post the Visual Basic team let slip an announcement that Visual Basic and C# would be getting a new syntax for asynchronous programming. Built on top of the Task Parallel Library that was introduced in .NET 4, this adds the Async and Await keywords to both languages.
MacRuby 0.7 is out, with the usual performance and compatibility improvements, including Ruby 1.9.2 compatibility. To demonstrate MacRuby's tight integration with Snow Leopard's Grand Central Dispatch (GCD), the team has released ControlTower, a Rack-based web server. Also: with the new BridgeSupport, all native APIs can now be accessed and scripted.
Brian Goetz and Cliff Click spoke at JavaOne conference last week about concurrency revolution from a hardware perspective. They said CPU designers will focus on parallelism in the future for increasing throughput of the systems. They also discussed some point solutions like Thread Pools, Fork/Join, Map/Reduce and Actors to achieve the concurrency in applications.
Dana Groff has announced the end of Microsoft’s experiment with software transactional memory for the .NET Framework. Known as STM.NET, this research project was announced in 2008 as an alternative to explicit locks when dealing with concurrency issues.
Even though Microsoft has been working on .NET’s Parallel Extensions since 2007, there are still many features that they didn’t have time to fully implement for .NET 4.0. Some features were “too application-specific to be included in the core of the Framework” while others simply needed for testing and user feedback. So instead they are being released as a set of patterns and samples.
The strong correlation between heap size and garbage collection pause time is becoming one of the major limitations to Java application scalability, and a great deal of R&D effort is going into trying to remedy the situation. InfoQ talked to Dr. Cliff Click, former architect and lead developer of the HotSpot Server Compiler and now chief JVM Architect at Azul Systems, about Azul's solution.
JRuby-Prof is a new, low overhead profiler for JRuby which, unlike plain Java profilers, will generate clear, Ruby-specific reports. A new feature in JRuby is JRuby::Synchronized, a module that, when extended, will make all methods of a class synchronized.