Well, obviously :use can't be replaced by (require :refer). According to DRY, I strongly agree the deprecation of :use. But that doesn't mean interpreter shouldn't support it right now since we have legacy code base. However, we could come to an agreement to less use of :use. It's trivial to obey the rule with the help of some automation tools like Slamhound https://github.com/technomancy/slamhound which generates namespace import for you (of course, without :use). So why bother to use :use? My own experience when encountering the situation that I have to guess where a function belongs to is that I run Slamhound once and get a better ns declaration, then if I'm not allowed to change the code base, I revert it back.
On Wednesday, July 24, 2013 1:50:50 AM UTC+10, Greg Slepak wrote: > > I think I read somewhere that :use is no longer encouraged, but I could be > mistaken. > > From what I've read, it seems like most people agree that Clojure has too > many ways of including/importing/referencing/requiring/using things: > > > http://blog.8thlight.com/colin-jones/2010/12/05/clojure-libs-and-namespaces-require-use-import-and-ns.html > > > The above gives a very nice explanation of all the various difference, but > it also acknowledges their complexity. > > Since :use uses :require, and since :require can do everything that :use > can, can we simplify Clojure programming a bit for newcomers by deprecating > the use of :use? The situation in ClojureScript is even worse because it > adds :require-macros on top of all the other ways of including files. > > Ideally, it would be awesome if there was just a single directive for > everything, but perhaps there's some complicated low-level reason why > that's not possible. :-\ > > Thoughts? > > Thanks, > Greg > > P.S. If this has already been brought up you have my sincere apologies. > > -- > Please do not email me anything that you are not comfortable also sharing > with the NSA. > > -- -- 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.