タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

JavaScriptとカリー化に関するrokujyouhitomaのブックマーク (3)

  • 今更カリー化 - NullPointer's

    自分のメモ用のWikiに書いてあるJavaScriptのカリー化の説明が単なる部分適用だったり間違いが多いのに気付いたので書き直していたのだけど、その時、ふと汎用的なカリー化処理を実装できないかな?と思って色々試してみたのだが、なかなか上手くいかないのでググってみたらdankogai無双。 404 Blog Not Found:javascript - 弾もcurryを煮込んでみた ストレートにfunctionをネストしたコードを生成して、Functionコンストラクタの引数に渡せばevalも要らないという…。このアプローチにさらっと気付ける辺りが地頭のよさなんだろうなスゲーと思ったよ。 JavaScriptの関数はオブジェクトなんだから、どうせならFunctionのメソッドにしてしまおうぜ Function.prototype.curry = function(){ var fs = t

    今更カリー化 - NullPointer's
  • JavaScript でカリー化、再び: Days on the Moon

    以前、「JavaScript で引数束縛」において関数のカリー化を試みました。しかし、そこでカリー化された関数は、そのままでは一度しか部分適用ができず、また、最初の関数呼び出しは必ず部分適用として扱われていました。 function mean3(a, b, c) { return (a + b + c) / 3; } // 「JavaScript で引数束縛」における curry 関数。 var curriedMean3 = curry(mean3); curriedMean3(1)(2, 3); // => 2 curriedMean3(1)(2)(3); // => TypeError: curriedMean3(1)(2) is not a function // そのままでは部分適用を 2 回以上行えない。 // curry(curriedMean3(1))(2)(3) なら大丈夫

    rokujyouhitoma
    rokujyouhitoma 2009/11/30
    やりたい事は既に解決されていた。
  • JavaScriptでカリー化 - 檜山正幸のキマイラ飼育記 (はてなBlog)

    JavaScriptでカリー化。ありがち、つうか実際にあるでしょうね。小ネタと思ってやりはじめたら、意外と混乱した。一種のメタプログラミングのはずだが、実際にはテキスト加工処理。 内容: カリー化ってなに? カリー化を行う関数を作る:準備 カリー化を行う関数を作る:テキストのパッチワーク カリー化を行う関数を作る:組み立て ●カリー化ってなに? 2引数の関数f(x, y)に対して、「gがfのカリー化」だとは、f(x, y) = g(x)(y) が常に成立すること -- ゴチャゴチャ説明するより実例実例: functio sum(x, y) { return x + y; } このsumのカリー化の例: function curried_sum(x) { return function (y) {return sum(x, y);} } curreid_sum関数は1引数で、戻り値として関数

    JavaScriptでカリー化 - 檜山正幸のキマイラ飼育記 (はてなBlog)
    rokujyouhitoma
    rokujyouhitoma 2009/11/22
    Scalaのカリー化でつまづいたから再度カリー化を学びなおす。ただ、実務的にどこで使うんだろう?
  • 1