LISP的未来是什么?我应该学习它吗?

19

我知道这不是一个非常技术性的问题,但它是针对所有技术人员的,这就是为什么我在这里提出这个问题。以下是我的问题:

有人能帮我了解学习LISP的现状和未来吗?我的大学论文中有一个项目使用LISP(这是一个很大的项目-可能需要两个学期长时间),我无法确定是否应该花费大量精力学习LISP,如果LISP没有未来的话,或者我只需要学习足够的内容来完成任务,然后做一些不需要任何LISP的其他项目。我只懂一点基本的LISP知识。请帮帮我。


我自己是Lisper,但我投票关闭此问题,因为没有客观的回答方式。 - Asumu Takikawa
有一种客观的方式来回答这个问题。Lisp 的未来是它将继续存在,可能全世界只有相对较少的人会继续使用它。不太可能出现突然的繁荣。如果你不了解 Lisp,那么你就对计算机科学的一个重要领域和一种计算方式毫无所知。这超越了关于在简历上列出语言名称和找工作的担忧。 - Kaz
7个回答

22

Lisp是那种真正改变你对编程思考方式的语言之一。如果你所说的价值是指市场价值,那它的价值是非常有限的。但如果所说的价值是指作为开发者获取到的收益,我会说它相当有价值。


22
如果你真的对软件开发有兴趣,那么你应该学习Lisp和其他编程语言。
Ruby、Python和Perl都是Lisp的远房亲戚。稍微近一点的是Javascript - 它基本上是一个带有奇怪的非可编程语法的原始Lisp。
Scheme的核心相对干净而且相当强大。可以教授基本概念。
Common Lisp是一种功能强大的语言,拥有各种“异国情调”的扩展。您可以在单个语言中体验多范式编程。
Clojure是一种新的Lisp语言,以多种方式打破了Lisp传统,但提供了函数式语言和并发性的有趣融合。
所有三种Lisp方言都具有很少有语言以如此优雅的方式提供的元语言抽象能力(Prolog是另一种具有类似功能的有趣语言)。 体验代码即数据,数据可以成为代码将永远改变您对编程的看法。

8

Lisp已经存在了50多年。如果它要死,早就应该死了。

现代编程语言仍在努力赶上Lisp。

"它没有死,只是闻起来有点怪",正如某人曾经说过的(只是我的Google搜索失败了,找不到引用)。


5
一些我们在新语言中认为理所当然的特性,它们的起源都可以追溯到Lisp语言。(这篇文章提供了更多相关信息)。许多语言仍在借鉴Lisp的思想。Lisp最大的优势在于其能够将代码表示为数据,将数据表示为代码,而由于其他流行语言的复杂语法,它们无法做到这一点。Lisp仍然处于编程语言研究的前沿,下一个颠覆性的语言将更接近Lisp而不是其他任何语言!因此,掌握Lisp编程知识将使你在游戏中保持领先地位。

2

我认为LISP有很大的价值,现在我们看到一种Lisp复兴的趋势,新的语言像Clojure都属于Lisp范畴。即使Python和Ruby在内部也非常类似Lisp。

LISP中学到的概念通常也适用于其他语言,并且无论您在日常工作中使用哪种语言,都会使您成为更好的开发人员。


1

如果你学习Lisp(不是LISP :)),你将成为一个更好的程序员。如果你在大学里,我相信这将是你时间的一项良好投资。

Lisp最近有很多动态(Clojure等...)。也许它将来会在商业领域中得到更广泛的应用。我希望如此。Lisp很有趣!


Lisp是我职业上愿意放弃Ruby的少数语言之一。我对最近的热潮感到兴奋,真心希望它能够起飞。 - Matt Briggs

1

它没有商业前途,但还是要学习

只有当你了解Lisp时,你才能完全掌握计算机科学。


如果Lisp要流行起来,它早在过去的50年里就已经这样做了。你可以忽略那些声称Lisp实现#127最终会流行起来的人。

然而,它是如此独特和强大,以至于理解它应该值得你花费时间。


几乎每次有人告诉我:“如果 XYZ 能够普及,那么现在肯定已经普及了”,当它真的普及时,他们最终显得很愚蠢。 :-) 我同意你可以忽略特定实例的“这次一定没问题!”,但是如果Lisp永不消亡(并且它没有任何迹象表明会消失),那么最终可能会有人制作出足够好的 Lisp,以至于它变得流行起来。 - Ken
CL标准本应该得到更新,但我认为通过Clojure,我们手头上有一个非常好的、实用的Lisp方案,可以在商业上应用。 - nickik
当然,更快的CPU、更多的内存以及类似Clojure的东西的组合可能会找到一个适合的市场。随着整个世界变得数字化,现在可能比以往任何时候都有更多的市场。但是Clojure不能像Ruby和Python那样做一些事情(快速启动,用于脚本编写),因此我认为杀手级别的Lisp版本还没有出现。Clojure应该在服务器上表现出色,但它无法取代现有的类似Lisp的脚本语言。 - DigitalRoss

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接