X10 (programming language)

X10 is a programming language being developed by IBM at the Thomas J. Watson Research Center as part of the Productive, Easy-to-use, Reliable Computing System (PERCS) project funded by DARPA's High Productivity Computing Systems (HPCS) program.

Its primary authors are Kemal Ebcioğlu, Saravanan Arumugam (Aswath), Vijay Saraswat, and Vivek Sarkar.

[1] X10 is designed specifically for parallel computing using the partitioned global address space (PGAS) model.

Other features include user-defined primitive struct types; globally distributed arrays, and structured and unstructured parallelism.

[2] X10 uses the concept of parent and child relationships for activities to prevent the lock stalemate that can occur when two or more processes wait for each other to finish before they can complete.