X10 is an object-oriented programming language for parallel programming using a globally partitioned address space. It utilizes varying child processing relationships to prevent locks, has built-in garbage collection, prefers primitive types, but allows operation on custom structs.
minor feature: X10 Release 2.5.0 includes a redesign of several X10 standard library APIs to better support Resilient and Elastic X10. In particular various aspects of Place-related functionality have been rethought to more naturally support execution over a dynamically varying set of Places. X10 2.5.0 also includes a set of enabling runtime system changes to better support the embedding of X10 and the XRX runtime into larger programs written in other programming languages. A backwards incompatible change to the x10.util.Map interface removes the usage of x10.util.Box on the return value of the put and get methods.