[Scala] function currying

 
0
 
Functional languages
ava
Aazmandius | 18.02.2010, 11:49
Доброго времени суток! Начал изучать Scala, добрался до currying. В целом идея понятна, не могу только понять, какая от этого польза? Если кто-нибудь сможет пояснить на примере, зачем это надо и почему лучше именно так, буду очень благодарен. А то перестройка мозгов с императивного стиля на функциональный туговато происходит))
Comments (1)
ava
Ryukzak | 18.02.2010, 14:16 #
Довольно неплохо это дело описано вот тут в журнальчике:
http://fprog.ru/2009/issue3/eugene-kirpich...onal-languages/
Часть 5.

Имхо, к этому стоит относиться как к синтаксическому сахару, в принципе, без которого можно обойтись, если есть анонимные функции.
К примеру вызов принтфов из примера по вашей ссылке выглядел бы так:

println(filter(nums, (x: Int) => modN(2, x)))
println(filter(nums, (x: Int) => modN(3, x)))

С каррированием такой код становится проще. В случае более сложных ситуаций, код прощает значительно сильнее.
Please register or login to write.
Firm of day
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Contributors
advanced
Submit