next up previous contents index
Next: ジェネレータ外部参照オブジェクト 同士 (X, Y) Up: 分散ユニフィケーション Previous: 外部参照オブジェクトX と具体値 value

ジェネレータ外部参照オブジェクト X と, コンシューマ(群) あるいは中断ゴール (群) がフックした変数 Y

処理系核は以下の処理を行う.
1.
X の generate メソッドを呼び出す. メソッドの実行により, 参照値の読出しを依頼するメッセージ (%read) が 送信され, X はコンシューマに変わる.
2.
コンシューマ となった X のフックしている変数と Y のユニフィケーションを行う. この結果, コンシューマ(群) と中断ゴール (群) はひとつにまとまり, 二つの変数はポインタでつながる (図10.9).


  
Figure 10.8: 外部参照オブジェクト X と具体値のユニフィケーション.
\begin{figure}\setlength{\unitlength}{1.0mm}
\begin{center}
\begin{picture}
(80...
...e(0,1){2}}
\put(10,12.5){\line(0,1){2}}
}
\end{picture}\end{center}\end{figure}


  
Figure 10.9: ジェネレータ外部参照オブジェクト X と コンシューマ(群)のユニフィケーション.
\begin{figure}
\setlength{\unitlength}{1.0mm}
\begin{center}
\begin{picture}
(6...
...e(0,1){2}}
\put(10,22.5){\line(0,1){2}}
}
\end{picture}\end{center}\end{figure}



Sekita Daigo
1998-05-18