newlips全局symbol

定义一个symbol在某个lisp文件中,

;; config.lsp

(set 'java-home "C:\\Program Files\\Java\\jdk1.6.0_41")
(set 'glassfish-home "C:\\portal\\glassfish")
(set 'cloud-engine-home "C:\\cloud_engine")

然后在另一个lisp文件中加载这个lisp文件:

#!/usr/bin/newlisp

;; initialze environment
(println "check configurable variables in config.lsp file ...")
(load "./config.lsp")

(unless (file? java-home)
	(begin
	  (println "java-home: " java-home " doesn't exist")
	  (exit)))

(unless (file? glassfish-home)
	(begin
	  (println "glassfish-home: " glassfish-home " doesn't exist")
	  (exit)))

(if (empty? cloud-engine-home)
    (begin
      (println "cloud-engine-home: " cloud-engine-home " is empty")
      (exit)))

的确可以使用。


但是如果第二个lisp文件又加载了另一个lisp模块文件,第三个lisp模块就无法得到java-home等变量的值。

如果想得到,就需要用global函数。

所以config.lsp文件内容修改一下:

;; config.lsp

(set 'java-home "C:\\Program Files\\Java\\jdk1.6.0_41")
(set 'glassfish-home "C:\\portal\\glassfish")
(set 'cloud-engine-home "C:\\cloud_engine")

(global 'java-home)
(global 'glassfish-home)
(global 'cloud-engine-home)

可以参考文档:

http://www.newlisp.org/newlisp_manual.html#contexts


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值