• 研究課題をさがす
  • 研究者をさがす
  • KAKENの使い方
  1. 課題ページに戻る

2020 年度 実施状況報告書

モジュール間の安全な相互作用を可能にするメタプログラミング言語機構

研究課題

研究課題/領域番号 20K11757
研究機関神奈川大学

研究代表者

馬谷 誠二  神奈川大学, 理学部, 准教授 (40378831)

研究期間 (年度) 2020-04-01 – 2023-03-31
キーワード静的解析 / 抽象解釈 / インタプリタ / コンパイラ
研究実績の概要

今年度は,コンパイルされた低水準コードの直接実行(「具象解釈」)と,抽象解釈を混ぜながら実行する抽象解釈器の実行モデルを提案し,そのプロトタイプ実装を行った.
言語仕様が厳密には規定されていないプログラミング言語で書かれたプログラムの性質を知りたい場合等には,一般に,言語処理系(リファレンス実装)が生成した低水準コードの命令列を静的解析するという手段を用いることができる.しかし,高水準言語からコンパイルされた低水準コードの命令列に対する解析では,生成されるコードやランタイムの複雑さのせいで有用な情報を十分に取得できないことが多い.
そこで,純粋な抽象解釈だけでは正確に解析できない一部のコードのみを選択的に具象解釈することで,解析精度の低下を回避できることが研究成果の実行モデルの特徴である.どのような粒度・頻度で分割されたプログラムであっても,2つの解釈モジュールの実行時環境をシームレスに接続することにより,プログラムを正しく実行(解析)することが可能となっている.
また,アプリケーションデータの相互変換においても,個々の解析に依存するデータ型の抽象ドメインの定義を系統的に用いる仕組みが組み込まれており,二つの解釈モジュール間で,メモリ上のエイリアス関係を保ちつつ任意のデータ構造を適切に相互変換可能である.
プロトタイプ実装は,Java言語のコンパイルターゲットであるJava仮想機械の機械語のサブセットを規定し,その解析を行う.基本的な機能の実行モデルに限定することで実装の単純化を行っており,特に,リフレクション機能などのメタプログラミングに関わる部分については未実装である.

現在までの達成度 (区分)
現在までの達成度 (区分)

2: おおむね順調に進展している

理由

本課題が最終的な目標とする静的プログラム解析手法のうち,基礎的な土台として用いる実行モデルについては提案が完了している.
また,今後の研究・実験に用いるためのコンパクトなプロトタイプ実装も一通り完成している.

今後の研究の推進方策

今年度の成果を基に,メタプログラミングに関する言語機能を解析するための手法について検討を開始する.
具体的には,Python言語のリフレクション機能,Racket言語の構文変換機能(マクロ)の二つに対し,解析対象コードの処理系内部表現レベルでの静的解析を実現するための手法について,同時並行的に検討を進める.

次年度使用額が生じた理由

コロナ禍の状況にあり、学会発表や学会参加に必要となる旅費がかからなかったため。
また、研究に使用するノートPCの購入についても、当初想定していた性能を備えながら、なおかつ、安価な新製品が手に入ったため、使用額が少額で済んだ。
次年度は、旅費についてはコロナ禍の収束の予測が困難であるが、引き続き、必要に応じて柔軟に使用するよう準備したい。
備品については、当初予定より高性能なデスクトップPCの購入を検討する。

  • 研究成果

    (4件)

すべて 2021 2020

すべて 雑誌論文 (1件) (うち査読あり 1件、 オープンアクセス 1件) 学会発表 (3件)

  • [雑誌論文] Work-Stealing Strategies That Consider Work Amount and Hierarchy2021

    • 著者名/発表者名
      Ryusuke Nakashima, Masahiro Yasugi, Hiroshi Yoritaka, Tasuku Hiraishi, Seiji Umatani
    • 雑誌名

      IPSJ Transaction on Programming(掲載決定)

      巻: - ページ: -

    • 査読あり / オープンアクセス
  • [学会発表] Work-Stealing Strategies That Consider Work Amount and Hierarchy2021

    • 著者名/発表者名
      中嶋 隆介,八杉 昌宏,寄高 啓司,平石 拓,馬谷 誠二
    • 学会等名
      情報処理学会 第132回プログラミング研究発表会
  • [学会発表] 具象コード実行を伴う抽象解釈器の実行モデル2021

    • 著者名/発表者名
      馬谷 誠二
    • 学会等名
      情報処理学会 第133回プログラミング研究発表会
  • [学会発表] HOPE: 階層的計算省略に基づく耐障害性を備えた並列実行モデル2020

    • 著者名/発表者名
      八杉 昌宏,村岡 大輔,平石 拓,馬谷 誠二,江本 健斗
    • 学会等名
      日本ソフトウェア科学会第37回大会

URL: 

公開日: 2021-12-27  

サービス概要 検索マニュアル よくある質問 お知らせ 利用規程 科研費による研究の帰属

Powered by NII kakenhi