私はscalaを初めて使用し、カリー化を理解するのに少し苦労しています.今のところ単純な関数をコーディングすることで練習しています.次のことについて明確にする必要があります.
def mul (a: Int) (b: Int): Int =
{
{
a * b
}
}
上記の関数定義は以下と同じですか?
def mul: Int => Int => Int = {
(a: Int) =>
{
(b: Int) =>
a * b
}
}
mul
構文から、整数を受け入れ、整数を受け入れて整数を返す関数を返す関数として解釈できます。しかし、私の解釈が本当に正しいかどうかはわかりません。上記の例またはカリー化された関数の構文に関する説明は、非常に役立ちます。