研究概要 |
19年度は、既存のプログラム変換システム、プログラム開発システムの現状を調査し、プログラム開発システムの単純な機能の一つである変数名の補完ついて検討を行った。プログラム開発システムの現状調査として、プログラム開発環境として現在広く用いられているEclipseの調査を行った。このシステムにおいては、Java、Ruby言語などを対象としたプログラム開発環境を提供しており、プラグインを変更することにより、さまざまな言語に対するプログラム開発環境とすることができるようになっている。本研究で主に対象としている、関数型言語については、Standard ML, Haskell, Objective CAMLの開発環境のためのプラグインは少し開発されているが、現状では十分とは言えず、インデント、色づけなどが行われているにとどまっている。変数名補完においては、そのプログラムのファイル内において、そこより以前に現れた変数名のprefixと現在入力中の綴りが一致した場合に補完候補とするのが単純であるが、実際には型を考慮し、候補を絞り込むことができるのが望ましい。この機能を実現するには、プログラム記述中に型推論をある程度行うことが必要になり、未定義の変数が含まれている可能性のある部分プログラムに対する型推論に関する既存研究を調査し、それと変数名補完との関連について考察した。より具体的には、提示される変数名の補完候補は、型に関してある意味において不整合を起こさないという性質を持つ、部分プログラムに対する型推論機構の構築について考察を行った。
|