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.


Reply via email to