我经常用PHP,Ruby或Perl编写Web应用程序.我正在开始研究Scheme,我想用这种语言尝试一些web项目.但我找不到最适合这种情况的环境.
我正在寻找以下功能:
所以,提前感谢所有回复.
Mik*_*zur 19
你可能想看一下Clojure:
Clojure是一种针对Java虚拟机的动态编程语言.[...] Clojure提供了对Java框架的轻松访问,具有可选的类型提示和类型推断,以确保对Java的调用可以避免反射.
Clojure是Lisp的一种方言,与Lisp共享代码为数据的哲学和强大的宏系统.
在Clojure中使用Java的Interop很简单,因此您可以根据需要重用任何现有的Java库.我确信有很多对Web开发有用的东西.
clojure-contrib有一个SQL API,还有ClojureQL,它应该涵盖你的数据库访问需求.
Clojure的Web框架正在开发中,名为Compojure.也可能有其他人.
Clojure的源代码可以在EPL下的github上找到.让它在Linux上运行很容易; 我只是克隆git repos并运行ant.
小智 9
我写了一篇关于这个主题的非常广泛的教程/电子书:http://lispwebtales.ppenev.com/
快速摘要:
这可能就是你要找的东西.
http://docs.plt-scheme.org/web-server/index.html
http://common-lisp.net/project/cl-weblocks/
小智 8
如果您对Common Lisp感兴趣并且不想使用weblocks路由,我建议您进行以下设置:
注意以上所有都是GPL或类似的许可证(一个更适用于lisp程序)
Gambit Scheme也有自己的网络应用程序解决方案.它使用Spork框架,基于Black Hole模块系统(均由Per Eckerdal提供).
Andrew Whaley有一个关于如何使用mod_proxy让Gambit,Black Hole和Spork在Apache下运行Web应用程序的初步教程.你可能想看一下.
在一个(可能)相关的注释中,如果你有这种倾向,Gambit还会把你的东西编译成C然后编译成可执行文件.
Paul Graham(及其朋友)专门为编写基本的Web应用程序而制作了一个lisp方言.它被称为Arc,你可以在arclanguage.org获得它.
它可能不适合非常复杂的大型网站,我不确定它的数据库支持状态如何,但Paul Graham知道如何在lisp中编写Web应用程序,因此Arc会让您在花费最多的时候轻松使用HTTP/HTML部分你的大脑循环学习lisp方式.