view paper/chapter3.tex @ 25:4d81332c0ab3

update chap3
author anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Mon, 11 Feb 2019 19:13:27 +0900
parents e929996bee43
children da266bef2120
line wrap: on
line source

\chapter{Continuation Based C}
\section{CbCの概要}
Continuation Based C (CbC) は当研究室で開発を行っているプログラミング言語である。

C言語を用いてプログラミングを行い場合、本来プログラマが行いたい処理の他に、 mallocなどの関数を利用したメモリのアロケートなどのメモリ管理が必要となる。
他にもエラーハンドリングなどの雑多な処理が必要となる。

これらの処理をmeta computationと呼ぶ。
実装しているプログラムにおけるエラーの原因が、 通常の処理かmeta computationなのか区別を行いたい。
また、 プログラム自身の検証や証明も、 通常の関数などと meta computationは区別したい。
通常C言語などを用いたプログラミングの場合、 meta computationと通常の処理を分割を行おうとすると、 それぞれ事細やかに関数やクラスを分割せねばならず容易ではない。

CbCでは関数よりmeta computationを細かく記述する為に、 CodeGearと呼ばれる単位を導入する。
CodeGearでは、 データの入出力としてDetaGearという単位を導入する。
CbCでは、 これらCodeGear と DetaGearを基本単位として実装していくプログラミングスタイルを取る。