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

2016 Fiscal Year Research-status Report

リアルタイム型エラーデバッグの基礎理論と実際

Research Project

Project/Area Number 16K16040
Research InstitutionNational Institute of Informatics

Principal Investigator

対馬 かなえ  国立情報学研究所, アーキテクチャ科学研究系, 特任助教 (80754663)

Project Period (FY) 2016-04-01 – 2019-03-31
Keywords型エラー / デバック / プログラミング言語 / プログラミング補助 / 構文解析
Outline of Annual Research Achievements

本年度は、リアルタイム型エラーデバッグに必要と考えられる基盤技術のうち、「リアルタイム構文解析」と「型エラースライシング」に関する研究を行った。
「リアルタイム構文解析」では漸進的構文解析のように、一部だけ変更されたプログラムに対して構文解析を行う手法を提案した。漸進的構文解析との違いとしては、既存のコンパイラの構文解析器を使用して行う点である。そのため、特殊な構文解析器を作成する必要がなく、既存の言語を対象に一部だけ変更されたプログラムに対する構文解析の実装は容易になった。具体的には、コンパイラの構文解析器を使用して、構文同士の結合度による組み替え・他の構文の略奪の規則を導出し、それらが行われるプログラムを自動的に生成する。括弧等の抽象構文木の時点で失われる情報は人が補う必要があるが、それ以外のプログラムは扱うことができた。
「型エラースライシング」では、これまでに提案した手法の実装および拡張を行った。実装では、関数型言語 OCaml を対象として、実装を完了した。拡張では、これまでプログラムの式のみをスライシングの対象としていたが、パターンのスライシングを行う手法を確立した。この手法の特徴は、これまでに提案した型エラースライシング手法と同様に、プログラムの構文を見ることなく、既存のコンパイラの構文解析器を使って型情報を求め、その型情報を参照して判断することである。それにより、構文情報をたどる必要がなく、実装が容易になった。

Current Status of Research Progress
Current Status of Research Progress

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

Reason

本年度進展のあったリアルタイム構文解析に関してはおおよそ基礎が確立でき、実装と検証の段階である。また型エラースライシングに関しては実装がほぼ完了し、ユーザテストの段階である。

Strategy for Future Research Activity

今後はリアルタイム構文解析と型エラーデバッグを組み合わせ、リアルタイム型エラーデバッグを実現する。型エラースライシングの手法についても早めに定式化し、発表して進展させたい。

  • Research Products

    (2 results)

All 2017 2016

All Presentation (2 results) (of which Int'l Joint Research: 1 results)

  • [Presentation] 既存の構文解析器を利用した漸進的構文解析2017

    • Author(s)
      対馬かなえ
    • Organizer
      情報処理学会 58回プログラミング ・シンポジウム
    • Place of Presentation
      ラフォーレ伊東(静岡県伊東市)
    • Year and Date
      2017-01-06 – 2017-01-08
  • [Presentation] A semi-embedded incremental parsing2016

    • Author(s)
      Kanae Tsushima
    • Organizer
      The 28th symposium on Implementation and Application of Functional Languages (IFL 2016)
    • Place of Presentation
      Leuven(Belgium)
    • Year and Date
      2016-08-31 – 2016-09-02
    • Int'l Joint Research

URL: 

Published: 2018-01-16  

Information User Guide FAQ News Terms of Use Attribution of KAKENHI

Powered by NII kakenhi