関与宣言(関与宣言 - (新) 檜山正幸のキマイラ飼育記 メモ編)が必要になったのは、ソフトウェアの構造の記述のためだが、これは一般論になるだろう。
静的構造、あるいは時間とは関係しない空間的な依存性グラフ〈dependency graph〉ができる。これは、情報内容としては関与宣言と同じ。
一方、フローグラフ〈flow graph〉は時間を表現している。繰り返しのループを含めて、時間方向にどう展開するかの情報が入る。コース設計はフローグラフの設計になる。
依存性グラフでも、どの時点で依存するか? の別があるので、それをフェーズとして導入した。
require on setup {foo, bar} from 'setup-lib.mjs' via global
オープングラフを考える場合もオープンの仕方が:
- 型を表現するワイヤーがオープンしている。
- 具体的なノードへの参照を持っているが、そのノードは含まれない(ダングリングエッジ)
一番目はインターフェース・オープン、二番目はダングリング・フラグメントと呼ぶべき。インターフェース・オープンなグラフのグラフティングと、ダングリング・フラグメントのグラフティングは違う。