2010-03-24から1日間の記事一覧

Y combinator con'd (wrong, continues more)

頑張って書いて動いた!と思ったら、指摘をいただいて問題アリアリなことに気付いたので let rec y f x = f (y f) x;;を意識して書き直してみた。Erlangで高階関数書くのめんどい。funのタイプが速くなったけどfunctionは相変わらずうまくタイプできない。 -…

メモ - OCaml vs Erlang

さっきのY combinatorのfactorialで遊んでいたときのこと OCamlでやると $ ocaml Objective Caml version 3.11.2 # let f fact x = if x=1 then 1 else x*fact(x-1);; val f : (int -> int) -> int -> int = <fun> # let rec y f x = f (y f) x;; val y : (('a -></fun>…

メモ - Y combinator (追記アリ - というか本エントリに載っているのはちょと違う)

@camlspotterさんありがとうございました。私が悪い頭をグルグル回している間も@_2F_1は沈黙を守っていました。きっかけはPythonで書かれたやつでした。これ使えば全てのループ処理がcall/ccみたいなので書けてスタック気にしなくてよくなるとかそういう世界…