on master help sign in
Various fixes and improvements.
fd4ee29C. Guy Yarvin
docs/hoon/examples.md+1−1
@@ -1,5 +1,5 @@
1---
1---
2−sort: 9
2+sort: 8
3title: Examples
3title: Examples
4next: true
4next: true
5---
5---
docs/hoon/exercises.md+1−1
@@ -1,5 +1,5 @@
1---
1---
2−sort: 14
2+sort: 11
3---
3---
4
4
5# Exercises
5# Exercises
docs/hoon/library.md+3−3
@@ -1,8 +1,8 @@
1---
1---
2−sort: 11
2+sort: 10
3−title: Std Library reference
3+title: Standard library
4---
4---
5
5
6−# Library reference
6+# Standard library
7
7
8<list dataPreview="true" titlesOnly="true"></list>
8<list dataPreview="true" titlesOnly="true"></list>
docs/hoon/catalog.md → docs/hoon/reference.mdrenamed+1−1
@@ -1,5 +1,5 @@
1---
1---
2−sort: 10
2+sort: 9
3title: Twig reference
3title: Twig reference
4---
4---
5
5
docs/hoon/troubleshooting.md+1−1
@@ -1,5 +1,5 @@
1---
1---
2−sort: 8
2+sort: 12
3title: Troubleshooting
3title: Troubleshooting
4next: true
4next: true
5---
5---
docs/hoon/twig.md+1−2
@@ -69,7 +69,6 @@ this mistake the hard way, but designating subexpressions as
69
69
70## Twig categories
70## Twig categories
71
71
72−Fortunately, the twigs fit neatly into clear categories which
72+Most twigs fit into clear categories by meaning and rune prefix:
73−match their rune prefix. Read forward by category:
74
73
75<div><list/></div>
74<div><list/></div>
docs/hoon/twig/atom.md+14−4
@@ -12,6 +12,18 @@ is always `[1 constant]`.
12(Some of the "constant" syntax below can interpolate dynamic
12(Some of the "constant" syntax below can interpolate dynamic
13twigs. When it does, it obviously isn't constant at all.)
13twigs. When it does, it obviously isn't constant at all.)
14
14
15+## Auras
16+
17+Recall the `$atom` span, `{$atom p/aura q/(unit @)}`.
18+
19+Each atom constant syntax implies an aura, which is just a
20+textual symbol. The aura is used indiscriminately to convey
21+physical units, semantic interpretations, parsing syntax, and/or
22+printing syntax. It's soft type and can be manually overridden.
23+
24+We generally write an aura in its irregular mold syntax, such as
25+`@ud`. The syntax for the
26+
15## Twigs
27## Twigs
16
28
17```
29```
@@ -19,8 +31,8 @@ twigs. When it does, it obviously isn't constant at all.)
19++ twig
31++ twig
20 {$rock p/@tas q/@}
32 {$rock p/@tas q/@}
21 {$sand p/@tas q/@}
33 {$sand p/@tas q/@}
22− {$knit p/(list $@(@ {$~ p/twig}))}
34+ {$knit p/(list $@(@ {$~ p/seed}))}
23− {$path p/(list (each @tas twig))
35+ {$path p/(list (each @tas seed))
24--
36--
25```
37```
26
38
@@ -106,5 +118,3 @@ A path can be dynamically interpolated with `[]`:
106```
118```
107
119
108equals `/foo/bar/baz`.
120equals `/foo/bar/baz`.
109−
110−
docs/hoon/twig/bar-core/dot-trap.md+1−1
@@ -2,7 +2,7 @@
2sort: 3
2sort: 3
3---
3---
4
4
5−# `:trap. |., "bardot", {$trap p/twig}`
5+# `:trap. |., "bardot", {$trap p/seed}`
6
6
7Form a trap, a core with one arm `$`.
7Form a trap, a core with one arm `$`.
8
8
docs/hoon/twig/bar-core/hep-loop.md+1−1
@@ -2,7 +2,7 @@
2sort: 4
2sort: 4
3---
3---
4
4
5−# `:loop, |-, "barhep", {$loop p/twig}`
5+# `:loop, |-, "barhep", {$loop p/seed}`
6
6
7Form a trap (a core with one dry arm `$`) and kick it.
7Form a trap (a core with one dry arm `$`) and kick it.
8
8
docs/hoon/twig/bar-core/tar-gill.md+1−1
@@ -2,7 +2,7 @@
2sort: 6
2sort: 6
3---
3---
4
4
5−# `:gill, |*, "bartar", {$gill p/moss q/twig}`
5+# `:gill, |*, "bartar", {$gill p/moss q/seed}`
6
6
7Form a gill, a wet one-armed core with payload `{sample context}`.
7Form a gill, a wet one-armed core with payload `{sample context}`.
8
8
docs/hoon/twig/bar-core/tis-gate.md+1−1
@@ -2,7 +2,7 @@
2sort: 2
2sort: 2
3---
3---
4
4
5−# `:gate, |=, "bartis", {$gate p/moss q/twig}`
5+# `:gate, |=, "bartis", {$gate p/moss q/seed}`
6
6
7Form a gate, a dry one-armed core with payload `{sample context}`.
7Form a gate, a dry one-armed core with payload `{sample context}`.
8
8
docs/hoon/twig/buc-mold/cab-shoe.md+1−1
@@ -3,7 +3,7 @@ sort: 1
3preview: Form a mold
3preview: Form a mold
4---
4---
5
5
6−# `:shoe $_ "buccab" {$shoe p/twig}`
6+# `:shoe $_ "buccab" {$shoe p/seed}`
7
7
8Form a mold which normalizes to an example.
8Form a mold which normalizes to an example.
9
9
docs/hoon/twig/cen-call/sig-open.md+1−1
@@ -2,7 +2,7 @@
2sort: 3
2sort: 3
3---
3---
4
4
5−# `:open, %~, "censig", {$cnsg p/wing q/twig r/twig}
5+# `:open, %~, "censig", {$cnsg p/wing q/seed r/seed}
6
6
7## Expands to
7## Expands to
8
8
docs/hoon/twig/col-cell/cab-scon.md+1−1
@@ -2,7 +2,7 @@
2sort: 6
2sort: 6
3---
3---
4
4
5−# `:scon, :_, "colcab", {$scon p/twig q/twig}`
5+# `:scon, :_, "colcab", {$scon p/seed q/seed}`
6
6
7Construct a cell, inverted.
7Construct a cell, inverted.
8
8
docs/hoon/twig/col-cell/hep-cons.md+1−1
@@ -2,7 +2,7 @@
2sort: 1
2sort: 1
3---
3---
4
4
5−# `:cons, :-, "colhep", {$cons p/twig q/twig}`
5+# `:cons, :-, "colhep", {$cons p/seed q/seed}`
6
6
7Construct a cell (2-tuple).
7Construct a cell (2-tuple).
8
8
docs/hoon/twig/col-cell/ket-conq.md+1−1
@@ -2,7 +2,7 @@
2sort: 3
2sort: 3
3---
3---
4
4
5−# `:conq, :^, "colket", {$conq p/twig q/twig r/twig s/twig}`
5+# `:conq, :^, "colket", {$conq p/seed q/seed r/seed s/seed}`
6
6
7Construct a quadruple (4-tuple).
7Construct a quadruple (4-tuple).
8
8
docs/hoon/twig/col-cell/lus-cont.md+1−1
@@ -2,7 +2,7 @@
2sort: 2
2sort: 2
3---
3---
4
4
5−# `:cont, :+, "collus", {$cont p/twig q/twig r/twig}`
5+# `:cont, :+, "collus", {$cont p/seed q/seed r/seed}`
6
6
7Construct a triple (3-tuple).
7Construct a triple (3-tuple).
8
8
docs/hoon/twig/dot-nock/tar-nock.md+1−1
@@ -2,7 +2,7 @@
2sort: 1
2sort: 1
3---
3---
4
4
5−# `:nock, .*, "dottar", {$nock p/twig q/twig}`
5+# `:nock, .*, "dottar", {$nock p/seed q/seed}`
6
6
7Compute the Nock function.
7Compute the Nock function.
8
8
docs/hoon/twig/dot-nock/tis-same.md+1−1
@@ -2,7 +2,7 @@
2sort: 4
2sort: 4
3---
3---
4
4
5−# `:same, .=, "dottis", {$same p/twig q/twig}`
5+# `:same, .=, "dottis", {$same p/seed q/seed}`
6
6
7Test for equality with Nock `5`.
7Test for equality with Nock `5`.
8
8
docs/hoon/twig/dot-nock/wut-deep.md+1−1
@@ -2,7 +2,7 @@
2sort: 2
2sort: 2
3---
3---
4
4
5−# `:deep, .?, "dotwut", {$deep p/twig}`
5+# `:deep, .?, "dotwut", {$deep p/seed}`
6
6
7Test for cell or atom with Nock `3`.
7Test for cell or atom with Nock `3`.
8
8
docs/hoon/twig/ket-cast/sig-burn.md+1−1
@@ -1,4 +1,4 @@
1−# `:burn`, `^~`, "ketsig", `{$burn p/twig}`
1+# `:burn`, `^~`, "ketsig", `{$burn p/seed}`
2
2
3Try executing `p` at compile time.
3Try executing `p` at compile time.
4
4
docs/hoon/twig/sig-hint/fas-funk.md+1−1
@@ -1,7 +1,7 @@
1---
1---
2sort: 1
2sort: 1
3
3
4−# `:funk ~/ "sigfas" {$funk p/term q/twig}`
4+# `:funk ~/ "sigfas" {$funk p/term q/seed}`
5
5
6Jet hint for a gate whose context is a registered core.
6Jet hint for a gate whose context is a registered core.
7
7
docs/hoon/twig/sig-hint/gal-thin.md+1−1
@@ -2,7 +2,7 @@
2sort: 6
2sort: 6
3---
3---
4
4
5−# :thin ~< "siggal" {$thin p/$@(term {p/term q/twig}) q/twig}
5+# :thin ~< "siggal" {$thin p/$@(term {p/term q/seed}) q/seed}
6
6
7Raw hint, applied to the result of computation.
7Raw hint, applied to the result of computation.
8
8
docs/hoon/twig/sig-hint/gar-hint.md+1−1
@@ -2,7 +2,7 @@
2sort: 5
2sort: 5
3---
3---
4
4
5−# `:hint ~> "siggar", {$hint p/$@(term {p/term q/twig}) q/twig}`
5+# `:hint ~> "siggar", {$hint p/$@(term {p/term q/seed}) q/seed}`
6
6
7Raw hint, applied before computation.
7Raw hint, applied before computation.
8
8
docs/hoon/twig/sig-hint/wut-warn.md+1−1
@@ -2,7 +2,7 @@
2sort: 4
2sort: 4
3---
3---
4
4
5−# `:warn ~? "sigwut" `{$warn p/twig q/twig r/twig}`
5+# `:warn ~? "sigwut" `{$warn p/seed q/seed r/seed}`
6
6
7Conditional debugging printf.
7Conditional debugging printf.
8
8
docs/hoon/twig/tis-flow/col-fix.md+1−1
@@ -2,7 +2,7 @@
2sort: 9
2sort: 9
3---
3---
4
4
5−# `:fix, =:, "tiscol", {$fix p/(list (pair wing twig)) q/twig}`
5+# `:fix, =:, "tiscol", {$fix p/(list (pair wing seed)) q/seed}`
6
6
7Mutate multiple legs in the subject.
7Mutate multiple legs in the subject.
8
8
docs/hoon/twig/tis-flow/fas-var.md+1−1
@@ -2,7 +2,7 @@
2sort: 6
2sort: 6
3---
3---
4
4
5−# `:var, =/, "tisfas", {$var p/taco q/twig r/twig}`
5+# `:var, =/, "tisfas", {$var p/taco q/seed r/seed}`
6
6
7Combine a named and/or typed noun with the subject.
7Combine a named and/or typed noun with the subject.
8
8
docs/hoon/twig/tis-flow/gal-rap.md+1−1
@@ -2,7 +2,7 @@
2sort: 2
2sort: 2
3---
3---
4
4
5−# `:rap, =<, "tisgal", {$rap p/twig q/twig}`
5+# `:rap, =<, "tisgal", {$rap p/seed q/seed}`
6
6
7Compose two twigs, inverted.
7Compose two twigs, inverted.
8
8
docs/hoon/twig/tis-flow/gar-per.md+1−1
@@ -2,7 +2,7 @@
2sort: 1
2sort: 1
3---
3---
4
4
5−# `:per, =>, "tisgar", {$per p/twig q/twig}`
5+# `:per, =>, "tisgar", {$per p/seed q/seed}`
6
6
7Compose two twigs.
7Compose two twigs.
8
8
docs/hoon/twig/tis-flow/ket-sip.md+1−1
@@ -2,7 +2,7 @@
2sort: 10
2sort: 10
3---
3---
4
4
5−# `:sip, =^, "tisket", {$sip p/taco q/wing r/twig s/twig}`
5+# `:sip, =^, "tisket", {$sip p/taco q/wing r/seed s/seed}`
6
6
7Pin the head of a pair; mutate a leg with the tail.
7Pin the head of a pair; mutate a leg with the tail.
8
8
docs/hoon/twig/tis-flow/sem-rev.md+1−1
@@ -2,7 +2,7 @@
2sort: 7
2sort: 7
3---
3---
4
4
5−# `:rev, =;, "tissem", {$rev p/taco q/twig r/twig}`
5+# `:rev, =;, "tissem", {$rev p/taco q/seed r/seed}`
6
6
7Combine a named and/or typed noun with the subject, inverted.
7Combine a named and/or typed noun with the subject, inverted.
8
8
docs/hoon/twig/wut-test/dot-lest.md+1−1
@@ -2,7 +2,7 @@
2sort: 2
2sort: 2
3---
3---
4
4
5−# `:lest`, `?.`, "wutdot" `{$lest p/twig q/twig r/twig}`
5+# `:lest`, `?.`, "wutdot" `{$lest p/seed q/seed r/seed}`
6
6
7Branch on a boolean test, inverted.
7Branch on a boolean test, inverted.
8
8
docs/hoon/twig/wut-test/ket-ifcl.md+1−1
@@ -2,7 +2,7 @@
2sort: 5
2sort: 5
3---
3---
4
4
5−# `:ifcl, ?^, "wutket", {$ifcl p/wing q/twig r/twig}`
5+# `:ifcl, ?^, "wutket", {$ifcl p/wing q/seed r/seed}`
6
6
7Branch on whether a wing of the subject is null.
7Branch on whether a wing of the subject is null.
8
8
docs/hoon/twig/zap-wild/gar-wrap.md+1−1
@@ -2,7 +2,7 @@
2sort: 2
2sort: 2
3---
3---
4
4
5−# `:wrap !> "zapgar" {$wrap p/twig}`
5+# `:wrap !> "zapgar" {$wrap p/seed}`
6
6
7Wrap a noun in its span.
7Wrap a noun in its span.
8
8
docs/hoon/twig/zap-wild/tis-code.md+1−1
@@ -2,7 +2,7 @@
2sort: 3
2sort: 3
3---
3---
4
4
5−# `:code != "zaptis" {$code p/twig}`
5+# `:code != "zaptis" {$code p/seed}`
6
6
7Make the Nock formula for a twig.
7Make the Nock formula for a twig.
8
8
docs/hoon/twig/zap-wild/wut-need.md+1−1
@@ -2,7 +2,7 @@
2sort: 4
2sort: 4
3---
3---
4
4
5−# `:need !? "zapwut" {$need p/@ q/twig}`
5+# `:need !? "zapwut" {$need p/@ q/seed}`
6
6
7Restrict Hoon version.
7Restrict Hoon version.
8
8