エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
最近型クラスとかを勉強しているのだけれど、その中でconst関数というのを見て感心した。 yomi322.hateb... 最近型クラスとかを勉強しているのだけれど、その中でconst関数というのを見て感心した。 yomi322.hateblo.jp const Haskellだと以下の通りに書く: const x _ = x Scala風に書く(ここからはScalaで書いていく)と以下の通りに書く: def const[A, B](x: A) = (_: B) => x つまり、2つ(curryingされた)引数を取るのだけれど、最初に受け取ったほうを返して、2つ目は捨ててしまう。 const(1)(2) // => 1 これだけだと、はあそうですかという感じ。待って!まだタブを閉じないで! 折り畳み関数に入れる constの何が面白いかって、foldやreduce系の折り畳み系関数に入れると怪奇現象が起こるところ。constは2引数関数なので、foldやreduceに入れることができるんですね。ちょっとやっ