2019 Fiscal Year Annual Research Report
文脈の変化に応じて離散的に振舞いを変えるソフトウェアのためのプログラミング言語
Project/Area Number |
16K16033
|
Research Institution | Tokyo Institute of Technology |
Principal Investigator |
青谷 知幸 東京工業大学, 情報理工学院, 助教 (20582919)
|
Project Period (FY) |
2016-04-01 – 2020-03-31
|
Keywords | プログラミング / 文脈指向プログラミング / 余作用 / 反応型プログラミング |
Outline of Annual Research Achievements |
文脈指向プログラミング言語のための計算体系λVへのMLモジュールの導入と、文脈指向プログラミングと反応型プログラミングの融合の研究に取り組んだ。
λVLでは文脈ごとに振る舞いの変わるプログラムを表現するために、文脈ごとの値の積を用いている。関数も値であるため、文脈ごとに振る舞いの変わる関数は、文脈ごとの関数の積として表現することができる。言い換えると、それぞれの関数定義の中に文脈ごとの振る舞いを記述する。この方法では文脈ごとにプログラムをモジュール化することができない。例えばプログラムの版(バージョン)を文脈とみなすと、版ごとにプログラムを開発できず、関数ごとに各版における定義を列挙することになり、扱いづらい。MLモジュールの導入の足がかりとして全称量化子と存在量化子をλVLに余作用として導入することを考察し、情報処理学会の第124回プログラミング研究発表会で発表した。
反応型プログラミングは値の変化に反応した計算を計画する手法である。文脈は時々刻々と変化するために、反応型プログラミングと文脈指向プログラミングは相性が良いはずである。例えばバッテリ残量に合わせてプログラムの振る舞いを変えたり、サーバプログラムを再起動することなく更新することでサーバプログラムの振る舞いが変わることが考えられる。融合方法のアイデアを国際研究集会COP'19で発表した。また反応型プログラミングにおいて値の変化を記録するために時系列データベースとの融合を提案し、国際会議Onward! 2019で発表した。
|