On Nov 24, 2010, at 7:47 PM, CuppoJava wrote:

> The other reason is that Clojure emphasizes functional programming and
> discourages mutation. This is fine, as I believe well-written code is
> usually functional anyway. The problem is that bad code is usually
> easier to write in an imperative way than a functional way, and the
> ability to write bad code is important I think. It's usually a lot
> quicker to whip up a mutative hack than think through the problem and
> factor out components and be functional about the whole thing. And
> usually, in the very very early stages of programming something, when
> you don't clearly know what it is you're programming, it's nice to be
> able to whip out a quick and dirty mutative hack. And then make it
> nice and elegant and functional later on, but Clojure makes doing that
> difficult for me.

I think this is a matter of mindset. Like learning a new human language: it 
takes a while to begin thinking in the new language. Until then, you have to 
think in your native language and translate on-the-fly, which makes certain 
things awkward to express.

Similarly with functional programming: once you begin to "think functionally", 
the functional solutions are the ones that come to mind first, rather than the 
imperative ones.

-- 
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