practicalli / practicalli/clojure
Understanding namespaces
Nobody has claimed this yet.
- Dominant language
- Makefile
- Stars
- 117
- Forks
- 36
- PR merge metrics
- No merged PRs in 30d
Description
I thought namespaces were the same as packages in Java
namespaces are different, they don't exist in java
(the clojure namespace construct has a representation in java, but it's not something a non-clojure java class would be likely to care about, use, or resepect)
It's much weirder / messier than that. If a namespace creates a class, the heirarchy of the ns is translated into the class' package
but the ns itself is a data structure, and clojure keeps a mapping of all ns symbols to their implementations, and each ns contains mappings describing what's visible to them and what's exported from them
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No documentation file or test is named. Review the existing explanation of Clojure namespaces and compare it with the distinctions described here, including Java package translation, namespace data structures, and symbol mappings. Done means the documentation clearly explains these differences without implying that namespaces are Java packages.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- clojure
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100