|
|||||||
Частичное применение (каррирование) функций в Haskell
Время создания: 23.04.2019 01:07
Автор: br0ke
Текстовые метки: haskell, fp, partial, application, function, curry, currying
Раздел: Информационные технологии - Haskell
Запись: and-semakin/mytetra_data/master/base/1555963638ow7fl5gl0d/text.html на raw.githubusercontent.com
|
|||||||
|
|||||||
В Haskell функцию нескольких аргументов можно применить частично, т.е. передать туда не все необходимые аргументы. В таком случае будет порождена новая функция, в которую можно допередать аргументы, и, когда все нужные аргументы будут переданы, будет вычеслен результат. Например, создадим функцию трёх аргументов add: add a b c = a + b + c add5 b c = add 5 b c add5 -- функция двух аргументов. Но её можно записать и короче, просто убрав с конца перечисление лишних аргументов. Это называется бесточечным стилем: add5 = add 5 Использование: add5 2 3 > 10 Именно ради удобства частичного применения функций в Haskell принято соглашение, что самые важные аргументы идут в конце. Таким образом, можно создать новую функцию, где уже будут закреплены несколько первых (не особо важных, редко меняющихся) аргументов, а принимать она будет последние -- самые важные и часто меняющиеся. |
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|