zlang中所有的函数默认是非严格求值的。
* 名字和绑定
zlang中,名字是绑定到某个对象的。名字正是被这些绑定操作所引入的。名字一旦
绑定到某个对象,这种绑定关系就不再会改变。zlang中某个名字的使用,对应的是最内
层的代码块中对该名字的绑定。
"代码块"是zlang中对代码的组织,是一种嵌套结构。代码块的定义是静态的。一个
名字空间、一个类、一个函数、一个for/while结构、一个if/else分支等都是一个代码
块。
一个名字的作用域指的是改名字可见的部分,也是静态定义的。一个名字的作用域是
引入它的绑定操作所在的代码块。嵌套的子代码块可以定义相同的名字以覆盖外层代码块
定义的名字。
以下的操作可以完成名字的绑定:
1. import语句;
2. class和函数的定义;
3. 赋值操作'=';
4. for语句的头部;
5. with语句;
6. catch语句;
zlang.prelude名字空间下的所有名字都是默认可见的。
* 异常
异常会导致正常执行流中断,以便处理异常情况。异常对象在出现异常的地方或者
通过throw语句被抛出,之后,抛出异常点的后续代码不会被继续执行。执行流在捕获该
异常的地方继续执行。如果程序员没有捕获该异常,运行时环境会最终捕获异常,并在
打印相应信息后,终止整个程序的执行。
==============================================================================
Execution Model
Author: Liang Kun
Date: 2011-04-16
Last Change: 2011-04-16
阅读(1312) | 评论(0) | 转发(0) |