@@ -57,6 +57,10 @@ whose number is its bottom half. So the planet `~firbyr-napbes`,
57`48.879`, whose parent is `~mun`, `0xef`, `239`. The parent of `~mun`
57`48.879`, whose parent is `~mun`, `0xef`, `239`. The parent of `~mun`
58and all galaxies is `~zod`, `0`.
58and all galaxies is `~zod`, `0`.
60+##### <h5 id="pier">Pier</h5>
62+A ship's *pier* is its Unix directory. For planets the name of the pier is usually the planet name.
62> Nock is a Turing-complete, non-lambda combinator interpreter.
66> Nock is a Turing-complete, non-lambda combinator interpreter.
@@ -77,7 +81,7 @@ and all galaxies is `~zod`, `0`.
77> Hoon is a strict, higher-order typed functional language that compiles
81> Hoon is a strict, higher-order typed functional language that compiles
78> itself to Nock.
82> itself to Nock.
80−###### span: an inferred type
84+###### <h6 id="span">span:</h6> an inferred type
82A *span* defines a set (finite or infinite) of nouns and ascribes some
86A *span* defines a set (finite or infinite) of nouns and ascribes some
83semantics to it. There is no Hoon syntax for a span; it is always
87semantics to it. There is no Hoon syntax for a span; it is always
@@ -85,18 +89,18 @@ produced as the inferred range of an expression (*twig*).
86*See [basic types](../../hoon/basic/#-type-span-and-mold).*
90*See [basic types](../../hoon/basic/#-type-span-and-mold).*
88−###### core: a code-data cell
92+###### <h6 id="core">core:</h6> a code-data cell
90The code (*battery*) is the head, the data (*payload*) is the tail. All
94The code (*battery*) is the head, the data (*payload*) is the tail. All
91code-data structures in normal languages (functions, objects, modules,
95code-data structures in normal languages (functions, objects, modules,
92etc) become *core*s in Hoon.
96etc) become *core*s in Hoon.
94−- *battery*: the code of a core, a tree of *arms*
98+- <h6 id="battery">*battery*:</h6> the code of a core, a tree of *arms*
95−- *payload*: the data in a core
99+- <h6 id="payload">*payload*:</h6> the data in a core
97*See [basic types](../../hoon/basic)*.
101*See [basic types](../../hoon/basic)*.
99−###### arm: a named, functionally-computed attribute of a core
103+###### <h6 id="arm">arm:</h6> a named, functionally-computed attribute of a core
101The *twig* of each arm is compiled to a Nock formula, with the
105The *twig* of each arm is compiled to a Nock formula, with the
102enclosing `core` itself as the subject.
106enclosing `core` itself as the subject.
@@ -129,7 +133,7 @@ properties of the span of a compatible core). The default is `gold`
130*See [advanced types](/hoon/advanced)*.
134*See [advanced types](/hoon/advanced)*.
132−###### gate: a function/lambda/closure
136+###### <h6 id="gate">gate:</h6> a function/lambda/closure
134A *gate* is a core with one arm. To call a gate on an argument,
138A *gate* is a core with one arm. To call a gate on an argument,
135replace the sample (at [tree
139replace the sample (at [tree
@@ -145,7 +149,7 @@ The payload of a gate has a shape of `{sample context}`.
145[`%-` or `:call`](../../hoon/twig/cen-call/hep-call/) (the `twig` for
149[`%-` or `:call`](../../hoon/twig/cen-call/hep-call/) (the `twig` for
146calling a `gate`).*
150calling a `gate`).*
148−###### mold: a type constructor / validator
152+###### <h6 id="mold">mold:</h6> a type constructor / validator
150A *mold* is an idempotent gate (function), accepting any noun, and
154A *mold* is an idempotent gate (function), accepting any noun, and
151producing a range with a useful span.
155producing a range with a useful span.
@@ -192,7 +196,7 @@ Some common auras and their aliases:
193*See [basic types](../../hoon/basic/#-atom-p-term-q-unit-atom)*.
197*See [basic types](../../hoon/basic/#-atom-p-term-q-unit-atom)*.
195−###### twig: a Hoon expression
199+###### <h6 id="twig">twig:</h6> a Hoon expression
197A *twig* is a Hoon expression. Specifically, twig is the mold for the
201A *twig* is a Hoon expression. Specifically, twig is the mold for the
198noun that a Hoon source expression compiles to. A twig is always a cell.
202noun that a Hoon source expression compiles to. A twig is always a cell.
@@ -201,16 +205,16 @@ A twig has one of two forms: `{twig twig}`, which produces the ordered
201pair of the two twigs, or a cell `{stem bulb}`, where `stem` is an
205pair of the two twigs, or a cell `{stem bulb}`, where `stem` is an
202atomic symbol.
206atomic symbol.
204−- *stem*: an atomic symbol (`@tas`) - the name of a twig.
208+- <h6 id="stem">*stem*:</h6> an atomic symbol (`@tas`) - the name of a twig.
205−- *bulb*: The mold of the twig's contents.
209+- <h6 id="bulb">*bulb*:</h6> The mold of the twig's contents.
207Most twigs have a *regular form*, beginning with a *sigil* which is
211Most twigs have a *regular form*, beginning with a *sigil* which is
208either a *keyword* or a *rune*. Some twigs also have a syntactic
212either a *keyword* or a *rune*. Some twigs also have a syntactic
209*irregular form*; a few have *only* an *irregular form*.
213*irregular form*; a few have *only* an *irregular form*.
211−- *sigil*: a *keyword* or *rune* used to begin a twig
215+- <h6 id="sigil">*sigil*:</h6> a *keyword* or *rune* used to begin a twig
212- *keyword*: the value of a stem, prefixed with `:`.
216- *keyword*: the value of a stem, prefixed with `:`.
213−- *rune*: a pair of ASCII symbols used to begin a twig.
217+- <h6 id="rune">*rune*:</h6> a pair of ASCII symbols used to begin a twig.
215For example, the stem `%if` becomes the keyword
219For example, the stem `%if` becomes the keyword
216[`:if`](../../hoon/twig/wut-test/col-if/), with the rune `?:`. The first
220[`:if`](../../hoon/twig/wut-test/col-if/), with the rune `?:`. The first