x Your opinion matters! Please fill in the InfoQ Survey about your reading habits!

Akka - Simpler Scalability, Fault-Tolerance, Concurrency & Remoting through Actors

by Michael Hunger on  Mar 21, 2010 2

Today, the Akka team released version 0.7 of their actors framework for the Java Virtual Machine. Akka attempts to address future concurrency challenges with a solution relying on message based actors, software transactional memory and appropriate fault handling strategies. InfoQ talked to Jonas Bonér about the intent behind Akka, its current state and adoption, and future plans.

MacRuby 0.5 Released, Debugger To Come in 0.6

by Werner Schuster on  Feb 01, 2010 3

MacRuby 0.5 has been released, with a new VM, AOT and JIT support. The GIL MacRuby inherited from Ruby 1.9 is now gone and Grand Central Dispatch support allows to keep a system's cores busy with Ruby threads. Work on the 0.6 release is already under way; a new debugger feature is already available in the trunk.

Dynamic Language Roundup: Python's GIL Gets Overhauled but not Removed, Squeak Comes to Android

by Werner Schuster on  Jan 24, 2010 1

The Unladen Swallow project that aims to speed up Python has proposed to be merged into mainstream Python. One of Unladen Swallow's goals was to remove the GIL; a new implementation of Python's GIL by Antoine Pitrou will be fairer and less intrusive on multicore CPUs. Also: Squeak Smalltalk has been ported to Android.

ConcurrentDictionary, .NET 4.0’s New Thread-Safe Hashtable

by Jonathan Allen on  Jan 23, 2010 3

The ConcurrentDictionary is a cornerstone in .NET 4.0’s greatly increased emphasis on parallel and concurrent programming. But while vastly superior to what we have seen in the past, it isn’t a panacea and developers need to study its semantics carefully.

Clojure 1.1 Adds Transients, Chunked Sequences for Efficiency

by Werner Schuster on  Dec 17, 2009

Clojure 1.1 RC1 is out and cuts the overhead of functional programming with a few new constructs: transients bring controlled mutability for persistent data structures; chunked sequences make lazy sequences more efficient. InfoQ takes a look at what makes these improvements work.

Beta 2 Brings Refinements to .NET’s Coordination Data Structures Library

by Jonathan Allen on  Nov 14, 2009

Coordination Data Structures (CDS) is designed both to be used directly and to act as the building blocks for more complex concurrency frameworks. It includes advanced synchronization tools like the Barrier, several thread-safe collections, and a couple different ways to create futures.

Google Experiments with a New Language, Go

by Abel Avram on  Nov 11, 2009 13

Go is a Google experimental open source new language resembling C but adding features like reflection, garbage collector, dynamic types, concurrency, and parallelism.

Introducing the Task Parallel Library’s new Cancellation Framework

by Jonathan Allen on  Nov 11, 2009 2

Task Parallel Library, .NET 4.0’s replacement for ThreadPool, got a face lift for beta 2. In addition to performance improvements, it The most important change is probably the new cancellation framework that replaces parent/child relationships with cancellation tokens that can be freely given to logical groups of tasks.

Ruby VM Roundup: MacRuby Progress, IronRuby, Ruby 1.9.2 Delay

by Werner Schuster on  Sep 30, 2009

MacRuby is nearing its first RC for 0.5 and adds support for Grand Central Dispatch. A new IronRuby release is available, Ruby 1.9.2 might be delayed, and Rubinius joins the group of 1.8.7 compliant Ruby implementations.

A Type System for Scala Actors to Enforce Race Safety Without Sacrificing Performance

by Sadek Drobi on  Jul 20, 2009 3

Philipp Haller and Martin Odersky introduce a type system that enables safe massage transfer in Scala actors. Formalized as an extension of the EPFL Scala compiler, “Object Capability Types” system, based on capability checking and external uniqueness, enforces race safety without sacrificing performance and removes significant limitations on message shape imposed by existing approaches.

Exploring Tuple Spaces Persistence In Ruby With Blackboard

by Sebastien Auvray on  Jul 13, 2009

Ruby has long been criticized for 1.8's limited green threads. Luc Castera gave a presentation at RubyNation about Concurrent Programming with Ruby and Tuple Spaces. He introduces 2 ways of implementing TupleSpaces in Ruby: Rinda and Blackboard using Redis (with plans to porting it to Erlang).

MacRuby Drops GIL, Gains Concurrent Threads

by Werner Schuster on  Jun 30, 2009 3

MacRuby joins the ranks of JRuby and IronRuby and moved away from Ruby 1.9's Global Interpreter Lock (GIL) in the experimental branch.

Rich Hickey on Clojure's Features and Implementation

by Werner Schuster on  May 26, 2009 1

In this interview from QCon London 2009, Rich Hickey talks about Clojure. The discussion includes the ideas behind Clojure's STM support, what other concurrency primitives Clojure supports and which ones might get added in the future. Other topics covered are Clojure's AOT support, the role and implementation of multimethods, Clojure ports to other systems and much more.

Declarative Concurrency For Ruby With Dataflow

by Sebastien Auvray on  May 04, 2009

Part of the Ruby language was influenced by functional programming techniques. Larry Diehl brings a declarative concurrent model to Ruby by importing the concept of unification from Oz Language with the Dataflow project.

Is Parallel Programming Hard? Prof. Guy Blelloch Argues That It Isn’t

by Jonathan Allen on  Apr 21, 2009 2

In an essay on Cilk Arts, Professor Guy Blelloch argues that parallel programming is not intrinsically hard, but rather a question of abstraction. The three problems identified by Blelloch are a lack of training in parallel thinking, separating parallel implementation from algorithms, and determinism. After detailing each, he explains why he thinks they can be overcome.

General Feedback
Editorial and all content copyright © 2006-2014 C4Media Inc. hosted at Contegix, the best ISP we've ever worked with.
Privacy policy