研究課題/領域番号 |
18K11247
|
研究機関 | 法政大学 |
研究代表者 |
佐々木 晃 法政大学, 情報科学部, 教授 (90396870)
|
研究分担者 |
廣津 登志夫 法政大学, 情報科学部, 教授 (10378268)
伊藤 克亘 法政大学, 情報科学部, 教授 (30356472)
|
研究期間 (年度) |
2018-04-01 – 2023-03-31
|
キーワード | プログラミング言語 / コンパイラ / プログラミング言語生成系 / 言語推定 / エディタ |
研究実績の概要 |
本応募課題では、プログラミング言語の効率的な開発を目標として、言語設計者が「行きつ戻りつ」の改良を探索的に繰り返しながら言語処理システムの実装を得る手法の確立を目指す。本研究の主要なアイディアは、探索的な開発をスムーズに行うことを可能とする「ライブ」言語作成システム(エディタ)および、言語設計者が提示する目標言語のプログラム例に基づいて、その言語仕様の推定を行うアルゴリズムの開発である。上記の手法に基づき、言語の設計支援および、プログラムを解釈と実行可能な言語処理システムの実装を導く手法の研究を行う。 本年度の主な成果は以下である。(1)昨年度までの研究で、厳密に構文(文法)仕様に従わない不正確なプログラムから適切な文を推定する研究および、プログラム片の例示により正しい構文を構成する支援アルゴリズムについて研究を行ったが、本年度は、仕様が与えられている言語から、複数のプログラム例を提示することで、自動的に言語仕様に追加すべき制限を推定するツールについての研究を行った。(2)本課題では、ドメイン特化言語(DSL)の開発に本手法を応用することを副次的な目標としている。本年度、社会シミュレーション開発のための、エージェントシミュレーション言語への応用に向けて、新しいビジュアルプログラミング言語についての研究を行い、プロトタイプの実装を通して、DSLの言語設計手法についての考察を進めた。今後は、言語推定手法の研究をさらに進めるとともに、「ライブ」言語作成システムとの統合を行う。
|
現在までの達成度 (区分) |
現在までの達成度 (区分)
3: やや遅れている
理由
本課題では、言語の設計を探索的に行うための対話的設計ツールの研究を行うとともに、応用として様々なプログラミング言語の設計を行う。本年度は、研究実績の概要で述べた(1)の研究について、仕様が定義されている言語に対して、機能の限定を行うためのカスタマイズ支援手法について研究を行った。複数のプログラム例を提示することで、与えられた構文や意味のうちから必要な言語機能のみに限定した新たな言語を半自動的に推定、生成するアルゴリズムについて研究し、プロトタイプシステム実装による実験を行った。(2)の研究として、エージェントシミュレーションを記述するドメイン特化言語への応用について、ノードベースプログラミングという単純な図形の組み合わせでプログラムが可能な手法について研究を行った。ビジュアル言語では構文の推定はテキスト言語に比べると構文の推定は単純化されるため、主に言語仕様のうち動的意味の設計支援の研究に今後発展させる予定である。研究全体から見た進捗では、本年度は、プログラム例を用いて言語を推定する研究は進展があったが、対話的な言語設計ツールへの適用までには至っておらず、研究の進捗は(3)やや遅れていると判断した。
|
今後の研究の推進方策 |
本年度までに得られた研究成果に基づいて、探索的に言語仕様を設計するツールの完成に向けて研究を進める。特に、プログラム片を提示し構文規則の構成を支援する手法と、複数のプログラム例を提示し、必要な言語機能の範囲を制限する手法をツールに統合することを目指す。また、本年度進められなかった、統計的機械翻訳による研究をすすめ、機械学習のアプローチを援用した手法の適用を目指す。
|
次年度使用額が生じた理由 |
covid-19の影響により、学会等がオンライン開催となったため旅費の予算と執行額の差額が生じたことが、次年度使用額の発生の主な理由である。これらは、研究成果発表のための経費として使用するが、研究を延長したため一部の開発機器の購入が必要となり、この調達にも充当する。
|