代码之家  ›  专栏  ›  技术社区  ›  Frank Shearar

优秀的通用Lisp代码示例?

  •  60
  • Frank Shearar  · 技术社区  · 15 年前

    我已经学习了足够多的通用Lisp,能够通过编写应用程序来混乱我的工作方式。我读过塞贝尔实用的口齿不清

    我应该阅读哪些图书馆或程序来理解常见口齿不清的成语“道”?

    7 回复  |  直到 9 年前
        1
  •  36
  •   Felixyz    15 年前

    CL-PPCRE 通常被认为是一个很好的例子。事实上,也许任何一个EdiWeitz的图书馆都能读得很好,但是cl-ppcre特别聪明,它是一个有用且令人印象深刻的图书馆。除此之外,很多cl实现主要是用cl编写的。选择cl中通常在cl中实现的部分并比较不同的实现如何处理它是非常有效的。特别是,一些大型有用宏系统的最佳示例是标准中事物的实现。循环是一个有趣的阅读,或者如果你真的很有野心,你可以比较一下CLO的一些实现。

    如果你对计算的某些领域特别感兴趣的话,也许值得一提,这样人们就可以为它量身定制建议了。

        2
  •  28
  •   Pillsy    9 年前

    这是另一本书,所以可能不是你想要的,而是彼得·诺维格的 Paradigms in Artificial Intelligence Programming 包含许多编写良好、小型的通用Lisp程序。这不是完全自然的代码,特别是在前几章中,因为就像 实用通用Lisp 它的重点是教你如何用cl编程,但它仍然非常值得一读。它还包含一些优秀的例子,说明了如何在通用Lisp之上构建其他语言,并对如何提高cl程序的性能提出了一些有价值的建议。

        3
  •  11
  •   jmbr    15 年前

    其他建议(PAIP和CL-PPCRE)都很好。我也建议你熟悉 Alexandria 的代码,并查看 GBBopen .

        4
  •  8
  •   Flinkman    15 年前

    元对象协议的艺术-是一本有史以来最漂亮的代码的书。

        5
  •  3
  •   steve    13 年前

    Lisp(小部分的Lisp)是一本整洁的书;显示了Clossette(小方尖碑系统)和 一些编译器的东西。毫无疑问,诺维格的书很棒。

    我也喜欢真正的“构建问题解决者”,但代码有点麻烦。我不是 用于绑定参数列表中的动态范围变量。但是它很有趣 试图“预编译”歧视网的改进。这本书给出了另一本 接近诺维格的一些代码;我仍然认为诺维格的代码 是更“整洁和干净”的代码(更容易阅读和理解,而且仍然具有创造性)。

    “建筑问题解决者”应该带有警告标签,比如“你需要一些 阿斯匹林(SP)。当我最后一刻,感觉就像一道闪电击中了我的头。 “了解”RMS和Sussmans的依赖性定向回溯。编译PDI 也很出色。好东西。我只希望我能记住这一切…

        6
  •  2
  •   Leslie P. Polzer    15 年前

    我喜欢SBCL代码。

        7
  •  2
  •   Gutzofter    15 年前

    我唯一愿意做的就是编程。我就是这么做的。

    我做了两件事。一个是我处理了一个我熟悉的问题,一个单元测试框架,并将其扩展到包含测试套件。了解宏观写作。

    我做的第二件事是在cl.宏、闭包和样式中处理基本对象。

    另外,不要忘记从Lispers那里得到关于代码的反馈。

    (defun ugly-lisp-code? () ())