on master help sign in
first pass done
00e6334Henry Ault
docs/system/hoon/runes/zp/.zpcb.md.swpnew file

Binary file not shown.

docs/system/hoon/runes/zp/.zpcm.md.swpnew file

Binary file not shown.

docs/system/hoon/runes/zp/.zpfs.md.swpnew file

Binary file not shown.

docs/system/hoon/runes/zp/.zpgr.md.swpnew file

Binary file not shown.

docs/system/hoon/runes/zp/.zpsm.md.swpnew file

Binary file not shown.

docs/system/hoon/runes/zp/.zpts.md.swpnew file

Binary file not shown.

docs/system/hoon/runes/zp/.zpwt.md.swpnew file

Binary file not shown.

docs/system/hoon/runes/zp/.zpzp.md.swpnew file

Binary file not shown.

docs/system/hoon/runes/zp/zpcb.mddeleted−57
@@ -1,57 +0,0 @@
1−`!_ zapcab`
2−====
3−
4−Path & range in stack trace.
5−
6−Traces the stack if debugging is enabled, putting the current path and
7−location range of each rune.
8−
9−Produces
10−--------
11−
12−Twig: `[%zpcb p=spot q=twig]`
13−
14−Accepts
15−-------
16−
17−`p` is a [`++spot`](). `q` is a [`++twig`]().
18−
19−Tall form
20−---------
21−
22− ?! p
23−
24−Wide form
25−---------
26−
27− ?!(p)
28−
29−Irregular form
30−--------------
31−
32− !p
33−
34−Examples
35−--------
36−
37− ~zod/try=> (ream '20')
38− [%dtzy p=%ud q=20]
39− ~zod/try=> (ream '!:(20)')
40− [%zpcb p=[p=/ q=[p=[p=1 q=4] q=[p=1 q=6]]] q=[%dtzy p=%ud q=20]]
41− ~zod/try=> (ream '=+(20 ~)')
42− [%tsls p=[%dtzy p=%ud q=20] q=[%bczp p=%null]]
43− ~zod/try=> (ream '!:(=+(20 ~))')
44− [ %zpcb
45− p=[p=/ q=[p=[p=1 q=4] q=[p=1 q=12]]]
46− q
47− [ %tsls
48− p=[%zpcb p=[p=/ q=[p=[p=1 q=7] q=[p=1 q=9]]] q=[%dtzy p=%ud q=20]]
49− q=[%zpcb p=[p=/ q=[p=[p=1 q=10] q=[p=1 q=11]]] q=[%bczp p=%null]]
50− ]
51− ]
52− ~zod/try=> =+(20 !!)
53− ! exit
54− ~zod/try=> !:(=+(20 !!))
55− ! /~zod/try/~2014.10.31..21.11.11..be6c/:<[1 4].[1 13]>
56− ! /~zod/try/~2014.10.31..21.11.11..be6c/:<[1 10].[1 12]>
57− ! exit
docs/system/hoon/runes/zp/zpcm.md+2−22
@@ -1,5 +1,4 @@
1−`!, zapcol`
1+# `:twig`, `!,`, "zapcol" `{$twig p/twig q/twig}`
2−====
3
2
4XX.
3XX.
5
4
@@ -9,23 +8,4 @@ Inserts twig `q` as a constant, typed with the type of twig `p`. XX??
9`!,` is a natural rune that inserts twig `q` as a constant, typed with
8`!,` is a natural rune that inserts twig `q` as a constant, typed with
10the type of twig `p`.
9the type of twig `p`.
11
10
12−Produces
11+XX
13−--------
14−
15−Twig: `[%zpcm p=twig q=twig]`
16−
17−Accepts
18−-------
19−
20−`p` and `q` are [`++twig`]()s.
21−
22−Tall form
23−---------
24−
25− !, p
26− q
27−
28−Wide form
29−---------
30−
31− !,(p q)
docs/system/hoon/runes/zp/zpfs.mddeleted−59
@@ -1,59 +0,0 @@
1−`!/ zapfas`
2−====
3−
4−XX.
5−
6−`!/` is a virtual natural rune that should never be compiled. When
7−compiled with error checking turned on, it reports its subject as an
8−error.
9−
10−Produces
11−--------
12−
13−Twig: `[%zpfs p=twig q=twig]`
14−
15−Sample
16−------
17−
18−`p` and `q` are [`++twig`]()s.
19−
20−Tall form
21−---------
22−
23− !/ p
24− q
25−
26−Wide form
27−---------
28−
29− !/(p q)
30−
31−Examples
32−--------
33−
34− ~zod/try=> (~(mint ut %noun) %noun [%zpfs %dtzz %tas %foo])
35− ! -lost.%foo
36− ! mint-lost
37− ! exit
38− ~zod/try=> (~(mint ut %noun) %noun [%zpfs (ream '=+(a=5 a)')])
39− ! -lost.@ud
40− ! mint-lost
41− ! exit
42− ~zod/try=> (ream '?-(. @ 1)')
43− [ %wthz
44− p=[%.y p=~ q=~[[%.y p=1]]] q=~[[p=[%axil p=[%atom p=~.]]
45− q=[%dtzy p=%ud q=1]]]
46− ]
47− ~zod/try=> ~(open ap ~(open ap (ream '?-(. @ 1)')))
48− [ %wtcl
49− p=[%wtts p=[%axil p=[%atom p=~.]] q=~[[%.y p=1]]]
50− q=[%dtzy p=%ud q=1] r=[%zpfs p=[%cnzz p=~[[%.y p=1]]]]
51− ]
52− ~zod/try=> (~(mint ut %noun) %noun (ream '?-(. @ 1)'))
53− ! -lost.[* *]
54− ! mint-lost
55− ! exit
56− ~zod/try=> (~(mint ut %noun) %noun [%zpfs bczp/%cell])
57− ! -lost.[* *]
58− ! mint-lost
59− ! exit
docs/system/hoon/runes/zp/zpgr.md+4−26
@@ -1,34 +1,12 @@
1−`!> zapgar`
1+# `:wrap`, `!>`, "zapgar" `{$wrap p/twig}`
2−====
3
2
4Produce `[type value]`.
3Produce `[type value]`.
5
4
6−Produces a cell (known as a [`++vase`]() here) of both the type and value of `p`. Useful for debugging purposes.
5+Produces a cell (known as a `++vase` here) of both the type and value of `p`. Useful for debugging purposes.
7
6
8−Uses biblical arms [`++onan`](), [`++abel`]().
7+Regular form: *1-fixed*
9
8
10−Produces
9+Examples:
11−--------
12−
13−Twig: `[%zpgr p=twig]`
14−
15−Accepts
16−-------
17−
18−`p` is a [`++twig`]().
19−
20−Tall form
21−---------
22−
23− !> p
24−
25−Wide form
26−---------
27−
28− !>(p)
29−
30−Examples
31−--------
32
10
33 ~zod/try=> !>(1)
11 ~zod/try=> !>(1)
34 [p=[%atom p=%ud] q=1]
12 [p=[%atom p=%ud] q=1]
docs/system/hoon/runes/zp/zpsm.md+3−24
@@ -1,34 +1,13 @@
1−`!; zapsem`
1+# `:spit`, `!;`, "zapsem" `{$spit p/twig q/twig}`
2−====
3
2
4`[type noun]` pair.
3`[type noun]` pair.
5
4
6`!;` is a natural rune that produces the product of twig `q` as a
5`!;` is a natural rune that produces the product of twig `q` as a
7`[type noun]` pair, with twig `p` serving as an example of the type.
6`[type noun]` pair, with twig `p` serving as an example of the type.
8
7
9−Produces
8+Regular form: *2-fixed*
10−--------
11
9
12−Twig: `[%zpsm p=twig q=twig]`
13−
14−Accepts
15−-------
16−
17−`p` and `q` are [`++twig`]()s.
18−
19−Tall form
20−---------
21−
22− !; p
23− q
24−
25−Wide form
26−---------
27−
28− !;(p q)
29−
30−Examples
10+Examples:
31−--------
32
11
33 ~zod/try=> !;(*type 1)
12 ~zod/try=> !;(*type 1)
34 [[%atom p=%ud] 1]
13 [[%atom p=%ud] 1]
docs/system/hoon/runes/zp/zpts.md+4−24
@@ -1,32 +1,12 @@
1−`!= zaptis`
1+# `:code`, `!=`, "zaptis" `$code p/twig}`
2−====
3
2
4Show nock.
3Show nock.
5
4
6−`!=` is a natural rune that produces the formula of `p` as a noun.
5+`!=` is a natural rune that produces the formula of `p` as a Nock noun.
7
6
8−Accepts
7+Regular form: *1-fixed*
9−-------
10
8
11−Twig: `[%zpts p=twig]`
9+Examples:
12−
13−Accepts
14−-------
15−
16−`p` is a [`++twig`]().
17−
18−Tall form
19−---------
20−
21− != p
22−
23−Wide form
24−---------
25−
26− !=(p)
27−
28−Examples
29−--------
30
10
31 ~zod/try=> !=(20)
11 ~zod/try=> !=(20)
32 [1 20]
12 [1 20]
docs/system/hoon/runes/zp/zpwt.md+4−27
@@ -1,35 +1,12 @@
1−`!? zapwut`
1+# `:need`, `!?`, "zapwut", `{$need p/$@(p/@ {p/@ q/@}) q/twig}`
2−====
3
2
4Restrict version.
3Restrict version.
5
4
6−`!?` is a synthetic rune that enforces a Hoon version restriction.
5+Enforces a Hoon version restriction. XX help
7
6
8−Produces
7+Regular form: *2-fixed*
9−--------
10
8
11−Twig: `[%zpwt p=twig]`
12−
13−Accepts
14−-------
15−
16−`p` is a [`++twig`]().
17−
18−Tall form
19−---------
20−
21−To declare code that runs only in Hoon 164K or newer:
22−
23− !? 164
24− q
25−
26−To declare code that runs only in 164K through 161K:
27−
28− !? [164 161]
29− q
30−
31−Examples
9+Examples: XX help
32−--------
33
10
34 ~zod/try=> !?(264 (add 2 2))
11 ~zod/try=> !?(264 (add 2 2))
35 4
12 4
docs/system/hoon/runes/zp/zpzp.md+6−25
@@ -1,33 +1,14 @@
1−`!! zapzap`
1+# `:fail`, `!!`, "zapzap" `{$fail $~}`
2−====
3
2
4Crash.
3Crash.
5
4
6−`!!` is a natural rune that always crashes.
5+Always causes a crash. Frequently used as sentinel, especially when you don't want the type system to
6+give you type fails before you've written every possible branch of the
7+computation.
7
8
8−Always causes a crash. Useful when testing unfinished code so that you don't
9+Regularm form: doesnt even accept input as it causes an immediate crash. XX???
9−have to worry about type stuff for different conditional cases you have yet to
10−cover.
11
10
12−Frequently used as sentinel, especially when you don't want the type system to give you type fails before you've written every possible branch of the computation.
11+Examples:
13−
14−Produces
15−--------
16−
17−Twig: `[%zpzp ~]`
18−
19−Accepts
20−-------
21−
22−N/A (always ignored)
23−
24−Wide form
25−---------
26−
27− !!
28−
29−Examples
30−--------
31
12
32 ~zod/try=> !!
13 ~zod/try=> !!
33 ! exit
14 ! exit