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

自己反映計算による発展可能コンパイラ

研究課題

研究課題/領域番号 10139204
研究種目

特定領域研究(A)

配分区分補助金
研究機関筑波大学

研究代表者

千葉 滋  筑波大学, 電子・情報工学系, 講師 (80282713)

研究期間 (年度) 1998
研究課題ステータス 完了 (1998年度)
配分額 *注記
1,500千円 (直接経費: 1,500千円)
1998年度: 1,500千円 (直接経費: 1,500千円)
キーワードソフトウェア発展 / プログラミング
研究概要

我々が既に開発していたC++言語用の発展可能コンパイラOpenC++の設計を元にJava言語用の発展可能コンパイラOpenJavaを開発した。またOpenJavaを実際にいくつかの有名なデザイン・パターンに対応するよう発展させ、その発展可能性を検証した。Java言語はC++言語に比べ、設計が精錬されているため、発展させるためのAPIは、OpenC++より簡潔で理解しやすいものとすることができた。
本研究は当初、我々がこれまで研究してきた拡張機構を備えたコンパイラの技術をもとに、これをソフトウェアの発展機構として応用することを目標として始まった。しかしながら、ソフトウェアの改良過程の支援という応用システムの研究は、「発展機構を備えたソフトウェアの構成原理の研究」に直接的に貢献しているとはいいがたい。このような考えは、研究を進めていくうちに次第に強くなり、徐々に、ソフトウェアを発展させる上で実際に問題となっていることを解決する方向に、研究の目的を変化させていった。この結果、我々は発展可能コンパイラの技術の応用として、schema evolutionを見いだし、現在までに、「メタ」プログラムに従ってプログラムを自動編集するソフトウェアJavassistをJava言語用に開発した。このソフトウェアはschem evolutionに関する応用に十分な程度の発展機能を備えている。Javassistの特徴は、ソースコードを必要とせず、実行時(正確にはロード時)にバイナリコード(バイトコード)を直接編集できる機能を提供している点である。また、実行時にプログラムを編集しても、全体の実行速度が大きく影響をうけないよう、効率のよい処理を実現している。

報告書

(1件)
  • 1998 実績報告書
  • 研究成果

    (3件)

すべて その他

すべて 文献書誌 (3件)

  • [文献書誌] Chiba, Tatsubori: "Yet Another java, lang, Class" Proc.of Ecoop '98 Workshop on Reflective Object-Oriented Programming and Systems. (1998)

    • 関連する報告書
      1998 実績報告書
  • [文献書誌] Shigeru Chiba: "Javassist-A Reflection-based Programming Wizard for Java" Proc.of OOPSLA'98 Workshop on Reflective Programming in Ctt and Java. 51-55 (1998)

    • 関連する報告書
      1998 実績報告書
  • [文献書誌] Tatsubori, Chiba: "Programming Support of Design Patterns with Compile time Reflection" Proc.of OOPSLA'98 Workshop on Reflective Programming in Ctt and Java. 56-60 (1998)

    • 関連する報告書
      1998 実績報告書

URL: 

公開日: 1998-04-01   更新日: 2016-04-21  

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

Powered by NII kakenhi