Laurent PETIT a écrit : > 2009/4/24 Christophe Grand <christo...@cgrand.net>: > >> Konrad Hinsen a écrit : >> >>> What I miss most for a 1.0 release is some idea of how future changes >>> will be handled, and what Clojure users can safely count on. For >>> example, every new function added to clojure.core will break code >>> that has chosen to use the same name for something else. While such >>> incompatibilities are easy to fix (with an exclusion in refer- >>> clojure), they are still a pain if they happen frequently. >>> >> What about something like: >> (ns my-ns >> (:refer-clojure :version 1.0.0)) >> to prevent name clashes with future clojure vars? >> > > > Do you think about something like that in the "library part" ? : > > (defn #^{ :since 1.0.0} new-function [] ....) > > I like that. >
Adding #^{ :since :1.0.0} can prove tedious so I thought of some helper functions such as: ns-unversioneds (returns a map), alter-since! and emit-alter-since. It would also be handy when one :use a library without a :only clause: (ns my-ns (:refer-clojure :version :1.0.0) (:use clojure.contrib.seq-utils :version :1.1.0)) -- Professional: http://cgrand.net/ (fr) On Clojure: http://clj-me.blogspot.com/ (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 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 -~----------~----~----~----~------~----~------~--~---