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

メッセージの到達性を保証しない通信環境におけるセッション型付きプログラミング

研究課題

研究課題/領域番号 17K12662
研究種目

若手研究(B)

配分区分基金
研究分野 ソフトウェア
研究機関岐阜大学

研究代表者

今井 敬吾  岐阜大学, 工学部, 助教 (70456630)

研究期間 (年度) 2017-04-01 – 2022-03-31
研究課題ステータス 完了 (2021年度)
配分額 *注記
4,030千円 (直接経費: 3,100千円、間接経費: 930千円)
2020年度: 780千円 (直接経費: 600千円、間接経費: 180千円)
2019年度: 1,040千円 (直接経費: 800千円、間接経費: 240千円)
2018年度: 910千円 (直接経費: 700千円、間接経費: 210千円)
2017年度: 1,300千円 (直接経費: 1,000千円、間接経費: 300千円)
キーワード並行システム / 通信プロトコル / セッション型 / 関数型プログラミング / ドメイン特化言語 / 並行計算 / OCaml / 型システム / メタプログラミング / ステージ計算 / モナド / 線形型 / 構文拡張 / デッドロック / 型理論 / プロトコル
研究成果の概要

本研究の成果は主に次の通りである:(1) 2者間の通信を扱うセッション型を扱う枠組みを,OCaml言語およびC#言語において実現した.さらに,(2) 3者以上の通信を扱うマルチパーティセッション型を実現した.(1) の成果は国際会議 FLOPS 2020, (2) の成果はトップレベル会議 ECOOP 2020 および TACAS 2022 において採択された.さらに,(2) を通信のタイムアウトの抽象的な表現と見なせるmixed choiceへと拡張し,メッセージの到達性を保証しない環境における通信プログラミングの基本的な枠組みを与えることができた.

研究成果の学術的意義や社会的意義

本研究の主要な学術的意義は,セッション型の多彩な実現手法とその特徴を明らかにしたことと,その具体的な実装を与えたことである.セッション型は,既存のプログラミング言語の型とは大きなギャップが存在した.本研究により,そのままでは信頼性高く構築することが困難な並行・分散プログラムを,プログラミング言語の主要な信頼性保証技法である「型」の枠組みで,安全に効率よく開発できることが期待される.さらに,本研究が最終的に実現したmixed choiceの枠組みを発展させることで,メッセージの到達性を保証しない環境における通信プログラミング手法の確立が強く期待できる.

報告書

(6件)
  • 2021 実績報告書   研究成果報告書 ( PDF )
  • 2020 実施状況報告書
  • 2019 実施状況報告書
  • 2018 実施状況報告書
  • 2017 実施状況報告書
  • 研究成果

    (38件)

