相補的プログラミング環境は、次世代コンピュータのための高機能高品質ソフトウェアを開発するためのプログラミング環境の1つの提案である。プログラム、プログラムの仕様記述、プログラミング・パラダイムなどの間に存在する相補性を見い出すことによって、高品質ソフトウェアの開発環境の提供を目指すものである。 本年度は、この研究の最終年度である事に鑑み、研究の取り纒めを行うと共に、次世代コンピュータにおける相補的プログラミング環境の実装を念頭において、核言語としての並列LISP言語の設計とその処理系の試作、処理の高速化に関する研究を行った。 次世代コンピュータは、並列アシンの時代とも言われるが、 (1)共有メモリ型並列アーキテクチャ (2)分散メモリ型並列アーキテクチャ (3)局所共有・大域分散メモリ型アーキテクチャ が並列マシンのモデルとして考えられる。 (1)の共有メモリ型アーキテクチャ向きの並列LISP言語PaiLisp、(2)の分散メモリ型アーキテクチャ向きのチャネル通信方式に基づくLispであるChannel-Lispの設計とそれらの処理系の試作を行った。また(1)と(2)を融合した(3)の方式のアーキテクチャも設計し、このアーキテクチャ向きの前列Lispとして、PaiLispがチャネルを介して通信し合う高並列Lisp言語の基本設計も行った。これら並列Lisp言語とそれらの並列マシン上での実現方式の確立により、LISPをベースとして研究されてきた相補的プログラミング環境の構成要素の次世代コンピュータ上での並列的実現の見通しが得られた。 また、プログラム言語の意味、プログラムの検証・変換などを自然推論により統一的に記述する本研究の論理的枠組の研究を深めた。
|