I've never used defn-, ^:private, etc. But I rigorously prepend a prefix to 
mark private things, e.g. 
`-this-is-private-and-can-only-be-used-in-current-file`. From my 
experience, it makes reading/maintaining code much easier, in any 
programming language. I think I borrowed this convention from Python where 
_ is used to mark private things.

This rule can also be applied in data structures: {:public-api-data ... 
:-something-users-shouldnt-write-or-read ...}. This happens frequently when 
writing controlled inputs in React where user is responsible for storing 
the whole state of the UI control but at the same time it should be 
prohibited to modify or depend on some "internal" state parts, e.g. {:text 
"..." :-cursor-position {:x 123 :y 45}}.

In rare cases I also extract *.impl.* namespaces, in such case prefixing is 
not needed but there are more folders, files and jumps between editor tabs.

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