2011 Fiscal Year Annual Research Report
表現力が高く安全に相互運用可能なプログラミング言語の理論と実現
Project/Area Number |
10J06019
|
Research Institution | Kyoto University |
Principal Investigator |
伊奈 林太郎 京都大学, 情報学研究科, 特別研究員(DC1)
|
Keywords | プログラミング言語 / 型安全性 / 型理論 / 相互運用 / 動的型 |
Research Abstract |
[研究目的] ソフトウェアプログラムは,安全に実行できる信頼性が要求される一方で,コストを抑えるために迅速かつ柔軟に開発する必要がある.前者の実現のために,型理論の成果を用いた静的型付け言語がプログラミング言語として広く用いられている.一方,後者を優先する場合は動的型付け言語が用いられる場合が多く,どちらを用いるかは開発を開始する段階で決めねばならず,途中で変更することができない.そこで本研究では,開発の段階や部品によって静的・動的型付けを切り替えられるように,静的型付けと動的型付けの両方を混在させて使える言語を実現することを目的とする.さらに,プログラミング言語の理論的基盤として,言語の異なる特徴をうまく組み合わせる手法一般についての研究に発展させる. [実施状況] 静的型付け言語であるJavaの基本的な言語機能に加えて動的型を扱えるようにした言語の数学モデルと,その言語のプログラミング言語処理系の実装のための予備実験を含む論文をOOPSLA2011にて発表した.また,実際のプログラミング言語処理系の実装に必要な型検査アルゴリズムの構築に取り組み,提案言語の数学モデルの型システムの仕様に対して健全かつ完全な半決定手続きが得られた.この成果は,プログラミング言語処理系が暴走しないことを保証するために必須のものである.
|
Current Status of Research Progress |
Current Status of Research Progress
2: Research has progressed on the whole more than it was originally planned.
Reason
実際のプログラミング言語処理系において型検査の仕組みを実装するための半決定手続きが得られ,実用的なプログラミング言語処理系の実現に大きく近づいた.また,提案言語の基礎理論についてまとめた論文の論文誌への採録,国際会議での発表も着実に進めることができた.
|
Strategy for Future Research Activity |
半決定手続きをさらに改良して決定可能なアルゴリズムを構築することを試み,これを元にプログラミング言語処理系の実装を進める.さらに,実際のJavaプログラムの一部の型を動的型に置き換えたものをプログラミング言語処理系への入力とすることで,このプログラミング言語処理系における提案言語に関する拡張部分の性能を評価できる.この際,言語のライブラリモジュールとの間の型の不整合をどう扱うかが問題になるが,ライブラリモジュールをロード時に変換することで対応できる見通しである.
|
Research Products
(2 results)
-
-
[Presentation] Gradual Typing for Generics2011
Author(s)
Lintaro Ina
Organizer
The 2011 ACM International Conference on Object-Oriented Programming, Systems, Languages, and Applications
Place of Presentation
アメリカ・オレゴン州・ポートランド
Year and Date
2011-10-26