すべて 2022 2021 2020 2019 2018 2017 その他

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

  • [国際共同研究] Imerial College London/Brunel University London/University of London Royal Holloway(英国)

    • 関連する報告書
      2021 実績報告書
  • [国際共同研究] Imperial College London/Brunel University London(英国)

    • 関連する報告書
      2019 実施状況報告書
  • [国際共同研究] Imperial College London/Brunel University London(英国)

    • 関連する報告書
      2018 実施状況報告書
  • [国際共同研究] Imperial College London(英国)

    • 関連する報告書
      2017 実施状況報告書
  • [雑誌論文] Kmclib: Automated Inference and Verification of Session Types from OCaml Programs2022

    • 著者名/発表者名
      Keigo Imai, Julien Lange, Rumyana Neykova
    • 雑誌名

      TACAS 2022: Tools and Algorithms for the Construction and Analysis of Systems, Lecture Notes in Computer Science

      巻: 13243 ページ: 379-386

    • DOI

      10.1007/978-3-030-99524-9_20

    • ISBN
      9783030995232, 9783030995249
    • 関連する報告書
      2021 実績報告書
    • 査読あり / オープンアクセス / 国際共著
  • [雑誌論文] Multiparty Session Programming with Global Protocol Combinators2020

    • 著者名/発表者名
      Keigo Imai, Rumyana Neykova, Nobuko Yoshida, Shoji Yuen
    • 雑誌名

      ECOOP 2020: 34th European Conference on Object-Oriented Programming

      巻: 2020

    • 関連する報告書
      2020 実施状況報告書
    • 査読あり / オープンアクセス / 国際共著
  • [雑誌論文] Session Types Without Sophistry2020

    • 著者名/発表者名
      Kiselyov Oleg、Imai Keigo
    • 雑誌名

      Lecture Notes in Computer Science

      巻: 12073 ページ: 66-87

    • DOI

      10.1007/978-3-030-59025-3_5

    • ISBN
      9783030590246, 9783030590253
    • 関連する報告書
      2020 実施状況報告書
    • 査読あり / オープンアクセス / 国際共著
  • [雑誌論文] Fluent Session Programming in C#2020

    • 著者名/発表者名
      Shunsuke Kimura, Keigo Imai
    • 雑誌名

      PLACES 2020: Proceedings of the 12th International Workshop on Programming Language Approaches to Concurrency and Communication-cEntric Software, Dublin, Ireland

      巻: 314 ページ: 61-75

    • DOI

      10.4204/eptcs.314.6

    • 関連する報告書
      2020 実施状況報告書 2019 実施状況報告書
    • 査読あり / オープンアクセス
  • [雑誌論文] Session Types without Sophistry (System Description)2020

    • 著者名/発表者名
      Oleg Kiselyov, Keigo Imai
    • 雑誌名

      15th International Symposium on Functional and Logic Programming (FLOPS 2020)

      巻: -

    • 関連する報告書
      2019 実施状況報告書
    • 査読あり
  • [雑誌論文] Multiparty Session Programming with Global Protocol Combinators2020

    • 著者名/発表者名
      Keigo Imai, Rumyana Neykova, Nobuko Yoshida, Shoji Yuen
    • 雑誌名

      34th European Conference on Object-Oriented Programming (ECOOP 2020)

      巻: -

    • 関連する報告書
      2019 実施状況報告書
    • 査読あり / オープンアクセス / 国際共著
  • [雑誌論文] Lightweight Linearly-typed Programming with Lenses and Monads2019

    • 著者名/発表者名
      Keigo Imai, Jacques Garrigue
    • 雑誌名

      Journal of Information Processing

      巻: 27 号: 0 ページ: 431-444

    • DOI

      10.2197/ipsjjip.27.431

    • NAID

      130007663763

    • 関連する報告書
      2019 実施状況報告書
    • 査読あり / オープンアクセス
  • [雑誌論文] Session-ocaml: A session-based library with polarities and lenses2019

    • 著者名/発表者名
      Imai Keigo、Yoshida Nobuko、Yuen Shoji
    • 雑誌名

      Science of Computer Programming

      巻: 172 ページ: 135-159

    • DOI

      10.1016/j.scico.2018.08.005

    • 関連する報告書
      2018 実施状況報告書
    • 査読あり / オープンアクセス / 国際共著
  • [雑誌論文] Towards Bidirectional Synchronization Between Communicating Processes and Session Types2019

    • 著者名/発表者名
      Guo Liye、Ko Hsiang-Shang、Imai Keigo、Yoshida Nobuko、Hu Zhenjiang
    • 雑誌名

      SFDI2019: Second Workshop on Software Foundations for Data Interoperability (In proceedings of 2019 IEEE International Conference on Big Data and Smart Computing (BigComp))

      巻: - ページ: 1-5

    • DOI

      10.1109/bigcomp.2019.8679265

    • 関連する報告書
      2018 実施状況報告書
    • 査読あり
  • [雑誌論文] Lightweight linearly-typed programming with lenses and monads2019

    • 著者名/発表者名
      Imai Keigo、Jacques Garrigue
    • 雑誌名

      Journal of Information Processing

      巻: 印刷中

    • NAID

      130007663763

    • 関連する報告書
      2018 実施状況報告書
    • オープンアクセス
  • [雑誌論文] Session-ocaml: A Session-Based Library with Polarities and Lenses2017

    • 著者名/発表者名
      Imai Keigo、Yoshida Nobuko、Yuen Shoji
    • 雑誌名

      Lecture Notes in Computer Science

      巻: 10319 ページ: 99-118

    • DOI

      10.1007/978-3-319-59746-1_6

    • ISBN
      9783319597454, 9783319597461
    • 関連する報告書
      2017 実施状況報告書
    • 査読あり / オープンアクセス / 国際共著
  • [学会発表] Verifying Session-Typed Concurrent Programs using Typed PPX in OCaml2022

    • 著者名/発表者名
      Keigo Imai, Julien Lange, Rumyana Neykova
    • 学会等名
      情報処理学会 第137回プログラミング研究発表会
    • 関連する報告書
      2021 実績報告書
  • [学会発表] Kmclib: Automated Inference and Verification of Session Types (PPL Category 2)2022

    • 著者名/発表者名
      Keigo Imai, Julien Lange, Rumyana Neykova
    • 学会等名
      PPL 2022: 第 24 回プログラミングおよびプログラミング言語ワークショップ
    • 関連する報告書
      2021 実績報告書
  • [学会発表] OCamlのための構文上の穴を用いたアドホック多相のプリプロセッサによる実装 (ポスター)2022

    • 著者名/発表者名
      伊藤 将希, 今井 敬吾
    • 学会等名
      PPL 2022: 第 24 回プログラミングおよびプログラミング言語ワークショップ
    • 関連する報告書
      2021 実績報告書
  • [学会発表] Polymorphic Multiparty Session Handlers in OCaml2022

    • 著者名/発表者名
      Keigo Imai
    • 学会等名
      PLACES 2022: 13th Workshop on Programming Language Approaches to Concurrency- & Communication-cEntric Software
    • 関連する報告書
      2021 実績報告書
    • 国際学会
  • [学会発表] 文脈自由マルチパーティセッション型の実装 (ポスター)2022

    • 著者名/発表者名
      木村 駿介, 今井 敬吾
    • 学会等名
      PPL 2022: 第 24 回プログラミングおよびプログラミング言語ワークショップ
    • 関連する報告書
      2021 実績報告書
  • [学会発表] Multiparty Session Programming with Global Protocol Combinators (oral communication)2021

    • 著者名/発表者名
      Keigo Imai, Rumyana Neykova, Nobuko Yoshida, Shoji Yuen
    • 学会等名
      ICE 2021: 14th Interaction and Concurrency Experience, co-located with DisCoTec 2021
    • 関連する報告書
      2021 実績報告書
    • 国際学会
  • [学会発表] Verifying Multiparty Communication Protocols using ML Type Systems2021

    • 著者名/発表者名
      Keigo Imai, Rumyana Neykova, Nobuko Yoshida, Shoji Yuen
    • 学会等名
      ML'21: ML Workshop 2021, co-located with ICFP 2021
    • 関連する報告書
      2021 実績報告書
    • 国際学会
  • [学会発表] 混合選択とタイムアウトで拡張されたマルチパーティセッション型の軽量検査2021

    • 著者名/発表者名
      今井敬吾
    • 学会等名
      第127回プログラミング研究発表会
    • 関連する報告書
      2020 実施状況報告書
  • [学会発表] A Preliminary Study on Locally Concurrent Multiparty Session Types2020

    • 著者名/発表者名
      Keigo Imai
    • 学会等名
      第127回プログラミング研究発表会
    • 関連する報告書
      2019 実施状況報告書
  • [学会発表] セッション型、簡潔に2019

    • 著者名/発表者名
      オレッグ キセリョーヴ、今井 敬吾
    • 学会等名
      第21回プログラミングおよびプログラミング言語ワークショップ(PPL2019)
    • 関連する報告書
      2018 実施状況報告書
  • [学会発表] レンズとモナドを用いた軽量な線形型付きプログラミング2018

    • 著者名/発表者名
      今井 敬吾、ジャック ガリグ
    • 学会等名
      第121回プログラミング研究発表会
    • 関連する報告書
      2018 実施状況報告書
  • [学会発表] Session types without sophistry2018

    • 著者名/発表者名
      Oleg Kiselyov、Keigo Imai
    • 学会等名
      IFIP Working Group 2.11, Eighteenth Meeting
    • 関連する報告書
      2018 実施状況報告書
  • [学会発表] Session-ocaml: a Session-based Library with Polarities and Lenses2018

    • 著者名/発表者名
      Keigo Imai, Nobuko Yoshida, Shoji Yuen
    • 学会等名
      第20回プログラミングおよびプログラミング言語ワークショップ(PPL2018)
    • 関連する報告書
      2017 実施状況報告書
  • [備考] OCaml-MPST

    • URL

      https://github.com/keigoi/ocaml-mpst

    • 関連する報告書
      2021 実績報告書
  • [備考] Kmclib

    • URL

      https://github.com/keigoi/kmclib

    • 関連する報告書
      2021 実績報告書
  • [備考] <session>

    • URL

      http://okmij.org/ftp/meta-programming/sessions/

    • 関連する報告書
      2020 実施状況報告書
  • [備考] ocaml-mpst

    • URL

      http://github.com/keigoi/ocaml-mpst

    • 関連する報告書
      2020 実施状況報告書
  • [備考] Session C#

    • URL

      https://github.com/curegit/session-csharp

    • 関連する報告書
      2020 実施状況報告書 2019 実施状況報告書
  • [備考] Session types via Staging

    • URL

      http://okmij.org/ftp/meta-programming/sessions/0README.dr

    • 関連する報告書
      2019 実施状況報告書
  • [備考] Multiparty Session Types in OCaml

    • URL

      https://github.com/keigoi/ocaml-mpst

    • 関連する報告書
      2019 実施状況報告書
  • [備考] LinOCaml: Linearly-typed programming in OCaml

    • URL

      https://github.com/keigoi/linocaml/

    • 関連する報告書
      2018 実施状況報告書
  • [備考] session-ocaml homepage

    • URL

      http://www.ct.info.gifu-u.ac.jp/~keigoi/session-ocaml/

    • 関連する報告書
      2017 実施状況報告書
  • [備考] session-ocaml (GitHub)

    • URL

      https://github.com/keigoi/session-ocaml/

    • 関連する報告書
      2017 実施状況報告書

URL: 

公開日: 2017-04-28   更新日: 2023-01-30  

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

Powered by NII kakenhi