学习LISP有什么好处吗?

时间:2010-11-03 10:55:43

标签: lisp

我是一位经验丰富的Ruby,Objective C和Java程序员,我正在观看关于emacs的视频(因为我一直在使用Vi),并注意到它也是一个LISP解释器。这激起了我的兴趣,并提出了一个有趣的问题:对于那些了解现代高级语言(如Ruby,Java和Objective C)的人来说,学习LISP有什么实际好处吗?我是否可以通过留出一些时间学习LISP来获得任何收益?我想听听你们有什么要说的。感谢。

4 个答案:

答案 0 :(得分:9)

学习一种基于不同范式的语言肯定有益于你习惯的语言(我注意到它只是面向对象,具有强大的命令根源)。 LISP是函数式语言的祖父(我最喜欢的一个,Scheme,是一个LISP方言)。

除了拓宽视野外,功能语言和结构highly likely的重要性也在不断提高,作为一种有效使用多核硬件的合理直接方式。

LISP本身可能不是我的建议,因为它非常分散:另一方面,有很多历史,如果你计划搬到Emacs,你可以直接使用它。

答案 1 :(得分:8)

从某种意义上说,Lisp是冯·诺依曼揭示“代码就是数据就是代码”的逻辑延伸。

在82左右之前,Lisp中发现的东西仍然在进入C#和Python等主流编程语言。由于相当统一的 Lisp语法,他们可能不会在Lisp中轻松使用它们。

类似的事情:

  • 动态类型 - 可能是Lisp的发明,可能是小型的。不确定。
  • 面向对象 - 来自List的Smalltalk我认为
  • 反思 - C#刚刚得到这个
  • DSLs in-language - hello Linq。
  • - 现在除了Lisp之外还有一些超研究的语言
  • 解释器中的编译 - 从未听说过其他语言

还有其他我无法想到的东西。

答案 2 :(得分:4)

我建议您抓住good Lisp bookthey abound on the web)并亲自尝试一些Lisp。你会惊奇地发现,这种50年历史的语言是如此“现代”,在某些方面,远远超过其他“现代”语言。 (例如,找出为什么Lisp被称为可编程编程语言)。如果您懒得自己尝试一些Lisp代码,请阅读thisthis

答案 3 :(得分:4)

观看其中一些内容:http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/

学习Lisp本身并不是特别实用,但它会让你成为一个更好的程序员,因为你可以将你所获得的理解应用到你认为已经知道的语言中。