Что именно означает «частичная функция» в функциональном программировании?

Насколько я понимаю, частичные функции - это функции, которые мы получаем, передавая в функцию меньше параметров, чем ожидалось. Например, если бы это было прямо в Python:

>>> def add(x,y):
...    return x+y
... 
>>> new_function = add(1)
>>> new_function(2)
3

В приведенном выше фрагменте, new_function является частичной функцией. Однако, согласно Haskell Wiki , определение частичной функции является

. Частичная функция - это функция, которая не определена для всех возможных аргументов указанного типа.

Итак, мой вопрос: что именно подразумевается под «частичной функцией»?

54
задан wjandrea 11 October 2019 в 16:19
поделиться