在c语言里,定义一个整数是这样的:
int a = 2;
这个变量的名字是a,值是2;
定义一个函数(scheme里叫过程)是这样的:
int add(int a, int b) {
return a+b;
}
上面的代码定义了一个过程,名字是add,值就是这个函数体;
再看scheme的做法,
定义一个整数:
(define a 2)
定义一个过程:
(define add
(lambda (x y)
(+ x y)))
在scheme里,像a和add这样的东西都叫form,也就是“形式”,scheme把过程和别的数据类型看成是一样的,过程没什么特殊的,它也有名字和值;