• 研究課題をさがす
  • 研究者をさがす
  • KAKENの使い方
  1. 課題ページに戻る

2018 年度 実績報告書

双方向変換記述のための高階関数プログラミング言語

研究課題

研究課題/領域番号 15K15966
研究機関東北大学

研究代表者

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

研究期間 (年度) 2015-04-01 – 2019-03-31
キーワードプログラミング言語 / 関数プログラミング / 双方向変換 / 双方向プログラミング / 可逆プログラミング / 領域特化言語
研究実績の概要

双方向変換は,通常の順方向の変換と,変換後のデータに対する更新を元データへと書き戻す逆方向の変換の二つからなる.双方向変換は,ビュー更新や異なる形式のデータの同期等に応用を持つ.双方向変換には通常の意味での高階双方向変換が存在しないことが知られており,これまで高階双方向変換プログラミング言語は知られていない.本研究の目的は,通常の高階関数を用いて双方向変換を組み合わせることが可能になるようなプログラミング言語の設計・実装である.

本年度は,国際会議European Symposium on Programming (ESOP)にて,高階双方向プログラミング言語HOBiTについて発表を行った.この言語ではユーザは高階関数を用いて双方向変換を組み合わせることによりより大きな双方向変換を現実的なコストで記述することが可能である.この言語の設計は,研究代表者らの過去の成果の一つApplicative Lensフレームワーク (ICFP 2015で発表)を元にしているが,これについてはジャーナル版がJournal of Functional Programmingに本年度採録された.また,国際会議Haskell Symposiumでおいて,研究代表者らの過去の成果であるFliPprシステム(ESOP 2013で発表)の埋め込み実装を示した.これまで,可逆/双方向プログラミング言語の高階抽象構文を用いた埋め込みはあまり知られていなかったが,本研究は一つのケーススタディを示した.また,前述のFliPprシステムについては,ジャーナル版がNew Generation Computingに本年度採録された.

また,学生との共同研究の成果がプログラミングおよびプログラミング言語ワークショップにて発表された.この成果は,双方向変換と関連が深い,量子プログラミング言語の埋め込み実装に関するものである.

  • 研究成果

    (13件)

すべて 2018 その他

すべて 国際共同研究 (1件) 雑誌論文 (4件) (うち国際共著 4件、 査読あり 4件、 オープンアクセス 1件) 学会発表 (3件) 備考 (5件)

  • [国際共同研究] ブリストル大学(英国)

    • 国名
      英国
    • 外国機関名
      ブリストル大学
  • [雑誌論文] Applicative bidirectional programming2018

    • 著者名/発表者名
      Kazutaka Matsuda, Meng Wang
    • 雑誌名

      Journal of Functional Programming

      巻: 28 ページ: 1~49

    • DOI

      10.1017/S0956796818000096

    • 査読あり / 国際共著
  • [雑誌論文] FliPpr: A System for Deriving Parsers from Pretty-Printers2018

    • 著者名/発表者名
      Kazutaka Matsuda, Meng Wang
    • 雑誌名

      New Generation Computing

      巻: 36 ページ: 173~202

    • DOI

      10.1007/s00354-018-0033-7

    • 査読あり / 国際共著
  • [雑誌論文] HOBiT: Programming Lenses Without Using Lens Combinators2018

    • 著者名/発表者名
      Kazutaka Matsuda, Meng Wang
    • 雑誌名

      Programming Languages and Systems - 27th European Symposium on Programming, ESOP 2018,

      巻: なし ページ: 31~59

    • DOI

      10.1007/978-3-319-89884-1_2

    • 査読あり / オープンアクセス / 国際共著
  • [雑誌論文] Embedding invertible languages with binders: a case of the FliPpr language2018

    • 著者名/発表者名
      Kazutaka Matsuda, Meng Wang
    • 雑誌名

      Proceedings of the 11th ACM SIGPLAN International Symposium on Haskell

      巻: なし ページ: 158~171

    • DOI

      10.1145/3242744.3242758

    • 査読あり / 国際共著
  • [学会発表] 負型と分数型を持つ線形型付き可逆プログラミング言語とその並行計算に基づく意味論2018

    • 著者名/発表者名
      八木 颯, 松田 一孝
    • 学会等名
      日本ソフトウェア科学会第 35 回大会(ポスター)
  • [学会発表] Linear Quipper: 埋め込み線形型付き量子プログラミング言語2018

    • 著者名/発表者名
      菅野 翔太, 松田 一孝
    • 学会等名
      日本ソフトウェア科学会第35回大会
  • [学会発表] Linear Quipper: 埋め込み線形型付き量子プログラミング言語2018

    • 著者名/発表者名
      菅野 翔太,松田 一孝,Oleg Kiselyov
    • 学会等名
      第21回プログラミングおよびプログラミング言語ワークショップ(査読有り)
  • [備考] 研究代表者webページ

    • URL

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

  • [備考] HOBiTの実装

    • URL

      https://bitbucket.org/kztk/hibx

  • [備考] FliPprシステムの実装

    • URL

      https://bitbucket.org/kztk/flippr

  • [備考] 埋め込み版FliPprの実装

    • URL

      https://bitbucket.org/kztk/flippre

  • [備考] Applicative Lensフレームワークの実装

    • URL

      https://bitbucket.org/kztk/app-lens

URL: 

公開日: 2019-12-27  

サービス概要 検索マニュアル よくある質問 お知らせ 利用規程 科研費による研究の帰属

Powered by NII kakenhi