liveBook · Manning

*stack*

As explained in Clojure: The Essential Reference

*stack* is an internal dynamic variable in the clojure.xml namespace.

`*stack*` is a dynamic variable in `clojure.xml`. It is publicly accessible but is an implementation detail, not an API intended for public use. section 23.21

Its value and role in XML processing are not specified. Despite the name, it should not be confused with a last-in, first-out stack built from a list or vector using `conj`, `peek`, and `pop`. section 23.21 section 9.4.1 section 12.6

How Clojure: The Essential Reference covers it

How deep it goes
Names and classifies the variable without specifying its value, binding behavior, or role in XML processing.
Examples
Lists *stack* alongside *current*, *sb*, and *state*, but shows no example of using it.
What it assumes
Assumes familiarity with dynamic variables and namespaces; provides no introductory binding example.
What you can do after
Evaluate/understand *stack* as an internal variable rather than a public API.
How it connects
Connects *stack* to dynamic variables and the clojure.xml namespace.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Clojure: The Essential Reference. The section links point to the parts of the book it draws on.