gpt4 book ai didi

scheme - 如何在方案中定义子环境?

转载 作者:行者123 更新时间:2023-12-04 06:16:58 25 4
gpt4 key购买 nike

我只是在用 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' 的一些预定义环境。

最佳答案

top-level environments 上的相关 MIT 计划文档页面可能很有启发性——您可以扩展现有的顶级环境(使用 extend-top-level-environment )或从头开始创建一个新的环境(使用 make-top-level-environment )。

但是,为了评估除最琐碎的表达式之外的任何内容,扩展 system-global-environment 可能是有益的。或 user-initial-environment (参见 13.2: Environment Variables )

关于scheme - 如何在方案中定义子环境?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7111001/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com