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

文脈の変化に応じて離散的に振舞いを変えるソフトウェアのためのプログラミング言語

研究課題

研究課題/領域番号 16K16033
研究種目

若手研究(B)

配分区分基金
研究分野 ソフトウェア
研究機関東京工業大学

研究代表者

青谷 知幸  東京工業大学, 情報理工学院, 助教 (20582919)

研究期間 (年度) 2016-04-01 – 2020-03-31
研究課題ステータス 中途終了 (2019年度)
配分額 *注記
4,030千円 (直接経費: 3,100千円、間接経費: 930千円)
2018年度: 1,170千円 (直接経費: 900千円、間接経費: 270千円)
2017年度: 1,170千円 (直接経費: 900千円、間接経費: 270千円)
2016年度: 1,690千円 (直接経費: 1,300千円、間接経費: 390千円)
キーワードプログラミング / 文脈指向プログラミング / 余作用 / 反応型プログラミング / ワークフロー計算 / 余エフェクト計算 / 補償処理 / mixin / プログラミング言語 / モジュール化 / 意味論 / プログラム検査
研究実績の概要

文脈指向プログラミング言語のための計算体系λVへのMLモジュールの導入と、文脈指向プログラミングと反応型プログラミングの融合の研究に取り組んだ。

λVLでは文脈ごとに振る舞いの変わるプログラムを表現するために、文脈ごとの値の積を用いている。関数も値であるため、文脈ごとに振る舞いの変わる関数は、文脈ごとの関数の積として表現することができる。言い換えると、それぞれの関数定義の中に文脈ごとの振る舞いを記述する。この方法では文脈ごとにプログラムをモジュール化することができない。例えばプログラムの版(バージョン)を文脈とみなすと、版ごとにプログラムを開発できず、関数ごとに各版における定義を列挙することになり、扱いづらい。MLモジュールの導入の足がかりとして全称量化子と存在量化子をλVLに余作用として導入することを考察し、情報処理学会の第124回プログラミング研究発表会で発表した。

反応型プログラミングは値の変化に反応した計算を計画する手法である。文脈は時々刻々と変化するために、反応型プログラミングと文脈指向プログラミングは相性が良いはずである。例えばバッテリ残量に合わせてプログラムの振る舞いを変えたり、サーバプログラムを再起動することなく更新することでサーバプログラムの振る舞いが変わることが考えられる。融合方法のアイデアを国際研究集会COP'19で発表した。また反応型プログラミングにおいて値の変化を記録するために時系列データベースとの融合を提案し、国際会議Onward! 2019で発表した。

報告書

(4件)
  • 2019 実績報告書
  • 2018 実施状況報告書
  • 2017 実施状況報告書
  • 2016 実施状況報告書
  • 研究成果

    (17件)

すべて 2019 2018 2017 2016

すべて 雑誌論文 (8件) (うち査読あり 7件、 オープンアクセス 2件) 学会発表 (9件) (うち国際学会 4件)

  • [雑誌論文] TinyCORP: A Calculus for Context-Oriented Reactive Programming2019

    • 著者名/発表者名
      Tetsuo Kamina, Tomoyuki Aotani
    • 雑誌名

      COP '19: Proceedings of the Workshop on Context-oriented Programming

      巻: 1 ページ: 1-8

    • DOI

      10.1145/3340671.3343356

    • 関連する報告書
      2019 実績報告書
    • 査読あり
  • [雑誌論文] An Approach for Persistent Time-Varying Values2019

    • 著者名/発表者名
      Tetsuo Kamina, Tomoyuki Aotani
    • 雑誌名

      Onward! 2019: Proceedings of the 2019 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software

      巻: 1 ページ: 17-31

    • DOI

      10.1145/3359591.3359730

    • 関連する報告書
      2019 実績報告書
    • 査読あり
  • [雑誌論文] ContextWorkflow: A Monadic DSL for Compensable and Interruptible Executions2018

    • 著者名/発表者名
      Inoue, Hiroaki ; Aotani, Tomoyuki ; Igarashi, Atsushi
    • 雑誌名

      Leibniz International Proceedings in Informatics (LIPIcs)

      巻: 109

    • DOI

      10.4230/LIPIcs.ECOOP.2018.2

    • 関連する報告書
      2018 実施状況報告書
    • 査読あり / オープンアクセス
  • [雑誌論文] A Context-Oriented Programming Approach to Dependency Hell2018

    • 著者名/発表者名
      Tanabe Yudai、Aotani Tomoyuki、Masuhara Hidehiko
    • 雑誌名

      COP '18

      巻: 1 ページ: 14-8

    • DOI

      10.1145/3242921.3242923

    • 関連する報告書
      2018 実施状況報告書
    • 査読あり
  • [雑誌論文] Method safety mechanism for asynchronous layer deactivation2018

    • 著者名/発表者名
      Kamina Tetsuo、Aotani Tomoyuki、Masuhara Hidehiko、Igarashi Atsushi
    • 雑誌名

      Science of Computer Programming

      巻: 156 ページ: 104-120

    • DOI

      10.1016/j.scico.2018.01.006

    • 関連する報告書
      2017 実施状況報告書
    • 査読あり
  • [雑誌論文] Harmonizing Signals and Events with a Lightweight Extension to Java2018

    • 著者名/発表者名
      Kamina Tetsuo、Aotani Tomoyuki
    • 雑誌名

      The Art, Science, and Engineering of Programming

      巻: 2 号: 3

    • DOI

      10.22152/programming-journal.org/2018/2/5

    • 関連する報告書
      2017 実施状況報告書
    • 査読あり / オープンアクセス
  • [雑誌論文] Push-based reactive layer activation in context-oriented programming2017

    • 著者名/発表者名
      Kamina Tetsuo、Aotani Tomoyuki、Masuhara Hidehiko
    • 雑誌名

      Proceedings of the 9th International Workshop on Context-Oriented Programming (COP'17)

      巻: 9 ページ: 17-21

    • DOI

      10.1145/3117802.3117805

    • 関連する報告書
      2017 実施状況報告書
    • 査読あり
  • [雑誌論文] A DSL for compensable and interruptible executions2017

    • 著者名/発表者名
      Inoue Hiroaki、Aotani Tomoyuki、Igarashi Atsushi
    • 雑誌名

      Proceedings of the 4th ACM SIGPLAN International Workshop on Reactive and Event-Based Languages and Systems

      巻: 0 ページ: 8-14

    • DOI

      10.1145/3141858.3141860

    • 関連する報告書
      2017 実施状況報告書
  • [学会発表] コエフェクト計算に基づく量化型の再形式化2019

    • 著者名/発表者名
      田辺 裕大
    • 学会等名
      情報処理学会プログラミング研究会第124回プログラミング研究発表会
    • 関連する報告書
      2019 実績報告書
  • [学会発表] ContextWorkflow: A Monadic DSL for Compensable and Interruptible Executions2018

    • 著者名/発表者名
      Inoue, Hiroaki
    • 学会等名
      ECOOP 2018
    • 関連する報告書
      2018 実施状況報告書
    • 国際学会
  • [学会発表] A Context-Oriented Programming Approach to Dependency Hell2018

    • 著者名/発表者名
      Tanabe Yudai
    • 学会等名
      COP '18
    • 関連する報告書
      2018 実施状況報告書
    • 国際学会
  • [学会発表] 証明支援器Coqを使ったプログラミング言語の操作的意味論に基づく型安全性の拡張可能な形式化の研究2018

    • 著者名/発表者名
      奥河 諒, 青谷 知幸, 増原 英彦
    • 学会等名
      プログラミングおよびプログラミング言語ワークショップ
    • 関連する報告書
      2017 実施状況報告書
  • [学会発表] ContextWorkflow: 中断と償いのためのDSL2018

    • 著者名/発表者名
      井上 裕昭, 青谷 知幸, 五十嵐 淳
    • 学会等名
      プログラミングおよびプログラミング言語ワークショップ
    • 関連する報告書
      2017 実施状況報告書
  • [学会発表] プログラミング言語へのバージョンの導入の研究2018

    • 著者名/発表者名
      田辺 裕大, 青谷 知幸, 増原 英彦
    • 学会等名
      プログラミングおよびプログラミング言語ワークショップ
    • 関連する報告書
      2017 実施状況報告書
  • [学会発表] イベントとシグナルを統合したJavaの軽量な拡張SignalJ2017

    • 著者名/発表者名
      紙名 哲生, 青谷 知幸
    • 学会等名
      第19回プログラミングおよびプログラミング言語ワークショップ(PPL2017)
    • 発表場所
      山梨県笛吹市石和温泉
    • 関連する報告書
      2016 実施状況報告書
  • [学会発表] Towards Modular Reasoning for Context-Oriented Programs2016

    • 著者名/発表者名
      Tomoyuki Aotani and Gary Leavens
    • 学会等名
      The 18th Workshop on Formal Techniques for Java-like Programs
    • 発表場所
      Rome, Italy
    • 関連する報告書
      2016 実施状況報告書
    • 国際学会
  • [学会発表] Towards Automatic Decoration2016

    • 著者名/発表者名
      Tomoyuki Aotani and Tetsuo Kamina
    • 学会等名
      The -1th Workshop on New Object-Oriented Languages (NOOL) 2016
    • 発表場所
      Amsterdam, The Netherlands
    • 関連する報告書
      2016 実施状況報告書
    • 国際学会

URL: 

公開日: 2016-04-21   更新日: 2021-01-27  

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

Powered by NII kakenhi