Chapel

は、クレイ社によって開発されたプログラミング言語である。この言語は今もなお「クレイ・カスケード・プロジェクト」として開発されている。もともと、このプロジェクトは米国国防高等研究計画局の高生産性計算機システムプロジェクトの一部だったもので、その目標は、2010年までの間にスーパーコンピューターの生産性を改善するというものであった。 が狙っているのは、並列計算機、とりわけ、というシステムのプログラミング効率を改善することである。そのために、この言語では、既存のプログラミング言語よりも高い水準でアルゴリズムを表現することを可能にし、同時に、アルゴリズム表現とデータ構造の詳細な実装の分離性を高めている。

言語はデータやタスクの並列化や入れ子構造の並列化をする仕組みを備えている。これらは高水準のマルチスレッド並列プログラミングモデルを支援するものである。これらの仕組みによってデータの分配やデータ駆動による部分演算の割り当ては抽象化されるため、プログラム中のデータと演算の局所性の最適化が可能になっている。また、オブジェクト指向と汎用プログラミングの仕組みによって、プログラムコードの再利用と汎用化も可能である。例えば、 ではロケールを宣言することができる。

言語では先行する言語からアイデアを借用している。並列性に関する考え方で最も近いのは 、ZPL そして  の  拡張とC言語拡張である。

西暦2021年現在この言語は、Apache 2ライセンスの下、オープンソースのプロジェクトして開発が進行中である。

なお、言語の名前「」は「多段高生産性言語」を意味する英語「」にちなんで名付けられたものである。

脚注

関連項目

 (プログラミング言語)
区分化大域アドレス空間

外部リンク

プログラミング言語
並列コンピューティング
並行計算