【发布时间】:2009-12-11 06:36:51
【问题描述】:
在普通的 lisp 中,labels 和 flet 这两个名字对我来说有些特殊。
flet 可以描述为 f 函数的一种 let。所以就这样命名了。 标签呢?
而getf、setf、remf的“f”从何而来?
谢谢。
【问题讨论】:
标签: common-lisp
在普通的 lisp 中,labels 和 flet 这两个名字对我来说有些特殊。
flet 可以描述为 f 函数的一种 let。所以就这样命名了。 标签呢?
而getf、setf、remf的“f”从何而来?
谢谢。
【问题讨论】:
标签: common-lisp
LABEL(没有 s)是一个非常古老的(来自早期的 Lisp 方言)结构,它允许为函数命名,以便它可以使用该名称调用自己:
类似的东西(这不是有效的 Common Lisp):
(label 'ff (lambda (x) (if (foo) (bar) (ff (baz)))))
标签是一个有名字的函数。
对于 Common Lisp,此名称已被回收。 LABELS 现在允许定义可以通过名称调用自身的本地函数。
【讨论】:
获取表单、设置表单、删除表单。
【讨论】: