πcalculus: πcalculusは、λcalculusを並行処理を記述できるように拡張したものです。
9.1 ソフトの入手 |
http://www.cs.indiana.edu/ftp/pierce/pict/pict-4.1
注意1: pictはSAL(Scientific Applications on Linux)でも紹介されていますが、 ここに登録されているアドレスは古く、上記のアドレスが現在のものです。
注意2: ソースコード版も提供されていますが、コンパイル・インストールにCaml-lightが必要となります。 ftp://ftp.inria.fr/pub/lang/caml-light
9.2 インストール |
・ INSTALLDIR = $(HOME)/binとなっています。
・ INSTALLLIB = $(HOME)/lib/pict
INSTALLDIR = /usr/local/bin INSTALLLIB = /usr/local/lib/pict |
9.3 使い方 |
が、最初のページの例題をそのまま入力してもエラーが起きます。
これは通信路の宣言をしていないからであり、数ページあとにその説明がつきます。
include文がなくて"Hello World!"がコンパイル出来なかった"C"の初版のようなスタイルですね。
(最初に使った時にはエラーの原因が分からず、だいぶ悩みました。)
参考として、最初の通信プログラムの完全な例を示します。
type Boolean = ^[^[] ^[]] def tt[b:Boolean] = b?[t f] = t![] def ff[b:Boolean] = b?[t f] = f![] def test[b:Boolean] = (new t:^[] new f:^[] ( b![t f] | t?[] = print!"It's true" | f?[] = print!"It's false")) new b:Boolean run (ff![b] | test![b] | tt![b] | test![b]) |
9.4 参考サイト&参考文献 |
home |index |previous |next |contents