On Aug 5, 2013, at 8:15 AM, Mikera wrote: > On Monday, 5 August 2013 11:35:22 UTC+1, Phillip Lord wrote: > Anthony Grimes <discip...@gmail.com> writes: > > I can't think of a single good reason to not deprecate :use. :require can > > do everything :use could do now. > > Wait for it, wait for it.... > > > This isn't about whether or not (:use ..) without :only is bad. I'd go as > > far as to say that outside of test files (and sometimes not even those) and > > repl sessions, :use without :only is objectively bad. > > Yeah, you see, you can think of a single good reason, although you then > contradict yourself just to make it clear that it's not the case. > > I mean, is there really any good reason why namespace qualifing > "deftest" should be necessary. Reason -- it's familiar and there are not > that many functions in clojure.test. > > Another good reason, I have given before. I have written hundreds of > lines of code, with *no* calls at all to clojure.core, and lots to my > own library. Why under these circumstances is using clojure.core by > default and requiring my own library conducive to clear code?
I think that these are good points and that there are indeed good reasons to keep :use or something with equivalent functionality and conciseness (which, as far as I can tell, :require :use :all doesn't quite deliver). More generally, I think we should keep in mind that different Clojure programmers work in different programming contexts with different needs and priorities. In my own context it'd actually be best to be able to say (ns foo :use-whatever-you-need) and leave it to the system to find things and tell me if there are conflicts. Yes, that would be insane in some contexts, and if I used this thing and then wanted to port my code to some other context, like controlling a nuclear power plant, then I'd want a utility function something like print-explicit-ns-declaration-for-everything-you-need, which I could use to produce the mess that I'd then substitute for the concise thing before it goes into production, so I could make sure that all of the references were really correct, etc. I don't expect everyone to think this is a good idea in their programming contexts, but from where I sit it would really be fantastic. I also don't expect anyone to implement this unless they have similar needs and interests and time, and I don't expect Clojure to be changed to support anything like this. My point is just that the needs and priorities are diverse, and I wish people wouldn't be so enthusiastic about deprecating features that are valued by others in the community. -Lee -- -- 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.