在reddit采访Peter Norvig里,他说
由于各种原因,在LISP中开发的web库和协议比在其他语言中开发得慢
因此,lisp在网络社区中的应用减少了,人们开始追求拥有更丰富的库集的语言。
LISP社区在构建web框架的过程中是否存在如此缓慢的原因?
发布于 2010-03-05 01:13:29
在我看来,诺维格先生的话与其说是对当前局势的评估,不如说是一种历史性的评论。也许在90年代中后期,web相关库在通用Lisp中出现的速度不如在其他语言(如Java )中出现的那么快。
但今天的情况肯定不是这样。我可以从头上列出至少五个通用Lisp web服务器(CL、Hunchentoot、Server、Araneida、AllegroServe),更不用说Apache的mod了。必须有近十几个不同的web框架(KPAX、Weblocks、UncommonWeb等)。对于你可以命名的每个web缩略词,都有常见的lisp库: SOAP、XML、XLST、FTP、XML-RPC、S3、AJAX.无限的。还有一些在其他语言中没有模拟的工具,比如奇妙的ParenScript。
请参阅公共Lisp目录,以获得大量web库列表:http://www.cl-user.net,其中许多库都是在http://www.common-lisp.net中维护的
发布于 2010-03-07 08:11:46
我认为在Lisp中开发库比在许多其他语言中开发的速度慢的一个主要原因是它太简单了。用Lisp编写的库通常不值得命名。它们只是几行代码,专门针对手头的任务。再多几分钟就会产生一个通用的库,但是当它只是几行代码时,似乎没有人会想要它。
大约一年前,我不得不在Clojure上读和写CSV。标准的建议是使用几个著名的、经过良好测试的Java库中的任何一个.我发现要识别哪个库最合适并学习它的API比简单地在写我自己的中学习要困难得多。它是50行,它处理我的预期用例漂亮。不过,它并不是一个很好的CSV库;它支持的情况很多,所以我还没有将它打包成一个库,放在克洛贾尔斯或类似的地方。我想我是问题的一部分。
最近在web上的实用Lisp教程中有一半包含一个HTML生成宏的例子。其中大多数都是生产质量的,只不过是一个满是代码的屏幕。这似乎不值得打包并调用库;任何优秀的Lisp程序员都可以在几分钟内编写这段代码。当然,它值得打包为一个库,并且威茨已经发布了一系列代码。
发布于 2010-03-04 16:24:38
我不知道他是什么意思。我的猜测是,这可能只是一个更通用的“缺乏通用Lisp库”抱怨的实例(我发现这主要是虚张声势,但无论如何)。
请注意,很感兴趣
第一个HTTP1.1兼容服务器和W3C用于调试HTTP1.1引用实现的服务器
是用Lisp写的。
https://stackoverflow.com/questions/2379103
复制相似问题