я пришел из Java и хотел бы объединить две частичные функции, как это:Комбинирование частичные функции
def sum(a: Int, b: Int, c: Int) : Int = a + b + c
Я хочу написать что-то вроде этого:
val l = List(1, 2, 3)
l.foreach(println _ sum (1, _ : Int, 3)) // It's supposed to apply
// the partial sum(1, _: Int, 3)
// and println computed value.
Но он отказывается компилировать. Есть ли способ исправить это кратко?
Вы смешиваясь частично оценены функции (что-то вроде 'F (1, _)') и частичные функции. 'sum' - это полная функция, а не частичная, это означает, что для каждого элемента домена функции есть один связанный элемент в его codomain. – pedrofurla
@pedrofurla частично прикладной функция, правый. Я не могу их сочинить, не так ли? – user3663882
Вторая строка просто не имеет смысла. Не уверен, что даже стоит попытаться объяснить, почему. – pedrofurla