Thank you, Malcolm. I'm completely new to LISP and its dialects and I'm a 
little bit worried about the absence of support for OOP in Clojure. How do 
you decompose large systems in Clojure?

On Thursday, December 26, 2013 2:52:26 PM UTC+1, Malcolm Sparks wrote:
>
> Hi Massimiliano.
>
> The absence of a well-established framework for web development in Clojure 
> is not a sign of its immaturity (rather the opposite). Web frameworks can 
> give you some increased productivity to begin with, but as soon as you need 
> to do something that isn't naturally supported by your chosen web framework 
> you're in trouble, and that's when productivity drops off a cliff as you 
> struggle to bend the web framework to your requirements. For example, you 
> choose a web framework with good REST support, then find out later you need 
> to add web sockets.
>
> I've written and deployed about a dozen serious web applications using 
> Clojure. My opinion is the best strategy that guarantees long-term 
> productivity is to build your system from a set of smaller components that 
> you choose 'a la carte'. That way, if your requirements change you can swap 
> in and out other components as you need to. I would guess that the vast 
> majority of Clojure web applications are written this way, which is why you 
> don't see widescale adoption of a particular web 'framework' by the Clojure 
> community. Instead, Clojure developers pick from a set of constituent 
> parts: Jetty, http-kit, Ring, Compojure, Hiccup, Enlive, Stencil, 
> Liberator, domina, dommy, C2, Om, <shameless-plug>bidi</shameless-plug>, 
> and so on and so on. The fact that these components all fit together so 
> well is one of the truly outstanding features of the Clojure platform. Few 
> languages come close to this level of integration, which is why they 
> actively curate frameworks.
>
> Investing time in Clojure is both pleasurable and productive. It's a 
> question of whether you want 'short-term' productivity to meet a particular 
> project goal (choose a web framework), or sustainable productivity to 
> deliver value to your users over the longer term (choose to learn, 
> understand and utilize a set of components from the wide pool that the 
> Clojure community has created).
>
> Regards,
>
> Malcolm
>
>
>
>
>
> On Wednesday, December 25, 2013 9:06:20 PM UTC, Massimiliano Tomassoli 
> wrote:
>>
>> Hi,
>> I'm not sure if Clojure is the right language for me. I'd like to use 
>> Clojure mainly for web development but I don't know if it's already mature 
>> enough to be productive. For instance, Scala has Play, Groovy has Grails, 
>> etc... If I'm not wrong, Clojure doesn't have a well-established framework 
>> for web development. I'm intrigued by Clojure because I like functional 
>> programming, but I need to be productive and, alas, I don't have time to 
>> learn Clojure just for my pleasure.
>>
>

-- 
-- 
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
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to