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

2018 Fiscal Year Annual Research Report

Staged Computing based on Advanced Type Systems

Research Project

Project/Area Number 18H03218
Research InstitutionUniversity of Tsukuba

Principal Investigator

亀山 幸義  筑波大学, システム情報系, 教授 (10195000)

Co-Investigator(Kenkyū-buntansha) 浅井 健一  お茶の水女子大学, 基幹研究院, 准教授 (10262156)
Kiselyov Oleg  東北大学, 情報科学研究科, 助教 (50754602)
Project Period (FY) 2018-04-01 – 2022-03-31
Keywords多段階計算 / プログラム生成 / 先進的型システム / 多相型 / 一般化代数データ型 / 型安全性 / スクープ安全性 / 計算エフェクト
Outline of Annual Research Achievements

4年間の研究計画の初年度にあたり、先進的型システムをもつ言語をターゲット言語とするプログラム生成の安全性、特に、型安全性とスコープ安全性に関する基礎理論の考察を行った。
ML系プログラム言語が持つlet多相とコード生成と計算エフェクトの3つを併せ持つプログラム言語に対して、素朴な型システムを想定すると、型安全性が壊れることが知られている。そこで、本研究では、このような組み合わせのプログラム言語は、アプリケーション記述において必要、もしくは、有用であることを明らかにし、ついで、このようなアプリケーションを記述できる程度に表現力が強く、かつ、型安全性が成立する程度に制限が効いている言語と型システムを設計した、伝統的に「値制限」と呼ばれる多相型の導入法と、「緩い値制限」と呼ばれる導入法のそれぞれに対して、自然でプログラマにとってわかりやすい制限をもうけて、結果として型安全性をもつ型システムを実現した。このうち、値制限に基づく方法は見通しの良い証明がつくが、緩い値制限に基づく方法は非常に難解な証明が必要であるため、本研究では、サブサンプションとよばれる規則を追加することとした。このルール自体が意味論的に健全であることの証明は次年度以降に行う。
このほか、依存型を持つプログラム言語に対して部分計算などのメタプログラミングを行う場合の型安全性の確保や、近年研究が非常に盛んになっている「代数的効果とハンドラ」に基づいて、プログラム生成との関係や他の言語へのプログラム変換や型の保存性などについて検討を行った。

Current Status of Research Progress
Current Status of Research Progress

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

Reason

本研究はプログラム生成に関する基礎理論から言語設計・実装、そして、アプリケーションの記述までを含んだものであり、本年度の研究では、多相型をもつプログラムの生成について成果を得た。また、プログラム生成で重要となる計算エフェクトの研究においては、「代数的効果とハンドラー」をML系言語に翻訳したり、故ルーティンを持つ言語に変換する研究を行い、そこでも先進的型システムの役割の重要性を解き明かした。これらの成果の論文発表は来年度以降となるが、本研究の中間をなす部分で成果を得ており、研究は順調に進展していると判定した。

Strategy for Future Research Activity

初年度で得られた基礎理論に基づき多相型を持つプログラムの生成については、型安全に行える言語を得ており、これをプログラム言語として実装し、アプリケーションを記述する必要がある。
2年目以降は、多相型以外の重要な型である一般化代数データ型や依存型を持つプログラムの生成について検討し、初年度と同様な成果を得ることを目標とする。

  • Research Products

    (13 results)

All 2019 2018 Other

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

  • [Int'l Joint Research] Cambridge Univesrity(英国)

    • Country Name
      UNITED KINGDOM
    • Counterpart Institution
      Cambridge Univesrity
  • [Journal Article] Extracting a Call-by-Name Partial Evaluator from a Proof of Termination2019

    • Author(s)
      Kenichi Asai
    • Journal Title

      ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation (PEPM '19)

      Volume: - Pages: 61-67

    • DOI

      10.1145/3294032.3294084

    • Peer Reviewed
  • [Journal Article] Generating Mutually Recursive Definitions2019

    • Author(s)
      Jeremy Yallop, Oleg Kiselyov
    • Journal Title

      Proceedings of the 2019 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation

      Volume: - Pages: 75-81

    • DOI

      10.1145/3294032.3294078

    • Peer Reviewed / Int'l Joint Research
  • [Journal Article] Meta-Programming for Statistical Machine Learning2018

    • Author(s)
      Oleg Kiselyov, Tiark Rompf, Jennifer Neville, Yukiyoshi Kameyama
    • Journal Title

      NII Shonan Seminar Report,

      Volume: No. 2018-7 Pages: -

    • Int'l Joint Research
  • [Journal Article] Handling Delimited Continuations with Dependent Types2018

    • Author(s)
      Youyou Cong, and Kenichi Asai
    • Journal Title

      Proceedings of the ACM on Programming Languages

      Volume: Vol. 2, Issue ICFP Pages: 31

    • DOI

      10.1145/3236764

    • Peer Reviewed / Open Access
  • [Journal Article] Certifying CPS Transformation of Let-polymorphic Calculus Using PHOAS2018

    • Author(s)
      Urara Yamada, and Kenichi Asai
    • Journal Title

      16th Asian Symposium on Programming Languages and Systems (APLAS 2018),LNCS 11275

      Volume: - Pages: 375-393

    • DOI

      10.1007/978-3-030-02768-1_20

    • Peer Reviewed
  • [Journal Article] Functional Stream Libraries and Fusion: What's Next?2018

    • Author(s)
      Aggelos Biboudis (EPFL, Switzerland), Oleg Kiselyov, Martin Odersky (EPFL, Switzerland)
    • Journal Title

      NII Shonan Seminar Report

      Volume: No.2018-14 Pages: -

    • Int'l Joint Research
  • [Presentation] Polymorphic Staged Calculus with Cross-Stage Persistence and Side Effects2019

    • Author(s)
      菊地 綾音,亀山 幸義
    • Organizer
      情報処理学会第122回プログラミング研究発表会
  • [Presentation] 動的変数をもつ依存型付きラムダ計算2019

    • Author(s)
      叢 悠悠、浅井 健一
    • Organizer
      第21回プログラミングおよびプログラミング言語ワークショップ論文集
  • [Presentation] shift/reset のための selective CPS 変換の正当性 の証明2019

    • Author(s)
      石尾 千晶、浅井 健一
    • Organizer
      第21回プログラミングおよびプログラミング言語ワークショップ論文集
  • [Presentation] セッション型、簡潔に2019

    • Author(s)
      オレッグ キセリョーヴ 今井 敬吾
    • Organizer
      第21回プログラミングおよびプログラミング言語ワークショップ (poster)
  • [Presentation] A Lightweight Approach to Module Generation2018

    • Author(s)
      Yukiyoshi Kameyama
    • Organizer
      IFIP Working Group 2.11, 18th meeting (Kyoto, Japan)
    • Int'l Joint Research
  • [Presentation] Session types without sophistry2018

    • Author(s)
      Oleg Kiselyov
    • Organizer
      IFIP Working Group 2.11, 18th meeting (Kyoto, Japan)
    • Int'l Joint Research

URL: 

Published: 2019-12-27  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi