2019 Fiscal Year Annual Research Report
A systematic approach to implementing context-sensitive code completion
Project/Area Number |
16K00106
|
Research Institution | Shibaura Institute of Technology |
Principal Investigator |
篠埜 功 芝浦工業大学, 工学部, 准教授 (10362021)
|
Project Period (FY) |
2016-04-01 – 2020-03-31
|
Keywords | 構文補完 / LR構文解析 / derivative / コード補完 / 文脈自由文法 / 文法変換 |
Outline of Annual Research Achievements |
2019年度は、2018年度に発表した構文補完方式を改善し、試験的実装を行い、ACM SIGPLAN 2020 Workshop on Partial Evaluation and Program Manipulation (PEPM2020) という国際会議において成果発表を行った。試験的実装はStandard MLのサブセットに対して行い、web page上で公開している。この構文補完方式は、対象言語のBNFによる構文規則を入力とし、途中までのプログラムの構文を出力する、文法変換による方式である。ただし、試験的実装では文法変換は実装しておらず、手動で行っている。この方式では、変換された文法を対象としてカーソル位置まで構文解析を行い、得られた(部分的なプログラムに対する)構文木を辿ることによってカーソル位置以降の構文の候補を計算し、ユーザに提示する。また、この会議において、(途中までではない)対象言語のLR構文解析器を用いた構文補完も可能であるという予想を提示した。PEPM2020の発表時の質疑応答において、カナダのMcMaster大学の Jacques Caretteから、文法のderivativeが関係するのではないかという意見を得た。文法のderivativeについて、正規言語や文脈自由言語を記述する式を対象として、derivativeの言語を記述する式を得る研究がある。また、上記の予想に関し、Chonnam National UniversityのKwanghoon Choi氏と議論し、彼が最近開発した構文解析器生成ツールを使って、LR構文解析器の内部状態を用いることにより補完候補の計算ができるのではないかという見通しを得た。
|
Research Products
(2 results)