タグ

pi-calculusに関するanotherのブックマーク (2)

  • 新言語考えた - まめめも

    テーマは befunge + π計算。 ちなみにπ計算の知識は sumii 様のπ-calculus 超入門を読んだだけしかない。 以下、befunge はみな知っているものとしています。 基部分 実行モデルは基的には befunge で、2 次元上のコードをカーソルが走って fetch しながら実行が進む。初期状態では左上の原点から右方向に向かって走るプロセスが 1 だけ。各プロセスは数値またはチャンネルからなるスタック (っぽいもの) を持っている。 '|' は fork 。進行方向に対して左右に分かれて走り出す。 v > AAA > | > BBB上のコードでは、 AAA と BBB を並列実行する。fork したらスタックは全部コピーされる (fork した後でスタックをいじっても、相方のスタックは変化しない) 。 '&' はチャンネルを生成してスタックに乗せる。'!' は送

    新言語考えた - まめめも
  • A Very Brief Introduction to the Pi-Calculus (in Japanese)

    π-calculus 超入門 π-calculus は、80 年代の終わりごろに Milner らによって提案された並行計算のモデルの一つです。そこでは、プロセスと呼ばれる複数の独立した主体が、通信チャネルと呼ばれるデータの通り道を介して値をやりとりしながら、計算を行っていきます。π-calculus にはいろいろな変種があるのですが、ここではとりあえず次のような構成要素からなるものを考えましょう。 new x . P 新しいチャネル x を作ってから、プロセス P を実行する (channel creation) x![v1, ..., vn] チャネル x に値 v1, ..., vn を送る (asynchronous output) x?[v1, ..., vn] . P チャネル x から値 v1, ..., vn を受け取って、P を実行する (input guard) P |

    another
    another 2007/05/31
    「すべてのものをプロセスで表す」パラダイム。Erlangより遥かに過激。Unixの用語で言うと、名前つきパイプを更にパイプに食わせるのをパラダイムの基礎としている。
  • 1