Chapter 3 总结 (Summary)

  1. 一个 Cons 是一个含两部分的数据结构。列表用链结在一起的 Cons 组成。
  2. 判断式 equaleql 来得不严谨。基本上,如果传入参数印出来的值一样时,返回真。
  3. 所有 Lisp 对象表现得像指针。你永远不需要显式操作指针。
  4. 你可以使用 copy-list 复制列表,并使用 append 来连接它们的元素。
  5. 游程编码是一个餐厅中使用的简单压缩演算法。
  6. Common Lisp 有由 carcdr 定义的多种存取函数。
  7. 映射函数将函数应用至逐项的元素,或逐项的列表尾端。
  8. 嵌套列表的操作有时被考虑为树的操作。
  9. 要判断一个递归函数是否正确,你只需要考虑是否包含了所有情况。
  10. 列表可以用来表示集合。数个内置函数把列表当作集合。
  11. 关键字参数是选择性的,并不是由位置所识别,是用符号前面的特殊标签来识别。
  12. 列表是序列的子类型。 Common Lisp 有大量的序列函数。
  13. 一个不是正规列表的 Cons 称之为点状列表。
  14. 用 cons 对象作为元素的列表,可以拿来表示对应关系。这样的列表称为关联列表(assoc-lists)。
  15. 自动内存管理拯救你处理内存配置的烦恼,但制造过多的垃圾会使程序变慢。