补全:比较和字符串

👁️ 1 人浏览 💬 0 人评论 ❤️ 添加收藏

(每道题开头都有同一段:这门语言的 parser、show()、环境 Env(define / find / get / set,get 和 set 查不到就抛 RunError)、函数值 Closure(name, params, body, env)、用来「跳出函数」的 ReturnSignal。)

树的形状(05 的形状加新节点):

("num", 3)  ("str", "hi")  ("var", "x", 行, 列)  ("bin", "+", 左, 右, 行, 列)  ("call", "add", [参数…], 行, 列)
("let", "x", e, 行, 列)  ("assign", "x", e, 行, 列)  ("print", e, 行, 列)  ("return", e, 行, 列)
("fn", "add", ["a","b"], 体, 行, 列)  ("if", c, 体, 否则, 行, 列)  ("while", c, 体, 行, 列)

补全 bin 里剩下的两种:op 在 CMP 里 → 交回 True/False;+ 两边都是字符串 → 拼接;+ 两边类型不同 → 抛 RunError("类型不匹配", n[4], n[5], stack)

提交你的答案
请登录后提交答案。
去登录
代码编辑器
Ctrl + Enter 运行
本次输入:
输出:

                        
👩‍🏫
AI
💬 题目评论

全部评论