• Search Research Projects
  • Search Researchers
  • How to Use
  1. Back to previous page

High-Level Bidirectional-Transformation-Network Programming Langauge for Synchronization of Multiple Data

Research Project

Project/Area Number 23K24818
Project/Area Number (Other) 22H03562 (2022-2023)
Research Category

Grant-in-Aid for Scientific Research (B)

Allocation TypeMulti-year Fund (2024)
Single-year Grants (2022-2023)
Section一般
Review Section Basic Section 60050:Software-related
Research InstitutionTohoku University

Principal Investigator

松田 一孝  東北大学, 情報科学研究科, 准教授 (10583627)

Project Period (FY) 2022-04-01 – 2027-03-31
Project Status Granted (Fiscal Year 2024)
Budget Amount *help
¥16,380,000 (Direct Cost: ¥12,600,000、Indirect Cost: ¥3,780,000)
Fiscal Year 2026: ¥2,600,000 (Direct Cost: ¥2,000,000、Indirect Cost: ¥600,000)
Fiscal Year 2025: ¥2,600,000 (Direct Cost: ¥2,000,000、Indirect Cost: ¥600,000)
Fiscal Year 2024: ¥3,510,000 (Direct Cost: ¥2,700,000、Indirect Cost: ¥810,000)
Fiscal Year 2023: ¥2,600,000 (Direct Cost: ¥2,000,000、Indirect Cost: ¥600,000)
Fiscal Year 2022: ¥5,070,000 (Direct Cost: ¥3,900,000、Indirect Cost: ¥1,170,000)
Keywordsプログラミング言語 / 関数プログラミング / 双方向変換 / 領域特化言語
Outline of Research at the Start

GUI/webアプリケーションにフォーカスを置き,その作成のための双方向変換に基づくプログラミングフレームワークの作成を目指す.より具体的にはModel-View-Updateパターンに基づくwebアプリケーションの双方向変換を応用した作成技術について研究する.Model-View-Updateパターンは関数プログラミングや双方向変換と相性がよいことが期待される.またプログラミングフレームワークの作成と並行し,双方向変換言語の埋め込み実装技術や,複製を含むような双方向変換の理論的基盤についても研究を行う.

Outline of Annual Research Achievements

双方向変換は異なる種類の複数データ間の同期を可能とし,プログラミング言語,ソフトウェア工学,データベースなど様々な分野で注目を集めている.本研究プロジェクトは,GUI/webアプリケーションへの応用にフォーカスを置き,アプリケーションの記述に十分な表現力と記述性を持った双方向変換ネットワーク記述言語および実行システムについて追究することを目的としている.
令和4・5年度では,指導学生との共同研究により双方向変換を活用したwebアプリケーション作成フレームワークのプロトタイプを作成した.本研究ではModel-View-Updateパターンに基づくwebアプリケーションの設計方式に着目し,双方向変換を利用することでcompositionalなwebアプリケーション構成方法を提案している.より具体的には,本研究ではUIのロジックとデータ同期のロジックを適切に分けるというアイデアに基づき,双方向変換をモデルの同期に用い,ビューの合成のためのコンビネータ言語を提案している.こちらの内容は当該学生の修士論文の内容となった.
また,双方向変換等の埋め込み実装技術に関する論文が本分野のトップレベル会議の一つであるICFP 2023に採録された.埋め込み言語は言語を他のプログラミング言語のライブラリの形で実装する技術であり,本研究プロジェクトにおいても重要な基盤技術の一つである.埋め込み言語の利便性の高い構文の表現方法の一つに高階抽象構文がある.提案手法では,Robert Atkeyのunembeddingという技術に基き,双方向変換を含む広範な計算体系を高階抽象構文を用いて埋め込み実装することを可能とする.

Current Status of Research Progress
Current Status of Research Progress

2: Research has progressed on the whole more than it was originally planned.

Reason

