浏览 Common Lisp 源代码,我注意到人们最常使用#'foo
where'foo
就足够了——也就是说,只要函数指示符被接受,他们就会选择传递函数。
当然#'foo
是必须的 whenfoo
是 viaflet
等定义的。我了解这一切的机制——我的问题是风格之一。是否只是因为人们不想考虑'foo
vs #'foo
,所以他们使用后者,因为前者有时不起作用?即使是这样,它也不能解释#'(lambda ...)
因为#'
在那里总是不必要的使用。
CL 有时因为 而被称为丑陋的#'
,大多数新手都没有意识到(我敢说)大多数情况下它是不必要的。我不是新人,但我碰巧更喜欢'foo
. 为什么我不寻常?如果我发布了一些给funcall
and符号的代码,apply
我会被嘲笑和羞辱吗?我正在考虑在我所在的地区开设一个匿名功能指示符章节。我怀疑人们想使用功能指示符,但由于同侪压力,不敢“公开”。