Как стать автором
Обновить

Комментарии 13

Карринг (каррирование) — это когда мы делаем новую функцию из старой с одним или несколькими аргументами.
Какое-то не очень понятное определение. Каррированная функция — это функция, которая принимает один аргумент, и возвращает другую функцию, которая принимает остальные.

Во многих функциональных языках вообще не существует функций нескольких аргументов, они эмулируются либо с помощью каррирования, либо с помощью кортежей.

Я действительно кривовато объяснил, а насчёт функциональных языков — да так и есть.

То что в статье названо каррированием, на самом деле является частичным применением.
Третий случай — это частичное применение.
Каррирование имеет сигнатуру
curry :: ((a,b)->c)->a->b->c
А где filter?map?reduce?functool?
Если это обзорная статья, то нужно говорить о всех вещах, а не только об очевидном.
Низачет, в общем то…

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

да, вы правы — перепутал со вторым питоном :(

Стоит однако отметить что генераторы списков в Python 2 и 3 называются иначе. В Python 2.7 range возвращает массив, а не генератор, а для генератора необходимо вызывать xrange. В третьей версии xrange стал просто range, а выделение готовых массивов происходит через другие механизмы.

Я же сказал, что использую Python 3

В статье — только тэг. И никаких деталей

Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории