- 441 名前:デフォルトの名無しさん mailto:sage [04/04/19 21:25]
- バッククォートって、list や cons で書いたのと等価じゃないんですか?
なんだか処理系によって値が違うんですが。 (defun bq (x) `(,x nil)) (defun ls (x) (list x nil)) (let ((l nil) (m nil)) (push (bq 1) l) (push (bq 2) l) (push (bq 3) l) (rplaca (cdar l) t) (print l) (push (ls 1) m) (push (ls 2) m) (push (ls 3) m) (rplaca (cdar m) t) (print m)) を評価すると、clisp では ((3 T) (2 NIL) (1 NIL)) ((3 T) (2 NIL) (1 NIL)) となるんですが、CMUCLでは ((3 T) (2 T) (1 T)) ((3 T) (2 NIL) (1 NIL)) と異なる結果になるんです。言語仕様上どっちが正しいんでしょうか?
|

|