並列プログラミング環境に関してもっとも興味深い成果は、パターンに関す るものである。本研究で導入されたパターンの概要は以下の通りである。
プロセスやプロセスの集まりを単位とした並列プログラムの部品化/再利用は、 現在では、広く一般に行われている。しかし、デザインパターンの概念を並列 論理型プログラミング環境でサポートした例は皆無ではないかと思われる。本 研究では、master-workers や generate-and-test などのさまざまな局面で利 用されるパターン(プロセス間ネットワークのトポロジーとプロトコルのパター ン)をユーザが定義し、部品化/再利用できる ビジュアルプログラミング環 境の設計と試作を行った。パターンを単位とすることにより、今までより柔軟 な部品化/再利用が可能となる。
KL1 をベースとしたビジュアル言語を設計する時には、 書き替え規則(KL1 の節)が大きな問題となる。 書き替え規則は、もともと動的な挙動を表すも のであり、静的な図で表現しても了解性があまり向上しない。したがって、 書き替え規則を使わずに、いかに動的な挙動を表現するかが重要な課題とな る。
本研究では、静的なパターンの他に、実行時に形が定まる動的なプロセスネッ トワークを表現するパターンを、制限つきではあるが導入することに成功し た。この動的パターンにより、たとえば、master-workers パターンにおい てワーカーの数を実行時に決定することが可能となる。しかも、このような 動的ネットワークを、節のような書き替え規則を用いず、静的な図式により 表現可能である。そのため、プログラムの了解性が確実に向上している。
パターンは、未定義プロセス(ホールと呼ぶ)を含むプロセスネットワーク図 であり、インタフェースビルダやドロー系のグラフィカルエディタと類似の インタフェースにより容易に編集可能である。さらに、プロセスまたは別の パターンをマウスでドラッグし、パターンのホールにドロップすることによ り、容易にパターンを利用することができる。
又帰納的記号処理の分布意味論に基づいた「訓練可能なプログラム」の研究 においても基礎的確率分布として階層化されたボルツマン分布を導入し、次 に階層化されたボルツマン分布に対する論理プログラムの訓練規則を導き、 更にtic-tac-toe を例題として実際に論理プログラムをデータにより訓練 する事により振舞いを向上させる事に成功した。