我只是在使用Scheme(mit-scheme),并且我刚刚弄清楚如何更改环境,以便“+”成为“-”运算符的等效过程的符号。
示例
(environment-define user-initial-environment '+ -)
(eval (+ 3 2) user-initial-environment)
=> 1
我只是想知道是否有一种简单的方法来将环境作为变量处理,所以当我将环境输入到 eval 中时,就像这样
(eval <exp> user-initial-environment)
我不必使用“用户初始环境”。所以我可以在不同的环境中“玩”一个函数。
(eval <exp> env)
其中 env 是附加到我的变量“env”的一些预定义环境。