У меня есть определение следующих методов: def add1(x: Int, y: Int) = x + y
def add2(x: Int)(y: Int) = x + y
второй является кэррите версию первого. Тогда, если я хочу частично применить вторую фу
В Scala, я мог бы генерировать каррированную функцию следующим образом: def multiply(m: Int)(n: Int): Int = (m + 1) * (n + 2)
Если бы я хотел, я мог бы генерировать новую функцию, заполняя что первы
Я играю с добавлением немного currying материала для BlockClosure. Чтобы сделать это динамически (т. Е. Не жестко кодировать все случаи для различного количества аргументов исходного блока), мне нужно
Является ли следующий пример каррированием? def sum(a: Int, b: Int) : (Int => Int) = {
def go(a: Int) : Int = {
a + b;
}
go
}
Я наполовину понять результаты ниже, но как я мог
Я читаю книгу, Functional Programming Using F#, который says (стр 33), в разделе декларации функций высшего порядка Мы уже видели выше порядка построены кол-функции, такие как (+) и (< <) и в конце се