Java仮想機械語(JVML)に代表される既存の型付仮想機械語(中間言語)は、実行前型検査(検証)と自動メモリ管理(ごみ集め、GC)によりそのプログラムを安全に実行できるが、型システムが特定のオブジェクト指向言語にほぼ対応している点を含め汎用性は高くない。本研究は、仮想機械のRISC化を目標に、安全性を維持しつつアドレス操作命令への型付けを含む汎用性と高速性を持つ型付中間言語(以降、この言語を"MIL"と呼ぶ)を設計しようとするものである。低水準中間言語の既存研究が深く取り組んでいない正確なGCのためのトレーサビリティ保証にも型システムを用いる。 型付中間言語MILの言語仕様の設計においては、MILの役割と型システムを強く意識した上でシンタックス、セマンティクスの設計を行う。MILの役割としては、汎用性の高さ、高性能、処理系として正確なごみ集め、真の末尾再帰のサポートがある。平成20年度は、以下の点について研究を進めた。 1. MILのシンタックス、セマンティクスの主要部分の設計 多くの課題は残されているものの、変数やヒープ上のオブジェクトに関する仕様、基本命令や制御構造についての仕様の設計を進めた。また、ごみ集め処理のセマンティクスについて検討を進めた。 2. ビットレベル表現の考慮 命令やデータにおいてビットレベル表現を考慮するための工夫について検討した。型システム設計の準備としては、ビットレベル表現を考慮したプログラム検査器のプロトタイプ実装を行った。
|