# HG changeset patch # User Tatsuki IHA # Date 1519720028 -32400 # Node ID 51da3d399ffcdfa8f250d5d32fb67734f8aeadbf # Parent 8167e2fa0feb80565ff1aa61c79e5e8b1bc60d75 Fix interface chapter diff -r 8167e2fa0feb -r 51da3d399ffc paper/interface.tex --- a/paper/interface.tex Mon Feb 26 00:12:37 2018 +0900 +++ b/paper/interface.tex Tue Feb 27 17:27:08 2018 +0900 @@ -48,23 +48,25 @@ \coderef{queueInterface} に Queue の Interface を示す。 Interface には以下の内容を定義する。 \begin{itemize} - \item 引数の Data Gear 群 + \item 操作(API)の引数の Data Gear 群 - \coderef{queueInterface} 3-4行目は 引数の Data Gear 群を定義している。 + \coderef{queueInterface} 3-4行目は引数の Data Gear 群を定義している。 ここで定義された Data Gear 名は、定義された Code Gear の引数に対応する。 この Interface では10行目で Queue に要素を挿入する Code Gear を定義しており、引数として挿入する Queue の実装と挿入する要素を受け取る。 この引数それぞれが3-4行目で定義した queue と data に対応する。 - \item Interface が所属する Code Gear の実行後に継続される Code Gear + \item 操作(API) の実行後に継続される Code Gear - Interface の Code Gear は基本的には実行後の継続先は不定となっており、継続元から渡される。 - 継続元から渡される値 は \coderef{queueInterface} 5-6行目に定義している変数に格納される。 - ``\_\_code next(...)'' の引数である ``...'' は複数の Input Data Gear を持つという意味である。 + 操作(API)は基本的に実行後の継続先は不定となっている。 + この継続は継続元から渡される。 + 継続元から渡される継続 は \coderef{queueInterface} 5-6行目に定義している変数に格納される。 + この継続は一種のクロージャとして扱うが、実際は Code Gear の番号を渡している。 + ``\_\_code next(...)'' の引数である ``...'' は継続先の Code Gear が複数の Input Data Gear を持つという意味である。 この ``...'' は他のプログラミング言語では可変長引数のような扱いである。 - また、実行する Code Gear によってこの継続は複数設定される場合がある。 - 例えば、この Interface では12行目で Queue が空かどうかを調べる Code Gear を定義しており、中身がある場合と空の場合で別の継続を渡す必要がある。 + 実行する操作(API) によってこの継続は複数設定される場合がある。 + 例えば、\coderef{queueInterface} は12行目で Queue が空かどうかを調べる Code Gear を定義しており、中身がある場合と空の場合で別の継続を渡す必要がある。 \item 操作(API) である Code Gear と Code Gear に渡す引数情報 diff -r 8167e2fa0feb -r 51da3d399ffc paper/master_paper.pdf Binary file paper/master_paper.pdf has changed