エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
今日は、カリー化と関数の部分適用の話題。 Haskellの視座からScalaのカリー化と部分適用を見てみる ま... 今日は、カリー化と関数の部分適用の話題。 Haskellの視座からScalaのカリー化と部分適用を見てみる まず、Haskellでの関数のカリー化と部分適用についておさらい。 例えば、引数を合計する関数 mysum があるとして、 mysum :: Num a => a -> a -> a -> a mysum a b c = a + b + c 次のようにすると当然期待値を得ることができます。まぁ当然ですね...。 ghci> mysum 1 2 3 6 しかし、このコードをJava脳を用いて読んだ場合、 mysum(1,2,3) のように読んでしまいがちですが、次のように読むのが正解です。 ((mysum 1) 2) 3 Haskellでは関数は必ず一つの引数を取るという考え方があり、2個目の引数は1つ目の引数を取る関数の引数として渡されます。3つ目以降も同様です。これを関数がカリー化