annotate final_main/chapter1.tex @ 19:aed360eb1146

update
author mir3636
date Thu, 16 Feb 2017 02:14:33 +0900
parents 86f6bb9be40a
children 876ee5de1088
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
30a433a94a9a first commit
mir3636
parents:
diff changeset
1 \chapter{メタ計算の重要性}
30a433a94a9a first commit
mir3636
parents:
diff changeset
2 \label{chap:introduction}
30a433a94a9a first commit
mir3636
parents:
diff changeset
3 \pagenumbering{arabic}
30a433a94a9a first commit
mir3636
parents:
diff changeset
4
30a433a94a9a first commit
mir3636
parents:
diff changeset
5 % 序論の目安としては1枚半ぐらい.
30a433a94a9a first commit
mir3636
parents:
diff changeset
6 % 英語発表者は,最終予稿の「はじめに」の英訳などを載せてもいいかも.
30a433a94a9a first commit
mir3636
parents:
diff changeset
7
30a433a94a9a first commit
mir3636
parents:
diff changeset
8 %\section{メタ計算の重要性}
30a433a94a9a first commit
mir3636
parents:
diff changeset
9
10
mir3636
parents: 0
diff changeset
10 プログラムを記述する際、通常の処理の他に、メモリ管理、スレッドの待ち合わせやネットワークの管理、エラーハンドリング等、記述しなければならない処理が存在する。
mir3636
parents: 0
diff changeset
11 これらの計算を Meta Computation と呼ぶ。
0
30a433a94a9a first commit
mir3636
parents:
diff changeset
12
30a433a94a9a first commit
mir3636
parents:
diff changeset
13 Meta Computation を通常の計算から切り離して記述するためには処理を細かく分割する必要がある。しかし、関数やクラスなどの単位は容易に分割できない。
30a433a94a9a first commit
mir3636
parents:
diff changeset
14
30a433a94a9a first commit
mir3636
parents:
diff changeset
15 そこで当研究室では Meta Computation を柔軟に記述するためのプログラミング言語の単位として Code Gear、Data Gear という単位を提案している。
30a433a94a9a first commit
mir3636
parents:
diff changeset
16
30a433a94a9a first commit
mir3636
parents:
diff changeset
17 Code Gear は関数に比べて細かく分割されているので Meta Computation をより柔軟に記述できる。
30a433a94a9a first commit
mir3636
parents:
diff changeset
18 Code Gear、Data Gear にはそれぞれメタレベルの単位である Meta Code Gear、Meta Data Gear が存在し、これらを用いて Meta Computation を実現する。
30a433a94a9a first commit
mir3636
parents:
diff changeset
19
19
mir3636
parents: 10
diff changeset
20 Continuation based C (CbC)\cite{cbc} はこの Code Gear 単位を用いたプログラミング言語として開発している。
0
30a433a94a9a first commit
mir3636
parents:
diff changeset
21
30a433a94a9a first commit
mir3636
parents:
diff changeset
22 CbCは軽量継続による遷移を行うので、継続前の Code Gear に戻ることはなく、状態遷移ベースのプログラミングに適している。
30a433a94a9a first commit
mir3636
parents:
diff changeset
23
19
mir3636
parents: 10
diff changeset
24 また、当研究室で開発している Gears OS\cite{gears} は Code Gear、 Data Gear の単位を用いて開発されており、CbC で記述されている。
0
30a433a94a9a first commit
mir3636
parents:
diff changeset
25
30a433a94a9a first commit
mir3636
parents:
diff changeset
26 本研究では CbC を用いての Gears OS の実装と CbC における ユーザーの関知しない Meta Computationの自動生成を行なう。
30a433a94a9a first commit
mir3636
parents:
diff changeset
27
30a433a94a9a first commit
mir3636
parents:
diff changeset
28 %\section{論文の構成}
30a433a94a9a first commit
mir3636
parents:
diff changeset
29
30a433a94a9a first commit
mir3636
parents:
diff changeset
30 %\section{Introduction}