読者です 読者をやめる 読者になる 読者になる

レキシカルスコープ

プログラムの構文だけを見て、スコープを決める方式のこと。SchemeはLexical scopeだけど、elispは違う(確か)。でも、この言葉って違和感がある。

例えば、Lexical analyzerは、字句解析器のこと。Tokenizerとも。Lexicalと言われると、トークンしか考慮しない話を連想してしまう。構文まで考慮する必要があるならば、Syntacticというのが自然じゃないだろうか。

例えば、Syntactic valueという言葉があるわけだから、Syntactic scopeが言葉として許されないというわけではないように思う。(Syntactic valueというのは「計算」しなくてもその値が決まる式(の指す値)。例えば、関数適用はSyntactic valueではないが、変数や数値リテラルはSyntactic value。)

なぜ、Syntactic scopeじゃなくてLexical scopeなんだろ。