我想键入类似'scheme file.scm'的内容并让它解释文件,然后将我带回我的shell,而不是将其加载到REPL中。
编辑:我试过方案< test.scm并且它仍然使用REPL,唯一的区别是当流结束时方案退出。
答案 0 :(得分:32)
scheme <file.scm
应该可以工作(只要你没有指定--interactive
并且stdin不是终端,方案就可以非交互方式工作)。
答案 1 :(得分:11)
使用MIT Scheme运行方案程序:
scheme --quiet < program.scm
--quiet
选项确保程序的输出是唯一显示的内容(即根据您的要求,您不会看到REPL)。
参考:scheme --help
- batch-mode, - quiet, - silent
禁止版本和版权的启动报告,以及 惜别。
这个命令行选项似乎已被错误地从list of command line options in the documentation中省略,但我认为这是一个有效的命令行选项,因为scheme --help
显示它,并且因为--batch-mode
用于参考手册的其他部分(例如here)。
答案 2 :(得分:6)
我认为你想要的是SCM。您可以像这样执行.scm脚本:
$ scm -f foo.scm arg1 arg2 arg3
有关详细信息,请参阅http://people.csail.mit.edu/jaffer/scm_3.html#SEC28。
答案 3 :(得分:0)
选中chez --help
,然后我发现了这一点(让我们说我用chez方案):
chez --script ./temp.scm
此外,--verbose
非常有用:
chez --verbose --script ./temp.scm