On Mon, Oct 27, 2014 at 2:21 PM, larry google groups < lawrencecloj...@gmail.com> wrote:
> The differences between OOP and multimethods should be stressed. > > I just wrote about this on my blog, and those who mostly worked with OOP > kept wondering, how do you get inheritance of functionality? > First of all, let me state that I'm a complete Clojure noob. Still, I thought that Clojure's multimethods were a completely valid OOP approach. Q uoting Alan Kay: OOP to me means only messaging, local retention and protection and hiding > of state-process, and extreme late-binding of all things. It can be done in > Smalltalk and in LISP. There are possibly other systems in which this is > possible, but I'm not aware of them. Notice that he intentionally left "inheritance" out from that definition. That means that the class based, C++ style that we usually call "OOP" is actually just one particular kind of OOP - so the way that JavaScript, Common-Lisp CLOS and, as I see it, Clojure multimethods do it are also valid "OOP" as well, I believe. Am I right? Or am I missing something here? Thanks in advance, Rogerio. -- 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/d/optout.