# What's in a namespace?

DevFeed: [What's in a namespace?](<https://devfeed.tech/articles/what-s-in-a-namespace-32177.md>)

Original publisher: [Read original article](<https://adambard.com/blog/whats-in-a-namespace/>)

Published: 2016-04-15T00:00:00Z

Content type: tutorial

Language: en

Sources: [Adam Bard](<https://devfeed.tech/sources/adam-bard.md>)

Topics: [Clojure](<https://devfeed.tech/topics/clojure.md>), [Code](<https://devfeed.tech/topics/code.md>), [Java](<https://devfeed.tech/topics/java.md>)

Tags: [clojure](<https://devfeed.tech/tags/clojure.md>), [code](<https://devfeed.tech/tags/code.md>), [internals](<https://devfeed.tech/tags/internals.md>), [source](<https://devfeed.tech/tags/source.md>)

## AI overview

This article examines what a Clojure namespace is internally. It explains that the ns macro expands into functions involved in loading code, including setting the current namespace, referring to clojure.core, and updating the namespace registry for non-core namespaces.

## Source excerpt

Every well-behaved clojure source file starts with a namespace declaration. The ns macro, as we all know, is responsible for declaring the namespace to which the definitions in the rest of the file belong, and generally also includes some requirements and imports and whatnot. But today (at Clojure/West, shoutout!) Stuart Sierra made a passing reference to the internals of ns during his talk that got me interested. But what is a namespace really?