我在考试中遇到了这个问题,你会怎么做?CONS是一个基本的Common Lisp函数。公共Lisp环境必须提供哪些功能才能使其工作?如果没有它,这段代码会发生什么?
(defun test(n l1 l2))(当(加n))(追加l1 l2)(某物(1- n) l1 l2))
提示符> (test 42 '(4))(2))
从哪个角度看?
从语言实现者那里,你需要内存和数据类型,它需要两个指针,可能还有type和gc的标志,除非它嵌入在指针中。
对于开发人员来说,它需要两个参数来保存任何数据。阅读器和append
都使用它,所以没有它你就不会有cons单元格,因此也不会有列表。