2010-02-28 52 views
13

我有一些不理解的行爲來自gnu clisp 假設我有一些代碼,如(let ((x "Hi!"))(print x))。 如果我從控制檯執行它(如,clisp fileName.lisp)我看到Lisp簡單問題

嗨!

但是,當我從解釋器執行它,我看到這個文本兩次。爲什麼?

請幫助我。

回答

14

解釋器總是輸出最後一個表達式的值。
print也會返回參數作爲值,您的情況爲"Hi!"
這就是爲什麼你看到它兩次。

(print "Hi!") 

會給出相同的結果。