On Nov 23, 2015 6:34 AM, "Bobby Bobble" <bpb...@gmail.com> wrote: > > let's not forget that Clojure's datastructures are objects. They respond to messages like seq, first, rest etc (which requires a bit more complexity than what Clojurians hail as "just data", which would be like 1010101111110101011111000110000011...what Clojurians really mean by that term is something like "uniform access to objects")
Hmm. If by "object" you mean entity, thing, value, etc. - i.e. mathematical structure - then I'd agree, but in my view Clojure does not involve OO "objects" in any way, _conceptually_. "This function is defined on that type" != "that type 'responds to' this function" . > > (Clojure's vocabulary is not to be questioned...why say "conflate" or "confuse" when you can say "complect" to reinforce in-group membership ?) /rant THANK YOU! I can't count the number of times I've had to restrain myself from an apoplectic rant about this hideous non-word. What is wrong with "complicate" FFS?! > > anyway to the point, it depends what you mean by "objects". > > What you propose is to use maps as a kind of namespace for functions. It's a good idea. I use this pattern too. Really, namespaces should be maps...actually I think there was a project called Kiss to that end. To the OP's original point: you can view functions as data, but I find myself moving toward a view of data as functions. E.g. it's as nullary fns. > > But real OO, as realized by Smalltalk and Self is about messaging, not objects. Thank you again. Objective C is another good example. Dunno why they called it OO in the first place. AFAIA there's no way in Clojure to represent "the invocation of a function on a thing" the way you can represent "the sending of a message to an object" in Smalltalk. Not quite sure what you mean, but with stuff like core.async and protocols it's possible to support an explicit msg - passing idiom in Clojure. But I think I agree with you. It would be something you build on more primitive notions. Gregg -- 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.