词法这一站在做什么
流水线第一站(词法)干的活是【0】。
开始练习 →
语法这一站在做什么
第二站(语法)干的活是【0】。
开始练习 →
⚠️ 语义站和语法站差在哪
一句话语法完全合法,却仍然可能被第三站(语义)拦下来。因为语义站管的是【0】。
开始练习 →
🔴 五段代码,各被哪一站拦下
五段代码:括号没关、缺冒号、函数外写 return、名字没定义、完全正常。拿一个"逐站放行"的函数跑一遍,看各自倒在哪儿: import ast, io, tokenize def stage_of(src):
开始练习 →
⚠️ 语法站放行,语义站拦下
在函数外面写一句 return 1。让语法站(ast.parse)和语义站(compile)各判一次: import ast, io, tokenize def stage_of(src): """这
开始练习 →
自己写:一站一站往下放行
词法那一站已经写好了。把后面三站补上——每一站都是"上一站放行了,我再检查"。
开始练习 →
⚠️ 换四段新代码,再验一遍流水线
拿刚写好的探针试四段新代码,按三引号没关 / 少了右括号 / 函数外 return / 名字没定义的顺序: x = """abc print("hi" return 2 z = never_
开始练习 →
一个解释器最核心的结构是什么
剥掉所有细节,一个解释器本质上就是【0】。
开始练习 →
解释器手里必须一直拿着什么
解释器跑的时候,除了指令本身,还必须一直握着【0】。
开始练习 →
⚠️ 解释执行和编译执行,慢在哪一步
同样一段逻辑,解释执行通常比编译执行慢。慢的原因是【0】。
开始练习 →