文献の概要
- COINSを用いて静的スライスを求めるツールを実装する。
学んだこと
静的スライス
静的に解析することにより得られる
どんな入力に対してプログラムを実行しても、ある変数に関しては、もとのプログラムと同じ値を計算する実行可能なプログラムである
プログラムの中からある機能を実現している部分だけを取り出すことができる
まとめ
- ある変数に注目して抽出された部分プログラムである。
- もとのプログラムが実行可能ならば、そのスライスも実行可能である(実行可能になるように抽出する)。
- どんな入力でスライスを実行しても、ある変数はもとのプログラムと同じ値を計算する(同じ値を計算するように抽出する)。
- どんな入力に対しても元のプログラムと同じように動作させるために、ある入力に対しては不要となるような部分であっても他の入力で必要になる可能性があるならば抽出する(多めに抽出する)。
動的スライス
動的に解析することにより得られる
ある入力を与えてプログラムを実行した場合に、その同じ値を計算する実行可能な部分プログラムである
まとめ
- よく分からない^^
- ある入力で実行して,その場合に実際に関係した箇所を抽出された部分プログラムである、ということか?
- ある入力に対して元のプログラムと同じように動作させればよいので、その入力が不要とするならば他の入力で必要になる部分であっても抽出しなくてよい(最低限を抽出する)。
COINSコンパイラ・インフラストラクチャ
スライスを計算するとき必要な情報はコンパイラで必要となる情報と共通する部分が多い
したがって、スライスを求めるためにはコンパイラの解析を利用できると工数を減らすことができる
本研究ではユーザーという視点からCOINS を用いてスライシングツールを実現した
まとめ
- スライシングとコンパイルは、必要となる情報に重複が多い。
- 重複している部分をコンパイラに解析させれば、スライシングの手間を省略できる。
- コンパイラはCOINSコンパイラ・インフラストラクチャを利用する。
(勉強放棄中)
外部
最終更新:2009年06月11日 17:08