On Thu, Sep 2, 2010 at 9:29 PM, HB <hubaghd...@gmail.com> wrote:
> Hey,
> I finished reading "Programming Clojure" and "Practical Clojure" and
> I'm hooked :)
> Please count me in the Clojure club.
> But I failed how to think in Clojure.
> My main career is around Java web applications (Hibernate, Spring,
> Lucene) and Web services.
> Lets not talk about Java web frameworks neither Clojure ones, I want
> to talk in general.
> Usually we create some domain entities, map them with Hibernate/
> iBatis.
> I don't know how a Clojure application would be build without objects.
> I think Scala really shines here, this OOP/FP is really powerful
> approach (please note I'm not saying Clojure isn't good, I don't seel
> flame war)
> How to think in Clojure? how to achieve this shift?
>

Reading a bit about OOP in either Common Lisp or Dylan might help ease you into
'thinking clojure'. It can provide a bridge between then Java OOP way
and other ways of doing OOP.

I had the opposite problem from you. When I started programming,
Dylan and Common Lisp style OOP made far more sense to me then the C++/Java way
( and the Smalltalk way but I didn't want to group it with C++/Java ).
There is a fundamental
difference in OOP in Lisp style languages from the Algol ones and
knowing more about those
other forms of OOP might make the path easier to see.

There is an older Guy Steele essay that talks in part about Scheme and
OOP ( something
that most people consider anti-ethical )
http://dreamsongs.com/ObjectsHaveNotFailedNarr.html
Basic message, some form of OOP is possible in any language, it is
just how easy it is made.

As David said, I would be careful about reaching for the methods in
Clojure that makes OOP
easier and work more with maps, vectors, fns etc and then look at the others.

-

for more info on OOP in dylan see:

http://www.opendylan.org/books/drm/

for more info about OOP in Common Lisp, I would recommened:

http://www.amazon.com/Object-Oriented-Programming-Common-Lisp-Programmers/dp/0201175894/ref=sr_1_9?ie=UTF8&s=books&qid=1283484149&sr=8-9

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