タグ

ブックマーク / hibituredure.blogspot.com (1)

  • Yコンビネータにトライ

    via おとうさん、ぼくにもYコンビネータがわかりましたよ! きしだんさんすごいっす。自分も学習のために、ラムダの復習も兼ねつつJavaScriptでトライしてみる。独学で適当にやってるので間違いも多数あると思いますが、ご容赦を。 ラムダ ラムダ式は、関数の表現形式みたいなもので、おおよそfunction式に相当する。引数が複数あるのが違うところだけど、この話は後で解決する。(非形式的な)ラムダ式ってこんなもの。 λx.x*2このラムダ式は、xを受け取ったら2倍して返す関数を表している。 最初は読むのに(特にλ記号が複数になった場合に)とても苦労したんだけど、引数を「λ」と「.」で挟み込む形で表現した関数だ、と考えるとずいぶん読みやすくなった。これをJavaScriptで表すと… function(x) { return x * 2 } こうなる。ラムダ計算の体系では、計算のすべてをラムダ

    SHiNKA
    SHiNKA 2011/08/31
    Yコンビネーターで "何ができるかっていうと…自分自身を参照しなくても、再帰が書ける。だから、無名関数でも再帰が書ける。"
  • 1