Lisp may be a superior langage, but setting it up is impractical for anybody who isn't used to hack emacs and bash scripts all day.
Lisp may be a superior langage, but setting it up is impractical for anybody who isn't used to hack emacs and bash scripts all day.
> but setting it up is impractical for anybody who
> isn't used to hack emacs and bash scripts all day
This is Hacker News right?Having built websites in PHP, Python, Ruby, and Clojure ... guess what? They all present you with equal challenges if you're not building trivial small websites on shared hosting.
Getting a website up and running in Clojure is as simple as it gets. Compojure ships with a good webserver baked right in.
I've built websites in PHP, Python, Common Lisp, and RXML/Pike. Some have been very small, and some have been medium-sized. I currently work on a several-hundred-thousand-line PHP codebase, and I don't think being in PHP has been a serious problem for it.
I do agree that language infrastructure is more important for small projects, and language power is more important for large projects. I think it's critical to provide good language infrastructure precisely because of this, though, since virtually everyone starts out learning a language with a small project! It's really easy to bounce off of CL, when you're first starting out, as easily demonstrated by a survey of c.l.l (at least, when I paid attention there 2003-2007), and it's not because of the language itself; it's because the infrastructure is (was?) severely lacking.
I think it's harder to build a good infrastructure with a more powerful language, ironically, because the power substitutes for things that would otherwise be infrastructure-related, and once you've learned enough of the language to work on infrastructure, you no longer care so much.
Well you first have to get clojure running. And that's not as simple as it gets
My time from 0 to getting (the correct!) result of (+2 2) from Clojure's REPL was approximately 60 seconds.
Pretty simple.
#apt-get install closure
#closure
user=> (+ 2 2)
4
Most of that 45 s was waiting for apt-get.
Now it's not going to be this easy on platforms that don't have such nice package management (e.g. Windows). Furthermore, Raphael_Amiard makes a good point that there's a lot more infrastructure that has to go into web application development (or any other kind of application development, for that matter) than computing the sum of 2 and 2.
Nonetheless, it just doesn't seem that hard. At worst, put a "clojure /path/to/project.lisp" in rc.local or equivalent.
(Caveat: my web development experience consists entirely of a couple of toy projects I ran on my laptop for my own amusement. Take all this with a grain of salt.)
EDITed for formatting.
I don't know why the Enclojure plugin for Netbeans isn't mentioned more. It provides an interactive development environment for Clojure in package that is much easier to digest for anyone who is familiar with an IDE.
Also you don't code a website from a REPL, you need a proper developpement environnement, some way to manage your website dependencies, etc.. well, theses issues have been covered in lengths these last days, in a few articles, and the clojure people are well aware of it, and working on it, but for having done a serious website in clojure , let me say it's nowhere as automated or simple as setting up a LAMP server.