研究概要 |
研究初年度である本年は、動的メソッド呼び出しを行うオブジェクト指向言語の型システムの理論的な側面について研究を遂行した。 本年度の研究は、独国Saarbrucken大学のMartin Muller氏と共同で行った。この共同研究では、研究代表者の1998年の論文[1]“Static typing for dynamic messages"(POPL98)をもとに、動的メソッド呼び出しを行うオブジェクト指向言語の型システムをある制約システムとして走式化した。 このように型システムを制約システムで表すことの利点は2つある。ひとつは、型システムの構成が非常に簡単になることである。究代表者の1998年の論文[1]は構成がかなり複雑であったため、それをそのまま本研究の最終的な目標であるクラス等の高度な機能を持った言語に拡張するのは困難であった。しかし、同等の型システムを制約システムとして書き下すことによって、その型システムをより高度な言語に拡張することが容易になった。 2つ目の利点は型システムがおこなう型推論の計算の複雑さが明らかになることである。これは、型推論の問題を制約システムの制約解消の問題に還元することによって、[1]ではかなり複雑だった型推論のアルゴリズムを大きく簡略化することができるからである。共同研究では、型推論の計算の複雑さが多項式時間、具体的にはO(n^4)、しかも多くの場合に当てはまるある条件を満たせばO(n^2)であることを示した。この結果は,我々が提案する型システムの型推論が実用に耐えうることを強く支持するものである。 次年度の研究では、本年度の成果をもとに、制約システムに基づくインターフェース記述によるメソッドの動的起動などについて研究を行いたい。
|