2012-09-08から1日間の記事一覧
勉強会で話題になっておもしろかったので、実装してみました。 カリー化 4つの引数まで対応したFuncの拡張メソッド。 public static class FuncCurry { public static Func<T1, Func<T2, TResult>> Curry<T1, T2, TResult>(this Func<T1, T2, TResult> f) { return arg1 => arg2 => f.Invoke(arg1, arg2); } public st</t1,></t1,></t1,>…
部分適用というのは、簡単に言ってしまえば、関数の型を変換する方法の1つです。たとえば、Func を Func に変換するとか。部分適用という言葉を使わずとも、これはよく行われていることで、ラムダ式を使って実現されます。わかりやすいように、型を明示して…
http://blog.livedoor.jp/gab_km/archives/1425937.htmlだって、F#にはレコードがありますから。(いまさらのリアクションでごめんなさい) type Animal = { name: string; bark: unit->string } let makeDog name = { name = name ; bark = fun () -> "Bow …