comparison paper/cbc.tex @ 4:b5fffa8ae875

fix chapter hoare
author ryokka
date Wed, 29 Jan 2020 22:36:17 +0900
parents c7acb9211784
children 196ba119ca89
comparison
equal deleted inserted replaced
3:a6f371a5d33d 4:b5fffa8ae875
1 % だいたい sigss のやつ 1 % だいたい sigss のやつ
2 2
3 \chapter{Continuation based C} 3 \chapter{Continuation based C}
4 Continuation based C\cite{cbc} (以下 CbC) は CodeGear を処理の単位、 DataGear をデータの単位として記述するプログラミング言語である。 CbC は C 言語とほぼ同じ構文を持つが、よりアセンブラに近いプログラムを記述することになる。 4 Continuation based C\cite{cbc} (以下 CbC) は CodeGear を処理の単位、 DataGear をデータの単位として記述するプログラミング言語である。 CbC は C 言語とほぼ同じ構文を持つが、よりアセンブラに近いプログラムを記述することになる。
5 CbC でのプログラミングは DataGear を CodeGear で変更し、その変更を次の CodeGear に渡して処理を実行する。 5 CbC でのプログラミングは DataGear を CodeGear で変更し、その変更を次の CodeGear に渡して処理を実行する。
6 現在 CbC の処理系には llvm/clang による実装\cite{llvm}と gcc\cite{gcc} による実装が存在する。 6 現在 CbC の処理系には llvm/clang による実装 \cite{llvm} とgcc \cite{gcc} による実装が存在する。
7 7
8 本章は CbC についての説明を行う。 8 本章は CbC についての説明を行う。
9 9
10 \section{Code GearとData Gear} 10 \section{Code GearとData Gear}
11 当研究室では検証しやすいプログラムの単位として DataGear と CodeGear という 11 当研究室では検証しやすいプログラムの単位として DataGear と CodeGear という
55 CbC では、接続可能な全ての CodeGear、 DataGear のリスト、Temporal DataGear のためのメモリ空間などを 55 CbC では、接続可能な全ての CodeGear、 DataGear のリスト、Temporal DataGear のためのメモリ空間などを
56 Context として保持している。 56 Context として保持している。
57 CbC で必要な CodeGear 、 DataGear を参照する際は Context を通してアクセスする必要がある。 57 CbC で必要な CodeGear 、 DataGear を参照する際は Context を通してアクセスする必要がある。
58 58
59 \section{Meta Gears} 59 \section{Meta Gears}
60 Meta Gear は CbC 上でのメタ計算で、通常の CodeGear を実行する際に必要なメタ計算を分離するための CodeGear である。 60 Meta Gear は CbC 上でのメタ計算で、通常の CodeGear を実行する際に必要なメタ計算を分離するための単位である。
61 例えば、 CodeGear を実行する際、必要な DataGear を Context を通して取得する必要があるが、ユーザーが Context から直接データを扱える状態は信頼性が高いとは言えない。 61 例えば、 CodeGear を実行する際、必要な DataGear を Context を通して取得する必要があるが、ユーザーが Context から直接データを扱える状態は信頼性が高いとは言えない。
62 そのために、 CbC では Meta CodeGear を用いて Context から必要な DataGear を取り出し、 CodeGear に接続する stub CodeGear という Meta CodeGear を定義している。 62 そのために、 CbC では Meta CodeGear を用いて Context から必要な DataGear を取り出し、 CodeGear に接続する stub CodeGear という Meta CodeGear を定義している。
63 63 % Meta DataGear は?
64