В Scala можно писать (каррированные?) Функции, подобные этой
def curriedFunc(arg1: Int) (arg2: String) = { ... }
В чем разница между приведенными выше определение функции curriedFunc
с двумя списками параметров и функций с несколькими параметрами в одном списке параметров:
def curriedFunc(arg1: Int, arg2: String) = { ... }
С математической точки зрения это (curriedFunc (x)) (y)
и curriedFunc (x, y)
, но я могу написать def sum (x) (y) = x + y
, и то же самое будет def sum2 (x, y) = x + y
Я знаю только одно отличие - это частично прикладные функции. Но оба пути для меня эквивалентны.
Есть ли другие различия?