研究課題
本研究の目的は、コード生成のためのプログラミング言語であるマルチステージ言語の基礎となる計算体系の確立である.今年度の研究では、計算エフェクトを利用するための機構を持つ型付きマルチステージ言語を設計し、その型システムの健全性を証明した。本言語に含まれる計算エフェクトは、タグ付き限定継続(delimited continuation)と呼ばれるものであり、このエフェクトをプログラムの中から利用できるコントロールオペレータを持つことにより、精密で高性能なコードを生成することが可能となった。型システムの健全性により、生成されたコードが型安全性で、かつ、自由変数が発生しないという性質が導かれるため、本言語を利用したコード生成は高い安全性・信頼性を持つと言える。また、MetaOCamlなどのマルチステージプログラム言語の基礎となる体系λαを論理学的見地から見直し、より簡潔で表現力が十分強力である体系を設計し、その基礎理論を確立した。マルチステージプログラム言語の安全性が型システムに依拠していることから、関連研究として、型の導出をヴィジュアルに行うためのシステムの設計を行った。また、型エラーが起きた場合、通常のシステムでは、型エラーの原因となる部分から遠く離れた部分を指摘するエラーメッセージが表示されたり、必要以上に多くの情報が表示されたりする事が頻繁に起きるが、Wellsらの型エラー・スライスに基づく手法を改善して、型エラーの原因に関係する部分のみを適切に表示するアルゴリズムを設計・実装した。
すべて 2011 2010
すべて 雑誌論文 (4件) (うち査読あり 4件) 学会発表 (1件)
Proc.of the 20th Int.Sym.on Logic-Based Program Synthesis and Transformation, LNCS
巻: 6564 ページ: 84-98
IPSJ Transactions on Programming
巻: Vol. 3, No. 4 ページ: 43-56
Proc.of 12th ACM SIGPLAN Symp.on Principles and Practice of Declarative Programming
ページ: 77-86
Logical Methods in Computer Science
巻: Vol.6(4:8) ページ: 1-43