At least a few tools built on top of Clojure (not part of the base language
implementation) might not work with multiple namespaces defined in the same
file.

The library tools.namespace, for one, looks for only the first ns form in
each source file, and assumes there are no more after that.  I do not know
for sure, but this might negatively impact the handling of multi-namespace
source files in Stuart Sierra's reloaded workflow, which uses
tools.namespace to determine the order to unload and reload namespaces.

The Eastwood lint tool is very explicit about checking that the file name
and namespace within the file have corresponding file/namespace names, and
won't give any useful information other than about such mismatches, if they
are found.

I am not saying those are fundamental limitations of those tools that
couldn't be improved (I don't know if they could -- maybe), but something
to watch out for at least with their current implementations.

Andy

On Wed, Jan 11, 2017 at 11:03 AM, Didier <didi...@gmail.com> wrote:

> Maybe you're right in not recommending this, but I find it at first glance
> to be quite nice. Now, I wouldn't keep switching namespace back and forth,
> but having two sections in the file, one the public API at the top, and
> everything else at the bottom in a private namespace, that's quite nice I'd
> say.
>
> I hate juggling through files, like C++ header and body files annoy me a
> lot.
>
> --
> 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/d/optout.
>

-- 
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/d/optout.

Reply via email to