为什么我有时会听到"词汇变量"一词?

Tim*_*eld 5 language-agnostic computer-science terminology lexical-scope

我已经看过几次"词汇变量"一词,主​​要是在闭包的情况下.Paul Graham在他关于Lisp的书中使用了这个术语,指的是使用let表达式定义的变量.

我理解词法作用域是静态作用域的另一个名称.词法变量只是一个在程序单元的引用环境中可见的变量吗?

我希望在这个假日季节能用这个词给我的朋友和家人留下深刻印象,有人可以帮帮我吗?

cha*_*aos 0

词法变量在程序单元的引用环境中可见,但并非所有在程序单元的引用环境中可见的变量都一定是词法变量。

基本上,词法变量是特定于其定义范围的变量。在像 Perl 这样的语言中,本质上有两个相互叠加的命名空间:底层动态包命名空间和覆盖的词法命名空间。因此 $foo 可以引用其中任何一个,这仅取决于它是否已按词法声明。