annotate final_main/chapter1.tex @ 0:30a433a94a9a

first commit
author mir3636
date Fri, 10 Feb 2017 16:24:11 +0900
parents
children 86f6bb9be40a
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
30a433a94a9a first commit
mir3636
parents:
diff changeset
10 プログラムを記述する際、通常の処理の他に、メモリ管理、スレッドの待ち合わせやネットワークの管理、エラーハンドリング等、記述しなければならない処理が存在する。これらの計算を Meta Computation と呼ぶ。
30a433a94a9a first commit
mir3636
parents:
diff changeset
11
30a433a94a9a first commit
mir3636
parents:
diff changeset
12 Meta Computation を通常の計算から切り離して記述するためには処理を細かく分割する必要がある。しかし、関数やクラスなどの単位は容易に分割できない。
30a433a94a9a first commit
mir3636
parents:
diff changeset
13
30a433a94a9a first commit
mir3636
parents:
diff changeset
14 そこで当研究室では Meta Computation を柔軟に記述するためのプログラミング言語の単位として Code Gear、Data Gear という単位を提案している。
30a433a94a9a first commit
mir3636
parents:
diff changeset
15
30a433a94a9a first commit
mir3636
parents:
diff changeset
16 Code Gear は関数に比べて細かく分割されているので Meta Computation をより柔軟に記述できる。
30a433a94a9a first commit
mir3636
parents:
diff changeset
17 Code Gear、Data Gear にはそれぞれメタレベルの単位である Meta Code Gear、Meta Data Gear が存在し、これらを用いて Meta Computation を実現する。
30a433a94a9a first commit
mir3636
parents:
diff changeset
18
30a433a94a9a first commit
mir3636
parents:
diff changeset
19 Continuation based C (CbC) はこの Code Gear 単位を用いたプログラミング言語として開発している。
30a433a94a9a first commit
mir3636
parents:
diff changeset
20
30a433a94a9a first commit
mir3636
parents:
diff changeset
21 CbCは軽量継続による遷移を行うので、継続前の Code Gear に戻ることはなく、状態遷移ベースのプログラミングに適している。
30a433a94a9a first commit
mir3636
parents:
diff changeset
22
30a433a94a9a first commit
mir3636
parents:
diff changeset
23 また、当研究室で開発している Gears OS は Code Gear、 Data Gear の単位を用いて開発されており、CbC で記述されている。
30a433a94a9a first commit
mir3636
parents:
diff changeset
24
30a433a94a9a first commit
mir3636
parents:
diff changeset
25 本研究では CbC を用いての Gears OS の実装と CbC における ユーザーの関知しない Meta Computationの自動生成を行なう。
30a433a94a9a first commit
mir3636
parents:
diff changeset
26
30a433a94a9a first commit
mir3636
parents:
diff changeset
27 %\section{論文の構成}
30a433a94a9a first commit
mir3636
parents:
diff changeset
28
30a433a94a9a first commit
mir3636
parents:
diff changeset
29 %\section{Introduction}