2018 Fiscal Year Final Research Report
A Higher-Order Programming Language for Bidirectional Transformations
Project/Area Number |
15K15966
|
Research Category |
Grant-in-Aid for Young Scientists (B)
|
Allocation Type | Multi-year Fund |
Research Field |
Software
|
Research Institution | Tohoku University |
Principal Investigator |
|
Research Collaborator |
WANG Meng
|
Project Period (FY) |
2015-04-01 – 2019-03-31
|
Keywords | プログラミング言語 / 関数プログラミング / プログラム変換 / 領域特化言語 / 双方向変換 |
Outline of Final Research Achievements |
Bidirectional transformation, which enables synchronization between multiple data, is an important research topic that has been attracting interest in various research disciplines, including programming languages, software engineering, and database systems. In this research project, we developed a higher-order functional programming language for bidirectional transformations, in which bidirectional transformations are represented as ordinary functions so that users can compose them by using higher-order functions to develop involved bidirectional transformations. We also proposed a new method for embedding bidirectional programming languages with binders, and demonstrated its usefulness by a case of FliPpr, a bidirectional programming language that describes parsers and pretty-printers at the same time.
|
Free Research Field |
プログラミング言語
|
Academic Significance and Societal Importance of the Research Achievements |
プログラミング言語の記述性は,ソフトウェアの生産性や保守性に関係する重要な性質の一つであり,双方向プログラミング言語においても例外ではない.本研究の提案言語は双方向変換言語の記述性を大きく向上させるものである.本研究で提案された言語のアイデアは,双方向変換を通常の関数として表現することである.このことは双方向変換をより自然なプログラムとして表現することを可能にするだけでなく,高階関数を用いた双方向プログラミングをサポートすることを可能にしている.また,埋め込み技術の発展は双方向プログラミング言語の利便性の向上につながる.
|