The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Релиз PHP 5.5.0"
Отправлено arisu, 24-Июн-13 14:45 
> Не соглашусь. Использование переменных внутри тела замыкания неявно привязывает его к контексту.

эм... это и есть суть замыканий: захватить с собой контекст.

> А с именованными параметрами мы получаем вполне себе переносимый код, одновременно
> корректно работающий с контекстом и не зависящий от него.

это, пардон май фрэнч, фигня какая-то. странная помесь недозамыканий и dynamic scoping.

> Правда, думаю,
> это вопрос вкуса - ведь можно в принципе и новое замыкание
> объявить.

и можно, и нужно. не надо превращать замыкания в непонятных монстров.

> Насчёт nested functions и bindTo - не уловил идеи. Можете подробнее?

если я верно понял, что делает bindTo, то оно пишется вот так:


function makeBind (obj)
  function closure ()
    print(obj.field);
  end;
  return closure;
end;

obj0 = { field=42 };
cls0 = makeBind(obj0);
cls1 = makeBind{ field=666 };
cls0(); -- prints 42
cls1(); -- prints 666


 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру