On Feb 8, 2015, at 6:42 PM, David James <davidcja...@gmail.com> wrote: > I often group functions that operate on similar data structures together in a > namespace. This isn't always clear-cut, because some functions may "fit" in > more than one namespace. I sometimes use a (soft) convention to group > functions by the first argument. Yes, this means that my Clojure projects > resemble OO projects, at least in terms of what logic goes where. See what > works for you.
At World Singles we’ve ended up with just over 40 main namespaces that correspond to the major "domain concepts" in our application, with a handful of more generic names that match external system integration points or clearly defined subsystems, and then sub-namespaces for implementation variants and general decomposition (e.g., worldsingles.payment, worldsingles.payment.braintree, worldsingles.payment.sbw, worldsingles.transparensee - search engine, worldsingles.data - our general persistence layer). Our average namespace is about 200 lines long (we have just over 100 namespaces in our main app - they range from 16 lines to 1,266). Sean Corfield -- (904) 302-SEAN An Architect's View -- http://corfield.org/ "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 --- 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.