Python实现Scheme
https://github.com/zhangyun00...
ZhScheme新功能需求,欢迎同学阅读并提交代码 :)
一、set一次定义多个变量
要求,能一次定义多个变量:
(set (a b) (12 34))
等价于
(set a 12) (set b 34)
需要修改eval函数中251行;
elif x[0] == 'set':
下的代码。
二、函数返回值
Lisp、Scheme中的函数似乎不能直接return。
我们可以通过为所执行函数外层的变量赋值来当作返回值。
(set sum 0 )
(define (fun x y) (set sum (+ x y) ) )
(print sum)
以上sum变量起到返回值的作用 --- 在函数体内,你可以使用任意上层/外层定义的变量。
以上是 Python实现Scheme 的全部内容, 来源链接: utcz.com/a/165197.html