Last updated 4 years ago
Was this helpful?
binds names to values
def <name>(<formal parameters>): # 函数签名 return <return expression>
def 执行的步骤
创建一个 function,其签名为 <name>(<formal parameters>)
<name>(<formal parameters>)
设置函数的主体(第一行后的所有内容),但并未执行函数主体
把 <name> 和当前 frame 的 function 绑定
<name>
envrionment 是一系列的 frames
名称绑定到值上面,它延伸到许多局部帧中;
局部帧在唯一的全局帧之上;
全局帧包含共享名称;
表达式为树形结构;
以及每次子表达式(包含用户定义函数)调用时,环境必须被扩展