2010-02-28 101 views
13

我有一些不理解的行为来自gnu clisp 假设我有一些代码,如(let ((x "Hi!"))(print x))。 如果我从控制台执行它(如,clisp fileName.lisp)我看到Lisp简单问题

嗨!

但是,当我从解释器执行它,我看到这个文本两次。为什么?

请帮助我。

回答

14

解释器总是输出最后一个表达式的值。
print也会返回参数作为值,您的情况为"Hi!"
这就是为什么你看到它两次。

(print "Hi!") 

会给出相同的结果。