Tagged with closures

Boost::Spirit: Грамматики, функции и замыкания

В этой заметке я продолжу рассказывать о библиотеке Boost::Spirit, предназначенной для написания на C++ различных парсеров. В прошлой заметке я описал базовые возможности Spirit, a в этой хочу затронуть несколько возможностей, которые по моему мнению практически необходимы в случае написания сколько-нибудь сложных парсеров. Итак, эти возможности:

Читать дальше »

Использование Groovy: Замыкания и динамические объекты

Я продолжаю цикл заметок о Groovy – динамическом языке программирования для платформы Java.

В этой заметке я расскажу о замыканиях в языке Groovy, а также об одном из их применений – динамических объектах.

Замыкания

Замыкания можно представлять, как блоки кода (или анонимные функции), которые при выполнении имеют доступ к переменным того контекста, в котором они были объявлены. С другой стороны, замыкания являются объектами, которые могут быть переданы в другие методы, сохранены в переменных, и т.п.

В Java аналогами замыканий являются анонимные классы, однако, они имеют намного менее удобный для использования синтаксис и имеют некоторые ограничения (которые, конечно можно обойти, но… ).

Читать дальше »