研究課題/領域番号 |
17K00115
|
研究機関 | 大分大学 |
研究代表者 |
紙名 哲生 大分大学, 理工学部, 准教授 (90431882)
|
研究期間 (年度) |
2017-04-01 – 2021-03-31
|
キーワード | 文脈指向プログラミング / リアクティブプログラミング |
研究実績の概要 |
ソフトウェアとハードウェアの融合が進む現在,ソフトウェアは外界から取得される多様な情報に応じて適応的に動作することが求められる.そこには複雑なデータの流れとそれに応じた振る舞いの動的な変更があり,このことは既存技術によるソフトウェアの開発を難しくする.本研究では,この問題を,プログラミング言語による記述を変えることによって根源的に解決する. 当該年度では,外部環境の観測から得られるデータフローに基づいたモジュールの振舞の自動的な変更を直接記述できるプログラミング言語の実現方法を明らかにした.とくに,①関数リアクティブプログラミングの言語要素(シグナル)とイベント機構を併せ持つ,Javaの簡便な拡張言語SignalJのための計算体系を構築し,②それに基づいた,既存の文脈指向プログラミング(COP)言語ServalCJの拡張方法を明らかにした. シグナルは,外界からのデータを含むデータ伝播を宣言的に記述できる機構である.SignalJではデータ伝播の発生をイベントとみなす.今回のServalCJの拡張では,それを利用し,もともとServalCJで記述可能なイベントに基づくモジュールの振舞の自動的な変更を,シグナルを用いて記述できるようにした.これにより外界からのデータ伝播に基づくモジュールの振舞の変更を簡潔に記述することが可能になる.また,既存のServalCJの実装方式の一部を変更することでこの機構が実現可能であることを示した.
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
研究計画において示したとおり,当該年度はリアクティブプログラミングの言語要素を持つCOP言語の実現を実施することになっていた.上に述べたとおり,当該年度の実績としては,まず対象COP言語に組み込まれるリアクティブプログラミングの言語要素(シグナルとイベント)のための計算体系を構築し,それに基づいた既存のCOP言語ServalCJの拡張方法を示したことが含まれている.よって,研究計画にあった当該年度の実施項目は概ね達成できたといえる.
|
今後の研究の推進方策 |
当初の研究計画のとおりに進める.具体的には,COPの言語要素を持つリアクティブプログラミング言語のため,SignalJのCOP拡張を実現する.とくに,SignalJにおける宣言的なデータフロー記述(インスタンス変数として書かれる)を,COPにおけるモジュールと同様に動的に変更する言語要素を研究する.
|
次年度使用額が生じた理由 |
当該年度の研究成果を,次年度の4月初旬にフランスのニースで開催される国際会議<Programming> 2018で発表することになったため,当該年度の予算としては執行できなかった. 次年度使用額は,上述した国際会議の参加登録料とそのための旅費として使用する.
|