As an informal survey of people who use both Clojure and Common Lisp for
different projects, what do you see as the main determining factors behind
your choice to use either Clojure or Common Lisp for a project, given the
present state of Clojure.  Let's only assume we are talking about projects
you completely own and have complete freedom to do what you want with.

Common lisp:
   Compiled on the processor, fast.
   Reader macros.
   Quality, not quantity of libraries.
   Multi-paradigm programming with no nudging -- programmer has freedom to
be insane/bizarre in ways Clojure makes hard (see Let Over Lambda for
examples)
   Downsides:
     Hard to deploy. -- but not a problem as server side of web app
     Can't run on on GAE. -- need to run a server or rent/maintain virtual
server.
     Limited to native librares, though they tend to be awesome.

Clojure:
   Neat concurrency stuff.
   Better deployment.
   Can run on Google App Engine. (maybe ABCL can too, but I wouldn't want to
use that personally).
   Lots of Java libraries, many more than for CL.
   Increasing a large number of awesome native libraries.
   Downsides:
      As server side of web app in apache, less straigtforward requires
Tomcat, Java crud.
      Java interop is great-- but Java itself sucks!  There is an impedance
mismatch of language semantics.
      The nudging of paradigm/idiom makes many things easier in Common Lisp.
      Lots of cool benefits of Clojure (such as any/all GUI stuff for
example) depend on crufty Java nonsense you must contend with.


So, for me at this point, if I don't need interesting concurrent stuff, and
I do my own hosting, Common Lisp in Hunchentoot or mod lisp still seems like
a superior web development approach.  On the other hand if I am doing
desktop apps, applets, want to use GAE, etc, Clojure seems better.   I feel
like as time goes on we will be more abstracted away from the pain of Java.

Any thoughts on how you make your decision for specific projects?

Thanks,
Rob

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to