On 11 February 2010 13:46, HB <hubaghd...@gmail.com> wrote:
> Hey,
> Since Clojure is a LISP dialect, does this mean that it doesn't
> support OOP?
> Thanks.

Regardless of whether Clojure supports OOP, not supporting it
certainly doesn't follow from being a Lisp dialect. Take a look at
CLOS (Common Lisp Object System), for instance. Incidentally, CLOS
was, AFAIK, originally engineered as a package of macros and functions
built on top of CL's core and only later included in the language
standard.

Similarly for being functional: apart from Clojure, Ocaml and F# offer
OOP-like syntactic features in otherwise mostly functional language
packages. While for F# this might be considered an interop feature,
that's certainly not the case with Ocaml.

I'm ill prepared to debate the correct definition of object
orientation, so I won't offer one, but at the very least I feel
justified in believing that there simply isn't one superior approach
to OOP (personally, I'm partial to the approach of not prodding it
with less than a 10 foot pole, but... um... never mind). If anything,
Clojure's being a Lisp makes it easier to come up with your own
approach, code it up and use it.

And then the Java approach is obviously directly accessible through
the Java interop facilities; perhaps not all of it at this stage, but
enough to give one's code quite a Javaish smell if one so desires.

Sincerely,
Michał

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