@eldar_web

Зачем нужны в программировании процедуры (замыкания) ?

Зачем нужны в программировании процедуры (замыкания) ?
Вот код на ruby.

1) - проц. функция.
var = Proc.new do
puts 'Как-то так'
end
var.call => Как-то так


2) обычная функция (метод)
def var
puts 'Как-то так'
end
var = > Как-то так


Тут явно вторая функция (не процедурная) лучше, чем процедурная функция. И зачем нам нужны эти проц. ?
  • Вопрос задан
  • 3144 просмотра
Решения вопроса 1
begemot_sun
@begemot_sun
Программист в душе.
Вы немного неверно поставили вопрос. Приведя пример, вы не раскрыли всю суть замыканий. А именно, что они могут быть переданы как параметры в другие функции/методы. Т.о. метод может быть внутри расширен анонимной функцией.
Но не следует злоупотреблять этим подходом.
В любом случае, замыкания или обычные процедуры/методы суть одного и тотже подхода --- описание программы по шагам: что и как надо сделать, чтобы получить результат.

Гораздо интереснее описать задачу в виде граничных условий, и получить решение не описывая алгоритма (см. Пролог), но такой подход очень ограничен и ресурсоемок.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
donkaban
@donkaban
Умею рисовать тени
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы