+1 on Phil's "proposal" "My assumption from our discussion would be that a warning would be added in a near release when :use was detected in the ns macro, and that it would be removed for Clojure 2.0 when backwards-incompatible changes are OK."
Thanks Ryan On Thursday, July 25, 2013 12:07:53 PM UTC-4, Laurent PETIT wrote: > > 2013/7/25 Phillip Lord <philli...@newcastle.ac.uk <javascript:>>: > > Laurent PETIT <lauren...@gmail.com <javascript:>> writes: > >> (:use foo :only [a b c]) will become (:require foo :refer [a b c]) > >> (:use foo) will become (:require foo :refer :all) > > > > The same logic could suggest we remove "or" because we can express it > > with "and" and "not". > > Except nobody complains about "or", "and" or "not" ;-) > > > > >> This will save lots of time and frustration among people trying to > >> remember why (:use :only) somewhere, why (:require :refer :all) > >> somewhere else, etc. > > > > And cause frustration for people who find typing > > > > (:require clojure.test :refer :all) > > > > when they used to type > > > > (:use clojure.test) > > Code is read more often than written. > Clojure makes default choices "easy", and non default choices "harder" > for a reason: to guide people. > > It's like the mantra "if you find it hard to write, you may be doing > it wrong (though it's still possible to do)". > > Also, for the REPL, there will still be the (use 'clojure.tests) call > that you can use in your REPL bootstrapping code. > > > To me, the discussion seems to be confused; I understand why making an > > implementation simpler is important. But removing a simple declaration > > to replace it with a more complex one doesn't seem to make things > > simpler to me. > > I don't think I'm confused, AFAIC: I'm not even thinking from the > implementation perspective, but from the consumer perspective. > It's also psychological: if you remove :use, even at the cost of > keeping :refer :all, that's one less top-level 'ns directive to > remember. > > > I agree that it is micro-optimization, but this counts too, noticeably > because it's one of the first things a newcomer is confronted to when > he starts seriously with the language. > -- -- 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/groups/opt_out.