Что означает "лексический" в выражении "C# реализует лексическое замыкание"?
Я читаю о C# и замыкании, различных статьях, потрясающем " C# in Depth" Джона Скита и вижу такие утверждения, как "C# и ruby реализуют лексическое замыкание".
Почему авторы включают слово "лексический"? Почему бы просто не сказать, что они "осуществляют закрытие"?
Что бы это значило, если бы он просто реализовал "замыкание", а не "лексическое замыкание" (если это вообще возможно)?
1 ответ
Решение
Лексическое закрытие - это просто более конкретное название для закрытия.
Как вы знаете, замыкание позволяет функции использовать переменные из области, в которой она была создана, даже если она выполняется из другой области. Такая сфера также называется лексической средой, и отсюда происходит термин лексический.