{{{ GoogleAdsense
<script type="text/javascript"><!--
google_ad_client="pub-3720045127958150";
google_ad_host="pub-9941151214016196";
google_alternate_color="FFFFFF";
google_ad_width=468;
google_ad_height=60;
google_ad_format="468x60_as";
google_ad_type="text_image";
google_color_border="003399";
google_color_bg="EEEEEE";
google_color_link="0000FF";
google_color_url="0000FF";
google_color_text="000000";
//--></script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script>
}}}
--
[[BR]]
[FrontPage ← 先頭のページに戻る]
== クロージャーをサポートした新言語 Closure Basicの作成
クロージャーをサポートした新言語のコンパイラをデカルト言語で作成します。
コンパイルした結果は、中間コードに出力しデカルト言語で書かれたVM(バーチャル・マシン)で実行することとします。
基本的な手続き的な処理については、懐かしいBasicの文法を使い、関数・サブルーチンの呼び出し処理と変数のスコープの管理をクロージャー対応としましょう。
データの型は、浮動小数点数、文字列、クロージャーの3つの型を使います。
関数クロージャーは、ファーストクラス・オブジェクトとして扱われ、変数に自由に代入でき、参照できるようにします。
=== [ExDoClosureBasic 1. Closure Basicの実行方法]
=== [ExProgClosureBasic 2. Closure Basicのプログラム例]
=== [ExSpecClosureBasic 3. Closure Basicの仕様]
=== [ExClVM 4. VM(バーチャル・マシン)の仕様]
=== 5. コンパイラの解説
=== 6. VMのソース解説
=== 7. コンパイラのソース解説
(更新中)