2015 Fiscal Year Research-status Report
Project/Area Number |
25330078
|
Research Institution | Ritsumeikan University |
Principal Investigator |
紙名 哲生 立命館大学, 情報理工学部, 任期制講師 (90431882)
|
Project Period (FY) |
2013-04-01 – 2017-03-31
|
Keywords | プログラミング言語 / プログラミングパラダイム / 方法論 / モジュラリティ |
Outline of Annual Research Achievements |
本研究課題では、新たな文脈指向プログラミング(COP)言語ServalCJの研究開発を進めている。これは、既存のCOP言語で提案されてきた様々な層活性の機構を一般化し、シンプルな言語機構としてまとめ上げた新しいCOP言語である。これまでに、ServalCJコンパイラの試作を行い、その有効性を確かめるとともに、異なる層活性機構を統合する際に生じる衝突の問題(オブジェクト毎の活性化と大域的な活性化の衝突や、同期的な活性化と非同期的な活性化の衝突)に対しては、言語の意味論を形式的に正確に記述することによってその解決方法を示した。また、同時に文脈指向ソフトウェア開発方法論COSEの構築も進めており、迷路探索ロボットシミュレータの開発などの事例から、数ある層活性方法の中から適切なものを選択する手法などを提案してきた。これらの研究成果は、ソフトウェアのモジュラリティ分野で権威のある国際会議MODULARITY'14, MODULARITY'15などで発表されてきた。
当該年度では、方法論COSEの内容を精緻化し、権威ある英文論文誌に投稿・採択された。ServalCJでの異なる層活性機構を統合する際、それらの活性化の優先度が保存される性質を定理化し(優先度保存定理)、それを証明した。その成果は、MODULARITY'15で発表した論文の拡張版として、権威ある英文論文誌に投稿・採択された。層内基底メソッド(層活性によって、新たなメソッドがオブジェクトに追加される機構)を、ServalCJのような非同期的な層活性を許す言語で型安全に実現するための新たなメソッドディスパッチ機構を実現し、COPに関する国際ワークショップCOP'15で論文を発表した。さらにその成果を理論化し、型安全性を証明した。ServalCJに関数リアクティブプログラミングの要素を取り入れた新たな柔軟なモジュール機構及びプログラミング手法である柔境界モジュールと境界プログラミングの着想を得、アイデアを国際ワークショップMASS'16で発表した。
|
Current Status of Research Progress |
Current Status of Research Progress
1: Research has progressed more than it was originally planned.
Reason
当該年度で実施した、異なる層活性機構の間の優先度保存の定理の証明は、研究を実施するうえで出てきたアイデアであり、当初の計画にはこれを行うことは予定していなかった。これを実施したことにより、当初の想定よりも大きな研究成果を得ることとなった。同様に、当該年度で実施した層内基底メソッドの実現も、当初の計画では予定していなかったが、メソッドディスパッチの方法を改良すれば簡単に実現できることが分かったため、実施した。これも研究成果をより大きく補強した。さらに、当該研究を発展させる柔境界モジュールや境界プログラミングなどのアイデアについての着想が得られ、今後の研究の見通しも明るい。研究成果は毎年のように権威ある国際会議で発表されたり論文誌での採択が決まっており、国際的評価も高い。
|
Strategy for Future Research Activity |
当該研究課題としては、当初の計画では当該年度で終了の予定であったが、先に申請したとおり、補助事業期間を1年延長し、上に述べた柔境界モジュールや境界プログラミングなどのアイデアを実現する言語処理系のための予備的な研究を、本研究課題の発展的な課題として取り組む方針である。
これらのアイデアを実現するには、(1)層やモジュール定義の実行時の更新、(2)層活性規則の実行時の更新、(3)リアクティブな層活性などの先進的な言語要素が必要になる。当該年度の方策としては、上記のうち、リアクティブな層活性を実現する。まずJavaに関数リアクティブプログラミングの言語要素を導入して拡張する方法について検討し、実際に言語処理系を試作する。リアクティブ値をそれ以外の値と区別するために、型システムを用いるという着想を既に得ている。次にその機構を、ServalCJでの層活性に応用することにより、リアクティブな層活性を実現する。
|
Causes of Carryover |
参加予定だった国際会議が学内業務と重なり、参加できなかったため。また、当該年度に参加した(別の)国際会議参加費については、開催時期が3月末だったため、学内経理の事情で次年度に執行される。
|
Expenditure Plan for Carryover Budget |
本研究課題から演繹される発展的な研究成果が次年度中に得られる見通しで、その成果を学会等で発表するための旅費として使用する。
|