交付四:block 和 program
(每道题开头都有同一段:T() 是上一站 lexer 的替身——源码里 token 之间用空格分开,它切成 (kind, text, line, col);show() 把树写成一行:二元运算全加括号,语句之间用 |。)
贯穿的源码(接 compiler_02 那段):
let rate = 12 ;
let msg = "hi" ;
total = rate >= 3 ;从零写出 block({ stmt* })和 program(stmt* 到 EOF)。解析贯穿源码和一段嵌套。
全部评论