Каррирование: различия между версиями

[отпатрулированная версия][непроверенная версия]
Содержимое удалено Содержимое добавлено
Метки: с мобильного устройства через мобильное приложение через приложение для Android
Строка 20:
Каррирование широко используется в [[Язык программирования|языках программирования]], прежде всего, поддерживающих парадигму [[Функциональное программирование|функционального программирования]]. В некоторых языках функции каррированы по умолчанию, то есть, многоместные функции реализуются как одноместные [[функции высших порядков]], а применение аргументов к ним — как последовательность [[частичное применение|частичных применений]].
 
В языках программирования с [[Функции первого класса|функциями первого класса]] обычно определены операции <code>curry</code> (переводящая функцию сигнатуры вида <code>A, B -> C</code> в функцию сигнатуры <code>A -> B -> C</code>) и <code>uncurry</code> (осуществляющее обратное преобразование — ставящая в соответствие функции сигнатуры вида <code>A -> B -> C</code> двуместную функцию вида <code>A, B -> C</code>). В этих случаях прозрачна связь с операцией частичного применения <code>papply</code>: <code>curry papply = curry</code>.
 
== Примечания ==