Common Lisp 特殊操作
1.'操作符,quote的语法糖, 被'修饰的表达式不会被求值,将会被原样保留. 例:
(list 1 2 '(+ 1 2)) => (1 2 (+ 1 2))
2.` 返回一个list, 但是要原封不动的返回,即使list里面的list也不会被求值.
`(1 2 (+ 1 2)) => (1 2 (+ 1 2))
`(and 1 2) => (AND 1 2)
3.在`符号里面使用,用于将部分子list求值.
`(1 2 ,(list 1 2)) => (1 2 (1 2))
4. ,@ 和,类似,生成的list将嵌入原来的列表,
`(1 2 ,@(list 1 2)) => (1 2 1 2)
5.
`',(foo) ==> `(queto ,(foo))