本研究では、並行プログラミング言語のデバッガやメモリ管理などのランタイムシステムをサポートするための静的型システム・プログラム解析の研究を行った。具体的研究成果は以下のとおりで、国際会議IEEELICS97およびSAS97、国際学術雑誌ACM TOPLASなどで発表した。 ・デッドロックフリーダムを保証できる型システムの洗練化および一般化 我々は過去数年、並行プログラムのバクの主要な原因の一つであるデッドロックやデバッグを困難にする非決定性などを静的に検出するための型システムの研究をすすめてきた。今年度はその型システムの洗練化および一般化に成功し、これにより、(1)ある限定された記述能力のみを用いて書かれた並行プログラムはデッドロックフリーダムにや実行結果の一意性が静的に保証され、(2)それを超えた範囲の記述力を用いて書かれたプログラムついてもデッドロックや非決定性の原因となる個所を静的に絞り込むことができるようになった。 ・線形型システムおよびリ-ジョン推論に基づくメモリ管理 線形型システムのアイデアを用いる事により、並行プログラム中で一回しか使用しない値を求める静的解析アルゴリズムを考案し、並行プログラミング言語HACLに組み込んだ。これにより、それらの値の使用後にメモリ領域を即座に開放することが可能になった。また、Tofteらによって提案されたリ-ジョン推論を用いて静的にメモリの割り当て・開放を行うタイミングを決定性するメモリ管理方式を補強するため、その方式のもとで正しく動作するガ-ベジコレクションのアルゴリズムの考案・定式化を行った。
|