词法还是动态
(每道题开头都有同一段:这门语言的 parser、show()、环境 Env(define / find / get / set,get 和 set 查不到就抛 RunError)、函数值 Closu
计数器
小盒子离开了出生的那间房 走多远都有一根线拴着那间房 (每道题开头都有同一段:这门语言的 parser、show()、环境 Env(define / find / get / set,get 和 se
调用时看哪个环境
调用一个函数时,函数体里的变量沿哪条链找?【0】
闭包是什么
小盒子离开了出生的那间房 走多远都有一根线拴着那间房 这门小语言(在 03/05 的基础上加了三样): let x = 1 ; x = x + 1 ; if ( c ) { … } else
补全:递归
(每道题开头都有同一段:这门语言的 parser、show()、环境 Env(define / find / get / set,get 和 set 查不到就抛 RunError)、函数值 Closu
补全:return
(每道题开头都有同一段:这门语言的 parser、show()、环境 Env(define / find / get / set,get 和 set 查不到就抛 RunError)、函数值 Closu
补全:调用
(每道题开头都有同一段:这门语言的 parser、show()、环境 Env(define / find / get / set,get 和 set 查不到就抛 RunError)、函数值 Closu
补全:定义函数
(每道题开头都有同一段:这门语言的 parser、show()、环境 Env(define / find / get / set,get 和 set 查不到就抛 RunError)、函数值 Closu
看调用栈
(每道题开头都有同一段:这门语言的 parser、show()、环境 Env(define / find / get / set,get 和 set 查不到就抛 RunError)、函数值 Closu
return 怎么实现
函数体跑到 return x * 2 ;,要立刻结束整个函数体(哪怕它在 while 里三层深)。树遍历解释器最省事的做法是【0】。