补全:叶子和变量

补全:叶子和变量

(每道题开头都有同一段:这门语言的 parser、show()、环境 Env(define / find / get / set,get 和 set 查不到就抛 RunError)、函数值 Closu

阅读更多 →
算几个表达式

算几个表达式

(每道题开头都有同一段:这门语言的 parser、show()、环境 Env(define / find / get / set,get 和 set 查不到就抛 RunError)、函数值 Closu

阅读更多 →
整数除法

整数除法

这门语言只有整数。7 / 2 得【0】。

阅读更多 →
字符串加法

字符串加法

"a" + "b" 该得 "ab","a" + 1 该【0】。

阅读更多 →
二元运算的三步

二元运算的三步

树的形状(05 的形状加新节点): ("num", 3) ("str", "hi") ("var", "x

阅读更多 →
叶子怎么算

叶子怎么算

树的形状(05 的形状加新节点): ("num", 3) ("str", "hi") ("var", "x

阅读更多 →
沿树走一遍

沿树走一遍

(每道题开头都有同一段:这门语言的 parser、show()、环境 Env(define / find / get / set,get 和 set 查不到就抛 RunError)、函数值 Closu

阅读更多 →
为什么叫「树遍历」

为什么叫「树遍历」

这种解释器叫「树遍历解释器」,相对于后面路线的字节码虚拟机。它的特点是【0】。

阅读更多 →
环境是什么

环境是什么

树上每个格子,从底下一层层亮上去 下面的先有了,上面的才有 解释器算到 ("var", "total", …),要知道 total 现在是几。它去查的东西叫环境

阅读更多 →
语句和表达式差在哪

语句和表达式差在哪

这门小语言(在 03/05 的基础上加了三样): let x = 1 ; x = x + 1 ; if ( c ) { … } else { … } while ( c ) { … } p

阅读更多 →