История изменений
Исправление
geekless,
(текущая версия)
:
Т.е. функции можно использовать как данные. Но в отличии от простых данных, функции обладают своим поведением (алгоритм со своим замыканием). Благодаря чему можно реализовывать элегантные решения задач, для которых в императивном стиле потребовалось бы потратить больше сил и громозкого кода в ущерб читабельности.
Вот пример из далеких 80-х http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-15.html#%_sec_2.2.4
Вместо кучи слов про поведение, мог бы просто сказать, что речь идёт о декларативном DSL под конкретную задачу. :} И в лиспе, и в руби такой подход применяется достаточно широко.
Исправление
geekless,
:
Т.е. функции можно использовать как данные. Но в отличии от простых данных, функции обладают своим поведением (алгоритм со своим замыканием). Благодаря чему можно реализовывать элегантные решения задач, для которых в императивном стиле потребовалось бы потратить больше сил и громозкого кода в ущерб читабельности.
Вот пример из далеких 80-х http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-15.html#%_sec_2.2.4
Вместо кучи слов про поведение, мог бы просто сказать, что речь идёт о декларативном DSL под конкретную задачу. :} И в лиспе, и в руби такой подход применяется дсотаточно широко.
Исходная версия
geekless,
:
Т.е. функции можно использовать как данные. Но в отличии от простых данных, функции обладают своим поведением (алгоритм со своим замыканием). Благодаря чему можно реализовывать элегантные решения задач, для которых в императивном стиле потребовалось бы потратить больше сил и громозкого кода в ущерб читабельности.
Вот пример из далеких 80-х http://mitpress.mit.edu/sicp/full-text/book/book-Z-H-15.html#%_sec_2.2.4
Вместо кучи слов про поведение, мог бы просто сказать, что речь идёт о декларативном DSL под конкретную задачу. :} И в лиспе, и руби такой подход применяется дсотаточно широко.