Scalaカリー化と部分的に適用された機能
私はここについてのいくつかの質問があることを認識するものカリー化と部分的に適用される機能がありますが、私は彼らがどのように異なるかについて尋ねています。簡単な例として、偶数を見つけるためのカリー化された関数を次に示します。 def filter(xs: List[Int], p: Int => Boolean): List[Int] = if (xs.isEmpty) xs else if (p(xs.head)) xs.head :: filter(xs.tail, p) else filter(xs.tail, p) def modN(n: Int)(x: Int) = ((x % n) == 0) したがって、これを使用するには、次のように書くことができます。 val nums = List(1,2,3,4,5,6,7,8) println(filter(nums, modN(2)) これは次を返します:List(2,4,6,8)。しかし、私はこの方法で同じことができることを発見しました: def modN(n: Int, x: Int) = ((x % n) …