On Sun, Nov 11, 2012 at 6:40 PM, Mark Engelberg
<mark.engelb...@gmail.com> wrote:
> set, string, numeric-tower, combinatorics all provide fundamental operations
> I need throughout my code.

Ah, very different fields of work. Makes sense.

> My work doesn't usually involve creating a standalone compiled program.  I
> move around from namespace to namespace, interacting with my code from the
> REPL.  In a sense, my code along with the REPL is just my "workbench", a
> suite of utilities that I use to solve problems interactively.

OK. That also makes sense.

> One complication that hasn't yet been discussed in this conversation about
> preferring refer to use is that some libraries, such as Incanter, spread
> functions across several namespaces but the tutorials don't really tell you
> which functions come from which namespaces.  The tutorial expects you to
> just "use" all of the relevant namespaces to use Incanter.

Could I argue poor library design here? No well-defined API? :)

> Just curious, why do you take such care to go through and remove any
> redundant imports?

Clarity of intent. When I read an (ns ..) form, it should tell me
exactly what this namespace depends on, no more, no less. I like a
very structured flow of dependencies. When I see repeated dependencies
across namespaces, if feels like a code smell to me and I'll look for
an appropriate refactoring. Sure, some of the "core" Clojure libraries
(core + contrib) are repeated as dependencies in several namespaces,
but even there you might be surprised at how little repetition I have.
Call it OCD :)
-- 
Sean A Corfield -- (904) 302-SEAN
An Architect's View -- http://corfield.org/
World Singles, LLC. -- http://worldsingles.com/

"Perfection is the enemy of the good."
-- Gustave Flaubert, French realist novelist (1821-1880)

-- 
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

Reply via email to