常见的口齿不清的这些命运来自哪里?

时间:2009-12-11 06:36:51

标签: common-lisp

在常见的lisp中,名称​​标签 flet 对我来说有些特殊。

flet 可以被描述为 f 部分的 let 。所以它这样命名。那么标签呢?

getf setf remf 的“f”来自哪里?

感谢。

2 个答案:

答案 0 :(得分:7)

LABEL(没有s)是一个非常古老的(来自早期的Lisp方言)构造,它允许为函数命名,以便它可以使用该名称调用自身:

类似的东西(这不是有效的Common Lisp):

(label 'ff (lambda (x) (if (foo) (bar) (ff (baz)))))

标签是一个带名字的函数。

对于Common Lisp,此名称已被回收。 LABELS现在允许定义可以按名称调用自身的本地函数。

答案 1 :(得分:2)

获取表单,设置表单,删除表单。