学习 LISP 的最佳方法是什么?

我已经用 Python,PHP,Java 和 C 编程好几年了,而且我刚刚读完了 Hacker 和 Painter,所以我很乐意尝试一下 LISP!

我知道这和我所知道的完全不同,这并不容易。同时我也认为(如果我错了请纠正我)围绕 LISP 有更少的社区和开发。因此,我的问题是: 学习 LISP 的最佳方法是什么?

我不介意买书或者投资一些时间,我只是不想浪费时间。

最后一个想法是使用 LISP 进行网页开发,我知道这并不常见,所以... ... 我知道在选择第一本书或教程之前计划好我的学习,并花费大量时间在一些可能不是最好的方式上是好的!

谢谢你们的回答!

编辑: 我阅读了实用的 Common Lisp,它是: ... 冗长,难懂,有趣,绝对让我在 Lisp 中滚动,之后我阅读了小模式,它简短,有趣,对我的整体编程非常好。所以我的建议是先阅读一下这个小模式,然后(这需要几个小时,非常值得)如果你认为 lisp (或者 scheme 或者其他方言)不是你想要的,你仍然可以用一种非常有趣的新方式来思考递归!

59586 次浏览

试着读读彼得 · 赛贝尔的 实用 Common Lisp

这是一个很难回答的问题... ... 我认为这完全取决于你的学习风格。

我在大学的人工智能和专家系统课程中学习了 LISP,但那是我学习的方式... ... 我不是一个很好的书本学习者,我更喜欢在课堂上有人向我解释它。

LISP 绝对是一种独特的语言,如果您习惯于传统的 C、 Java、 PHP 编程,那么它需要一种新的思路。

祝你好运!

我喜欢读 实用公共 LISP通用 LISP

在 LISP 上看起来很有趣,但是对于一本书来说190美元似乎有点贵。

我不知道 Lisp 有什么特别之处使它不同于学习其他语言。你只需要开始使用它,并尝试它的功能。

一个选择可能是尝试一个简单的 项目

另一个特定于 Lisp 的选择是编写一个 Emacs 扩展来帮助您完成日常工作。

你可能想从 小阴谋家开始作为热身。这不是一本关于编写产品 Lisp 程序的实用书籍,但它是一本学习如何用 Lisp 编写 好好想想的好书。

我个人最喜欢的是 Abelson & Sussman 计算机程序的构造和解释。 它使用 Scheme,这是 Lisp 的一种漂亮而干净的方言。

如果你喜欢更实用的方法,也许你应该选择一些 Lisp 框架来进行网页设计 (我不知道这样的野兽是否存在) ,然后直接跳进去。

我发现阅读 SICP这本书真的帮助我学习。我使用了 Steel Bank Common Lisp (SBCL)并取得了很好的成功。

祝你好运

我建议将 欧拉计划作为一个小问题的优秀来源,您可以使用它来自学任何新的编程语言。

麻省理工学院提供了 DIVX 和 MPEG 格式的整个 LISP 课程,我强烈推荐它。

Http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/

对于 Web 开发,您可能需要查看一下 驼背佬,这是一个使用 Common lisp 编写的 Web 服务器。

Paul Graham 的 Ansi Common Lisp 是一本好书。

我认为它可能已经绝版了,所以你最好通过亚马逊购买。 我拿到了大学二年级“自然语言处理”课程的书。 我们必须用 LISP 编写编程项目,所以我需要快速学习 LISP。

这本书对我帮助很大。

这里有几种选择。首先,Scheme 和 Common Lisp 在很深的方面(比如作用域)有很大的不同; 您应该选择一个作为开始并坚持使用 一段时间。我是 Common Lisp 的粉丝,但这可能是 vi-vs-EMACS 的宗教问题之一。

对于 Scheme,选择 Kent Dybvig 的 方案编程语言,然后是 SICP。

对于 Common Lisp 和实用 Common Lisp,我推荐 David Lamkins 的 成功的 Lisp。成功 Lisp 是 也可以在网上免费获得

然后,看看昆奈克公司的 小段的 Lisp和诺维格公司的 人工智能书中的口齿不清

马蒂 · 霍尔在约翰 · 霍普金斯大学有 不错的清单课程。

更新 : 我的意思不是永远坚持下去,只是试图同时学习两者会让人感到困惑。

有一次我遇到了一个问题。我不知道 LISP。所以我决定下载一个盒子里的 LISP。

然后我发现自己在没有任何帮助或文档的情况下安装了 Emacs。

然后我遇到了两个问题。

我发现通过“ The Little Schemer”中的练习确实有助于磨练我的思维中的递归、模式匹配方面,并使得在 XSLT 中工作变得相当容易。

对于认真的学习者,我推荐来自 Norvig 的 PAIP,它是学习 Lisp 和人工智能的绝佳资源。

Berkeley 提供播客格式的 CS61a。这是一个基于 SICP 的 CS 类的介绍。这是一个更现代的版本比1982年麻省理工学院的视频可用。

我现在正在学习 Lisp,并且遇到了一本学习 Lisp 的“书”。这是由 雨人约瑟维格建议的

这本书名为 Common Lisp: 符号计算简介,可以以 PDF 格式下载。在第一章中,作者首先介绍了一种类似 UML 的 Lisp 方法,然后逐渐介绍了越来越多的 Lisp 语法。

我还研究了实用的 lisp,我认为作者掩盖了大量必需的信息,即使对于经验丰富的程序员也是如此。这本书似乎没有做到这一点(我还没有完全写完,但已经发现它足够有用,可以提出建议)。

还有一件事,你需要一个工作环境。我发现 盒子里的 Lisp工作得很好。它运行在 Windows 和 Linux 上,并使用 eMac。

按顺序阅读这些书: 《符号计算简介》 ,Paul Graham 的 ANSI Common Lisp,然后进入实用 Common Lisp。或者跳过 ACL,在 PCL 中使用它作为参考。

现在有一本叫做 < strong > ‘ Land of LISP’的书,通过编写80年代风格的文本游戏来教 LISP 编程。我现在正在读它,写得非常好,而且不把它自己看得太严肃,我喜欢这样。

根据您的编程经验,我推荐您首先学习符号计算或实用 Common Lisp。为了练习,我在 Windows 中使用 Allegro CL 8.2 Free Express Edition。它把练习变成了很多乐趣。

选择康拉德 · 巴斯基的 < strong > Land of Lisp 。这是一个充满乐趣的介绍 Lisp 编程使用卡通和游戏。

我被 LISP 的 JVM 方言所吸引—— Clojure

  • 它具有“简化的语法”,即较少的对称需求,有巧妙的设计集合可用
  • 它是基于 JVM 的,所以底层有稳定的、性能良好的运行时,此外,整个 Java 生态系统(库,例如数据库驱动程序、构建工具、 IDE)都在我们的掌握之中
  • Noir 是一个很好的 web 框架,应用程序可以部署在 Javaweb 和应用服务器上

换句话说,现在就可以在生产环境中使用 Clojure。

说到资源,至少有4本书和大量的在线资源: