研究課題/領域番号 |
20K11752
|
研究機関 | 芝浦工業大学 |
研究代表者 |
篠埜 功 芝浦工業大学, 工学部, 教授 (10362021)
|
研究期間 (年度) |
2020-04-01 – 2023-03-31
|
キーワード | 構文補完 / LR構文解析 / 構文解析器生成系 / 文法 / 生成規則 / プログラミングツール |
研究実績の概要 |
2021年度は、全南大学校のKwanghoon Choi教授とともに、国際会議ACM Partial Evaluation and Program Manipulation(PEPM2021)で発表を行ったLR構文解析に基づく構文補完方式について、現実に用いられている言語へ適用することを目指し、改良を行った。まず、PEPM2021で発表した方式をHaskell、C、Small Basic等の言語に適用した。それぞれの言語について、数百行程度の入力途中のプログラムを作成し、計算される補完候補を確認した。その結果、プログラマが通常期待する候補が計算されない場合があり、補完候補計算方式の改良を行った。PEPM2021で発表した方式は、カーソル位置までのソースコードの最後の入力途中の構文を補うことを意図し、カーソル位置まで構文解析を行った時点のスタック上の終端あるいは非終端の記号列の何らかの接尾辞と連結することによって、言語の文法のどれかの生成規則の右辺と一致するような、終端あるいは非終端の記号列を補完候補にするというものであった。この方式だと、例えばブロック文の開始部分などが補完候補に含まれなくなるという問題がある。そこで、上記の条件を緩和する案をいくつか考案し、実装した。プログラマが通常期待するような補完候補が計算されるようになりつつあるが、現状の実装では、補完候補の計算に長い時間がかかる場合があり、1秒など一定時間内で計算された候補のみをプログラマに提示するということを検討している。また、改良した補完候補計算方式について、雑誌論文の投稿の準備を行った。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
2: おおむね順調に進展している
理由
構文解析器の内部状態を用いたコード補完方式の考案および実装が本研究課題で取り組む内容であるが、2021年度はいくつかの現実の言語へ適用し、問題点を把握した。
|
今後の研究の推進方策 |
PEPM2021で発表した構文補完方式を拡張し、現実の言語で用いる際の問題点に対する対応をまとめ、雑誌論文に投稿予定である。
|
次年度使用額が生じた理由 |
今年度は国際会議での発表などを行っておらず、次年度使用額が生じた。これと次年度分の助成金を合わせ、国際会議や研究打ち合わせの旅費、参加費等に用いる。
|