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

2018 Fiscal Year Annual Research Report

実用プログラミング言語のための系統的言語開発基盤の実現

Research Project

Project/Area Number 15K15964
Research InstitutionTohoku University

Principal Investigator

上野 雄大  東北大学, 電気通信研究所, 准教授 (60551554)

Project Period (FY) 2015-04-01 – 2019-03-31
KeywordsRuby / SML# / スクリプト言語 / 関数型言語 / 操作的意味論 / コンパイラ
Outline of Annual Research Achievements

本研究では、これまで経験的に開発されてきた実用プログラミング言語に対し、関数型言語の理論研究アプローチを応用し、言語のモジュラーな形式的理解を与え、系統的な言語設計と処理系実装を可能とする枠組みを確立することを目指す。この達成に向けて、本研究では、系統的開発のモデル言語としてSML#を、実用言語としてRubyを選択し、両言語の開発と緻密に連携しながら、Rubyの操作的意味論の系統的導出を目指している。最終年度では、これまでの研究を具体的な成果に繋げることを目標として、以下の2点に取り組んだ。
(1) Ruby開発チームとの共同研究として、2つのRubyプログラムの静的解析方式を開発し、ツールの試作を支援した。そのひとつは抽象解釈に基づく型プロファイラ、もうひとつは漸進的型付けの考え方を取り入れた型検査器である。どちらの静的解析方式も、その開発には、Rubyの意味論に根ざした緻密な分析が必要であった。この分析の一部は本研究課題が提案する実用言語の系統的形式的理解に基づいて行われた。この開発は本研究の具体的応用のひとつであり、この応用を通じて提案方式の実用規模の言語に対する適用可能性および有用性は示されたと言える。本共同研究の成果の一部は、Rubyの次期バージョンであるRuby 3に取り込まれることが検討されている。
(2) 本研究が基礎とする関数型言語コンパイラ構築の要素技術を発展させる研究開発を行い、以下の2点の成果を得た。ひとつは、高度な言語機能を実現する基盤となる型主導コンパイル方式を最適化する理論の構築および実装技術の確立である。この研究により、SML#コンパイラが挿入する属性抽象の約8割を削減し、約1割の高速化を達成した。もうひとつは、マシンコードの証明論の考え方を取り入れた、多相関数の新たなコンパイル方式の構築である。その理論的検討と実装は今後の課題である。

  • Research Products

    (4 results)

All 2019 2018 Other

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

  • [Journal Article] 部分動的レコードを活用した型付きテンプレートエンジンの実現2018

    • Author(s)
      逢坂美冬, 上野雄大, 大堀淳
    • Journal Title

      コンピュータソフトウェア

      Volume: 35 Pages: 3_79-3_95

    • DOI

      https://doi.org/10.11309/jssst.35.3_79

    • Peer Reviewed / Open Access
  • [Presentation] Progress report: Ruby 3における静的型解析の実現に向けて2019

    • Author(s)
      遠藤侑介, 松本宗太郎, 上野雄大, 住井英二郎, 松本行弘
    • Organizer
      第21回プログラミングおよびプログラミング言語ワークショップ (PPL2019)
  • [Presentation] Finitary Polymorphism for Optimizing Type-Directed Compilation2018

    • Author(s)
      Atsushi Ohori, Katsuhiro Ueno, Hisayuki Mima
    • Organizer
      the 23rd ACM SIGPLAN International Conference on Functional Programming (ICFP'18)
    • Int'l Joint Research
  • [Remarks] SML# Project

    • URL

      https://www.pllab.riec.tohoku.ac.jp/smlsharp/

URL: 

Published: 2019-12-27  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi