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

2018 年度 実施状況報告書

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

研究課題

研究課題/領域番号 16K16033
研究機関東京工業大学

研究代表者

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

研究期間 (年度) 2016-04-01 – 2020-03-31
キーワード文脈指向プログラミング / 反応型プログラミング / ワークフロー計算 / 余エフェクト計算
研究実績の概要

前年度に引き続いて,文脈の時々刻々たる変化に応じて振舞いを変える仕組みのために関数的反応型プログラミング(FRP)と文脈指向プログラミング(COP)の融合を研究した.また文脈依存計算の考え方に基づくCOPの研究に取り組んだ.

振舞いの切替は単純ではない.例としてスマートフォン上での画像の拡大縮小を考える.文脈はバッテリ残量とする.余裕があるときは高品質の,ないときは低品質な拡大縮小を行う.拡大縮小計算中にバッテリ残量が余裕に関する閾値を下回った時,即座に対応してしまうと,高品質な計算と低品質な計算が混ざって奇妙な画像が生成されてしまう.拡大縮小計算を行い始めた直後なら,高品質な計算を中断して,新たに低品質な計算を行うのが妥当である.一般化すると,計算の部分的な棄却(checkpointing),計算の全体的な棄却(abort),そして計算の休止(suspend)の三つの方法が考えられる.また計算の一部または全体を棄却するさい,計算に伴う副作用を打ち消す必要がある.副作用の打ち消しのために補償処理(compensation)が有効であると判断し,ワークフロー計算にcheckpointing, abort,そしてsuspendを入れた計算体系ContextWorkflowを開発し,またプログラミング言語として実装した.実装はHaskell, PurescriptおよびScalaで行った.研究成果を纏めた論文はECOOP 2018に採択された.また性質の異なる言語での実装が評価されて,Distinguished Artifact Awardに選ばれた.

文脈依存計算はCOPとは独立した研究分野で,FRPの基礎であり,余エフェクト計算として形式化できる.余エフェクト計算を拡張してCOPを実現する試みを行い,計算体系λVLを開発した.研究成果を纏めた論文はCOP'18に採択された.

現在までの達成度 (区分)
現在までの達成度 (区分)

3: やや遅れている

理由

時々刻々と変化する文脈に応じて振舞いを変えるアプリケーションを一つ以上開発する予定だったが,既存のモジュール・システムと,本研究で開発した計算体系の相性が悪く,単純には混ぜられないことがわかった.

今後の研究の推進方策

モジュール・システムの基礎理論を変更して,本研究で開発した計算体系と相性の良い理論を再構築する.具体的にはSystem Fを部分構造型システムとして再構築し,λVLとの融合を目指す.

次年度使用額が生じた理由

研究の遅れに伴い,実装・実験環境のための物品購入と,論文発表についての出張が遅れた.次年度使用額は実装・実験環境のための物品購入と,現在提出中の論文の発表のための出張のために使う予定である.

  • 研究成果

    (4件)

すべて 2018

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

  • [雑誌論文] ContextWorkflow: A Monadic DSL for Compensable and Interruptible Executions2018

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

      Leibniz International Proceedings in Informatics (LIPIcs)

      巻: 109 ページ: 2:1--2:33

    • DOI

      10.4230/LIPIcs.ECOOP.2018.2

    • 査読あり / オープンアクセス
  • [雑誌論文] A Context-Oriented Programming Approach to Dependency Hell2018

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

      COP '18

      巻: 1 ページ: 8--14

    • DOI

      10.1145/3242921.3242923

    • 査読あり
  • [学会発表] ContextWorkflow: A Monadic DSL for Compensable and Interruptible Executions2018

    • 著者名/発表者名
      Inoue, Hiroaki
    • 学会等名
      ECOOP 2018
    • 国際学会
  • [学会発表] A Context-Oriented Programming Approach to Dependency Hell2018

    • 著者名/発表者名
      Tanabe Yudai
    • 学会等名
      COP '18
    • 国際学会

URL: 

公開日: 2019-12-27  

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

Powered by NII kakenhi