2022 Fiscal Year Final Research Report
Combining Unidirectional and Bidirectional Programming
Project/Area Number |
19K11892
|
Research Category |
Grant-in-Aid for Scientific Research (C)
|
Allocation Type | Multi-year Fund |
Section | 一般 |
Review Section |
Basic Section 60050:Software-related
|
Research Institution | Tohoku University |
Principal Investigator |
|
Project Period (FY) |
2019-04-01 – 2023-03-31
|
Keywords | プログラミング言語 / 関数プログラミング / 領域特化言語 / 双方向変換 / プログラム合成 / 可逆計算 |
Outline of Final Research Achievements |
Bidirectional transformation, which enables synchronization among multiple data in different formats, attracts interest in various research areas, including programming languages and software engineering. The main outcomes of this project are two folds. First, we designed and implemented a higher-order partially-invertible programming language Sparcl. In the language, users can mix irreversible and reversible computations while keeping the reversibility guarantee, which leads to more natural programs for many programs, such as dictionary-based compressions. Second, we realized a bidirectional-transformation synthesis system called Symbit, which effectively synthesizes a bidirectional program from a unidirectional program and input-output examples for its backward behavior.
|
Free Research Field |
プログラミング言語
|
Academic Significance and Societal Importance of the Research Achievements |
双方向変換は,データベースにおけるビュー更新,GUI/Webアプリケーション作成,アンドゥ/リドゥ機能の実装や,相互変換処理の作成等,ソフトウェア開発における様々な応用を持つ.そのためプログラミング言語分野のみならず様々な分野で注目を集めているのは前述の通りである.本プロジェクトの成果は双方向プログラミング言語に関する基盤技術に関わるものであり,変換の記述をより容易にする.このことは,ひいては上記のような双方向変換を利用するソフトウェアの生産性の向上につながる.
|