Indeed, all of these features were introduced in 1.2.0. Metadata has been around since (roughly) the beginning.
It's true that metadata being available only for "Clojure types" (those that implement clojure.lang.IObj) is unfortunate — but I wouldn't say that that's reason to consider the mechanism unreliable. Multimethods shouldn't be shunned, insofar as they can succinctly solve modeling problems that no other mechanism can. When you need to haul a big load, avoiding the big rig because it's not as fast as the race car doesn't make much sense. :-) - Chas On Jul 13, 2011, at 7:57 AM, Jonathan Fischer Friberg wrote: > All those are available in 1.2, or am I missing something? > > From my own experience: > metadata, when I started to learn clojure, I thought "this is awesome". When > I realized that metadata only applies to clojure types, it felt unreliable > and I never got to using it. > > protocols & records/types - they're straightforward, I use them. > > multimethods - since close to every mention of multimethods also involves > telling how slow they are, these are most often shunned. > > Jonathan > > On Wed, Jul 13, 2011 at 12:52 PM, Albert Cardona <sapri...@gmail.com> wrote: > Chas, > > "It seems that relatively few people are taking advantage of some of > Clojure’s most sophisticated and unique features: metadata; protocols, > records, and types; and multimethods. These facilities are absolutely > game-changers, at least IMO. Either most domains have no use for them > (I can’t believe that), or most people don’t know how to use them > effectively, thus they are left unused. Those of us that write about > and teach Clojure, take note." > > > What prevents me from using it is that clojure 1.3.* is still alpha or > early beta, and it's been for a long time. > If clojure 1.3 was released and development continued into 1.4, I > predict that protocols and records would suddenly start being used a > lot more. > > Albert > > -- > http://albert.rierol.net > http://www.ini.uzh.ch/~acardona/ > > -- > 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 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 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