2003 Fiscal Year Annual Research Report
Project/Area Number |
15700025
|
Research Institution | Ochanomizu University |
Principal Investigator |
浅井 健一 お茶の水女子大学, 理学部, 助教授 (10262156)
|
Keywords | 部分評価 / コンパイラ / 最適化 / 関数型言語 / 自己反映言語 |
Research Abstract |
本年度は、主に部分評価組み込みコンパイラの作成を行ない、そのコンパイラを使って応用プログラム(具体的には流体力学シミュレーション)のコンパイルを試みた。その結果、以下のようなことがわかった。 ・部分評価の知識を使うと、強力な関数展開を最適化として行なうコンパイラが作成可能である。ユーザが簡単な注釈を書くことで、きめ細かく関数展開を制御することができる。 ・注釈を書くのには、部分評価の知識は不要で、関数展開(インライニング)のことがわかっていれば大丈夫だが、一方で、いちいち書かなくてはならないのは煩雑である。これを自動化すべく、無限関数展開を防ぐような注釈の自動生成法についても研究を行ない、実装した。この部分は、まだシステムには組み込まれていないが、いくつかのプログラムについて、注釈の自動生成ができている。 ・流体力学シミュレーションのプログラムは、比較的、単純なループが多く、関数展開だけではそれほど大きな最適化はできない。より高度な最適化を行なうためには、Fortranなどで用いられている解析をする必要がありそうである。 ・別の応用として、部分評価が有効であると考えられている自己反映言語のコンパイル実験も行なった。その結果、適切な注釈をつければ、十分なコンパイルが行なえることがわかった。自己反映言語はアスペクト指向言語の一部の機能を実現できるので、ここでの手法はアスペクト指向言語のコンパイル法を与えていることになっている。 ・自己反映言語のコンパイル実験に付随して、自己反映言語を直接形武で書く研究も行ない、実際に直接形式の自己反映言語を設計した。従来、自己反映言語は継続渡し形式で書かれていたが、それをコントロールオペレータを使うことで直接形式でも書けることを示した。
|
Research Products
(4 results)
-
[Publications] 浜田陽子, 渡辺理沙, 坂下徳子, 浅井健一: "Coleコンパイラの作成"情報処理学会プログラミング研究会. PRO-44. (2003)
-
[Publications] Kenichi Asai: "Reflecting on the Metalevel Interpreter Written in Direct Style"International Lisp Conference. (2003)
-
[Publications] 中川理恵, 浅井健一: "部分評価を使った自己反映言語のコンパイル"第6回プログラミングおよびプログラミング言語ワークショップ. (2004)
-
[Publications] 佐々本真弓, 浅井健一: "データ構造に着目したコンパイラ最適化の形式化"第6回プログラミングおよびプログラミング言語ワークショップ. (2004)