X10 (プログラミング言語)
From Wikipedia, the free encyclopedia
| パラダイム | オブジェクト指向 |
|---|---|
| 登場時期 | 2004年 |
| 設計者 | Kemal Ebcioğlu, Vijay Saraswat, and Vivek Sarkar |
| 開発者 | IBM |
| 最新リリース | 2.6.2[1]/ 2019年1月8日 |
| 型付け | 静的で強制的な強い型付け |
| 影響を受けた言語 | C++, Java |
| プラットフォーム | IBM AIX, Linux, Mac OS X, Windows |
| ウェブサイト | x10-lang.org |
X10 は、アメリカ合衆国・DARPAのHigh Productivity Computing Systemsにより設立された PERCS スーパーコンピュータ・プロジェクトの一部として、IBMがトーマス・J・ワトソン研究所で開発中の並列処理用のプログラミング言語である。
X10 の主な草案者は Kemal Ebcioglu、Vijay Saraswat、Vivek Sarkar である[2]。X10 は、Java言語の拡張されたサブセットで、多くの面で非常に似ているが、配列と並行性のためのサポートが追加されている。X10 は区分化大域アドレス空間を使用する。またオブジェクト指向プログラミングと、非オブジェクト指向プログラミングの両方のパラダイムをサポートする。
X10 は、複数のプロセッサが処理完了前に互いの終了を待ってしまうというロックの膠着状態を防止するために、タスクの親子関係の概念を使用する。あるタスクは1つまたは複数の子タスクを生成でき、子タスクも更に子タスクを持つことができる。子は親の終了を待つ事はできないが、親は finish コマンドを使用して子の終了を待つことができる [3]。