加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

如何从OS X上的shell脚本运行Clozure CL(Lisp)?

发布时间:2020-12-16 01:14:27 所属栏目:安全 来源:网络整理
导读:我尝试了以下方法: $cat args.sh#! /Applications/ccl/dx86cl64(format t "~~S~" *args*)$./args.sh 无法从./args.sh加载lisp堆映像 我可以直接运行lisp罚款: $/Applications/ccl/dx86cl64Welcome to Clozure Common Lisp Version 1.5-r13651 (DarwinX866
我尝试了以下方法:
$cat args.sh
#! /Applications/ccl/dx86cl64
(format t "~&~S~&" *args*)

$./args.sh

无法从./args.sh加载lisp堆映像

我可以直接运行lisp罚款:

$/Applications/ccl/dx86cl64
Welcome to Clozure Common Lisp Version 1.5-r13651  (DarwinX8664)!

?

是否可以使用Clozure CL编写shell脚本来运行lisp代码?我确信我做的事情很傻.

我安装它:http://openmcl.clozure.com/

接下来查理查理马丁的回答以及随后的问题. dx86cl64 –eval< code>将启动一个REPL,所以如果你想启动给定的脚本然后退出,只需将它添加到脚本的末尾:(ccl :: quit).在您提供的示例中,这可以解决问题:
#! /bin/bash 
exec /Applications/ccl/dx86cl64 --eval '(progn (format t "hello script") (ccl::quit))'

一个更好的脚本如下:

#! /bin/bash
exec /Applications/ccl/dx86cl64 -b -e '(progn (load "'$1'") (ccl::quit))'

将它放入一个文件,load-ccl-script.sh(或您选择的其他名称).然后以下交互工作:

$echo '(format t "weeee!")' > a.lisp
$sh load-ccl-script.sh a.lisp
weeee!
$_

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读