2010-07-01から1ヶ月間の記事一覧

F#でプロセス間通信

F#

MailboxProcessorというクラスを使ってやると、スレッド間で簡単にメッセージのやり取りをすることができます。 でもこれがプロセス間となると一工夫が必要。F#側には用意されていないので、BCLの力を借りることになります。 しかし.NETに用意されたプロセス…

再帰理論

こちらもただのお遊びです。 今回はHaskellを選びました。 -- 後者関数は原始再帰関数 suc = (1 +) -- 射影関数は原始再帰関数 u1_1 x = x u3_1 (x, _, _) = x u3_2 (_, x, _) = x u2_1 (x, _) = x u2_2 (_, x) = x -- 加算関数 x +. 0 = u1_1 x x +. (y + 1…

ラムダがあれば何でもできる!元気d(ry

ただ(型なし)ラムダ計算を用いて形式的に記述してゆくだけの遊びです。 言語はSchemeを選択しました。(途中までPythonを使っていたのは秘密) (define true (lambda (x y) x)) (define false (lambda (x y) y)) (define if_ (lambda (p x y) (p x y))) ;;…

match!

すごく久しぶりにSchemeを触っています。相変わらずとても心地良いのよい言語です。 Schemeにはパターンマッチライブラリとかないのかな〜と思って探していると、 「Andrew Wright match」なるものがあることを知りました。matchに待ったパターンマッチ! そ…