文脈自由文法(CFG:Context-Free Grammar)を組合せた組文脈自由文法(CCFG:Coupld Context-Free Grammar)にもとづくプログラミング言語としてGramp(A Grammar is a Program)を開発した。 CCFGプログラムに関するプログラム変換・合成には (1)CCFGプログラムとほぼ同レベルの他のプログラム言語のプログラムとの変換・合成 (2)CCFGプログラム間での変換・合成 (3)CCFGプログラムから手続き型言語プログラムへの変換の3種類が考えられる。 (1)についてはPrologプログラムとの変換について、任意のPure Prologプログラムはそれと等価な意味を持つCCFGプログラムへ機械的に変換可能であることを示した。 (2)については、プログラム変換の基本となる展開/畳み込み変換を正確に定義した。また、その展開/畳み込み変換を属性文法に適用する方法を示した。これらを使った最適化変換の方法もいくつか開発した。 (3)については、従来、文脈自由文法に対して研究されてきたLR構文解析法やLL構文解析法を応用して、Grampプログラムから手続き型プログラムへ変換することが可能であることを示した。
|