我对Scheme有一定的了解。我正在阅读《OnLisp》,并希望能够在其中进行一个真实的项目,最可能是网站开发。我想知道人们用什么样的设置来开发lisp网站。我在家里有几台Mac电脑,我想使用Clozure CL。但我有些担心。我在互联网上读到,CL没有可靠的线程设施和良好的网络功能。这是真的吗?你的经验如何?
PS:不要告诉我关于Clojure的事情 :). Lisp是我需要解决的问题。
PS:不要告诉我关于Clojure的事情 :). Lisp是我需要解决的问题。
目前我正在使用Restas,这是一个基于Hunchentoot
并受到Rails路由系统启发的框架。我还使用Postmodern与PostgreSQL
数据库进行交互,并使用cl-markup生成HTML,尽管我正在考虑切换到cl-who,因为它看起来更加可定制。
当我开始时,我也考虑使用Parenscript生成JavaScript
,但现在我只是用Mootools和普通的JavaScript
就很满意了。
所有内容都在SBCL上运行,并且可以通过Quicklisp获得。
不确定为什么它不会有“良好的网络”;如果你想编写便携式的Common Lisp应用程序,就不能依赖于线程,因为某些实现不支持它们(据我所知,只有clisp
,尽管你可以使用实验性线程支持进行编译)。如果你计划选择一个实现并坚持使用它,你就不会遇到这个问题。
“标准”的CL Web堆栈是Hunchentoot/cl-who/clsql,尽管你可以找到在Araneida或Portable AllegroServe上运行的教程。
我使用的设置是Debian/SBCL运行quicklisp和上述系统以及MySQL(尽管我正在认真考虑跳转到Postgres)用于数据库和nginx在Hunchentoot前面运行,提供任何静态内容。