Функциональные литералы как в C++, так и в PHP требуют, чтобы программист указывал, какие переменные они используют из текущего лексического контекста. В чем причина этого требования?
Я думаю, что это не предназначено для компилятора/интерпретатора, потому что можно статически вывести эту информацию из тела литерала функции. Это только для привлечения внимания читателя?