繰越は行ったものの,双方向変換を活用したwebアプリケーション作成フレームワークのプロトタイプを作成することができた.また,本研究の基盤技術の一つである双方向変換言語の埋め込み実装技術に関する論文は本分野のトップレベル会議の一つであるICFP 2023に採録された.他にも過去にOOPSLA 2021で発表した論文のジャーナル版がFMSD誌に採録されている.
以上のことから「おおむね順調に進展している」と判断した.

Strategy for Future Research Activity

双方向変換を活用したwebアプリケーション作成フレームワークのプロトタイプは得られたものの,その実装および基盤理論は十分に整理されてはいない.そのためその整理を目指す.また,前述の埋め込み実装技術をさらなる発展を目指す.

Report

(1 results)
  • 2022 Annual Research Report
  • Research Products

    (11 results)

All 2023 2022 Other

All Int'l Joint Research (1 results) Journal Article (2 results) (of which Int'l Joint Research: 2 results,  Peer Reviewed: 2 results,  Open Access: 2 results) Presentation (3 results) (of which Int'l Joint Research: 1 results) Remarks (5 results)

  • [Int'l Joint Research] University of Bristol/Imperial College London(英国)

    • Related Report
      2022 Annual Research Report
  • [Journal Article] Embedding by Unembedding2023

    • Author(s)
      Kazutaka Matsuda, Samantha Frohlich, Meng Wang, Nicolas Wu
    • Journal Title

      Proceedings of the ACM on Programming Languages

      Volume: 7(ICFP) Issue: ICFP Pages: 1-47

    • DOI

      10.1145/3607830

    • Related Report
      2022 Annual Research Report
    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Journal Article] Synbit: synthesizing bidirectional programs using unidirectional sketches2022

    • Author(s)
      Masaomi Yamaguchi, Kazutaka Matsuda, Cristina David, Meng Wang
    • Journal Title

      Formal Methods in System Design

      Volume: 61(2) Issue: 2-3 Pages: 198-247

    • DOI

      10.1007/s10703-023-00436-9

    • Related Report
      2022 Annual Research Report
    • Peer Reviewed / Open Access / Int'l Joint Research
  • [Presentation] Lenses for Web Applications2023

    • Author(s)
      Zihang Ye, Kazutaka Matsuda
    • Organizer
      第25回プログラミングおよびプログラミング言語ワークショップ(ポスター)
    • Related Report
      2022 Annual Research Report
  • [Presentation] Kalpis: An Arrow Metalanguage for Partially Invertible Computation2023

    • Author(s)
      Anders Agren Thune, Kazutaka Matsuda, Meng Wang
    • Organizer
      第25回プログラミングおよびプログラミング言語ワークショップ(ポスター)
    • Related Report
      2022 Annual Research Report
  • [Presentation] Embedding by Unembedding2023

    • Author(s)
      Kazutaka Matsuda, Samantha Frohlich, Meng Wang, Nicolas Wu
    • Organizer
      The 28th ACM SIGPLAN International Conference on Functional Programming
    • Related Report
      2022 Annual Research Report
    • Int'l Joint Research
  • [Remarks] Embedding by Unembeddingのプロトタイプ実装

    • URL

      https://github.com/kztk-m/EbU

    • Related Report
      2022 Annual Research Report
  • [Remarks] Embedding by Unembeddingのプロトタイプ実装を利用した埋め込みの例

    • URL

      https://github.com/kztk-m/EbU-examples

    • Related Report
      2022 Annual Research Report
  • [Remarks] Symbitの実装

    • URL

      https://github.com/masaomi-yamaguchi/synbit

    • Related Report
      2022 Annual Research Report
  • [Remarks] 双方向変換を活用したwebアプリケーション作成フレームワークのプロトタイプ実装

    • URL

      https://github.com/peter-jerry-ye/elmapp

    • Related Report
      2022 Annual Research Report
  • [Remarks] 研究代表者webページ

    • URL

      https://www2.sf.ecei.tohoku.ac.jp/~kztk/

    • Related Report
      2022 Annual Research Report

URL: 

Published: 2022-04-19   Modified: 2024-12-25  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi