Ansi Common lisp 读书笔记 1
第三章
构造#
因为 lisp 的所有对象本质上都是 list,所以所有的构造归根结底都是list的操作,即cons car cdr
等式#
- eql 对象是否相等(包括引用的地址),也可视为判断是否是一个符号
- equal 对象值是否相等
指针#
lisp 没有指针,只是引用。 lisp 会处理赋值的时候什么时候使用指针,什时候创建新的对象,主要考虑执行效率来决定。 因为 lisp 是有垃圾回收的,从诞生的时候就有。所以只要使用的值所占内存大于指针所占的内存,赋值的时候都是指针。之后交给垃圾回收去处理。 PS:我理解 setf 赋值都是指针,函数返回为创建新的对象