【发布时间】:2010-11-21 04:19:36
【问题描述】:
我的大部分 Lisp 经验来自 Elisp。因此,我发现自己只是偶尔写 Lisp。当我回过头来时,我经常忘记car 和cdr 之间的区别,需要参考文档来记忆。
您使用哪些聪明的助记符来记住命名根源自 1954 era computer architectures(car、cdr、cadr、caar、cddr 等)的 Lisp 函数之间的区别?
此外,为什么 first 和 rest 的知名别名作为 car 和 cdr 的惯用替代品没有获得更多关注?
更新:我知道car and cdr 的实际定义以及它们应该如何发音。请只使用助记符。
完全披露:这个问题并不完全适合我。这是为了帮助其他 Lisp 新手克服一些最初的障碍。
【问题讨论】:
-
以防万一——如果您将它们阅读为 c.a.r 和 c.d.r,它们会让人感到困惑。它们的发音通常不同,大致为“car”和“kooder”。
-
我不久前读过的 Lisp 风格指南推荐
first和朋友,rest,nth用于列表操作,c[ad]+r用于树。
标签: lisp elisp common-lisp