on master help sign in
Merge pull request #784 from urbit/fix-jars

rewrite jar/jug examples to get rid of `mo`

commitc245c88e509bd823c62f26ad7fa1fae78cc12c6e authorpoprox <51337059+drbeefsupreme@users.noreply.github.com> dateMon 16 Aug 2021, 12:24 (5 years ago) parent1d29c847779e31
1 file changed+46−29
content/docs/hoon/reference/stdlib/2j.md+46−29
content/docs/hoon/reference/stdlib/2j.md+46−29
@@ -18,8 +18,11 @@ A container arm for `++jar` operation arms. A `++jar` is a `++map` of
1818`a` is a jar.
1919
2020```
21− > ~(. ja (mo (limo a/"ho" b/"he" ~)))
22− <2.dgz [nlr([p={%a %b} q=""]) <414.fvk 101.jzo 1.ypj %164>]>
21+> ~(. ja (my [a+1 b+2 ~]))
22+< 2.ngd
23+ [ a=?(%~ [n=[?(p=%a p=%b) q=@ud] l=nlr([p=?(%a %b) q=@ud]) r=nlr([p=?(%a %b) q=@ud])])
24+ <123.zao 45.xig 1.pnw %140>
25+ ]
2326```
2427
2528---
@@ -47,18 +50,18 @@ A list retrieved from jar `a` using the key `b`.
4750Examples
4851
4952```
50− > =l (mo `(list ,[@t (list ,@)])`[['a' `(list ,@)`[1 2 3 ~]] ['b' `(list ,@)`[4 5 6 ~]] ~])
51− > l
52− [[p='a' q=~[1 2 3]] [p='b' q=~[4 5 6]]}
53+> =l (my [['a' (limo 1 2 3 ~)] ['b' (limo 4 5 6 ~)]~])
54+> l
55+[n=[p='b' q=[i=4 t=~[5 6]]] l={} r={[p='a' q=[i=1 t=~[2 3]]]}]
5356
54− > (~(get ja l) 'a')
55− ~[1 2 3]
57+> (~(get ja l) 'a')
58+[i=1 t=[i=2 t=~[3]]]
5659
57− > (~(get ja l) 'b')
58− ~[4 5 6]
60+> (~(get ja l) 'b')
61+[i=4 t=[i=5 t=~[6]]]
5962
60− > (~(get ja l) 'c')
61− ~
63+> (~(get ja l) 'c')
64+~
6265```
6366
6467---
@@ -86,22 +89,26 @@ Prepend to list
8689#### Examples
8790
8891```
89− > =l (mo `(list ,[@t (list ,@)])`[['a' `(list ,@)`[1 2 3 ~]] ['b' `(list ,@)`[4 5 6 ~]] ~])
90− > l
91− {[p='a' q=~[1 2 3]] [p='b' q=~[4 5 6]]}
92−
93− > (~(add ja l) 'b' 7)
94− {[p='a' q=~[1 2 3]] [p='b' q=~[7 4 5 6]]}
95−
96− > (~(add ja l) 'a' 100)
97− {[p='a' q=~[100 1 2 3]] [p='b' q=~[4 5 6]]}
98−
99− > (~(add ja l) 'c' 7)
100− {[p='a' q=~[1 2 3]] [p='c' q=~[7]] [p='b' q=~[4 5 6]]}
101−
102− > (~(add ja l) 'c' `(list ,@)`[7 8 9 ~])
103− ! type-fail
104− ! exit
92+> =l (my [['a' (limo 1 2 3 ~)] ['b' (limo 4 5 6 ~)]~])
93+> l
94+[n=[p='b' q=[i=4 t=~[5 6]]] l={} r={[p='a' q=[i=1 t=~[2 3]]]}]
95+> (~(add ja l) 'a' 100)
96+[ n=[p='b' q=[i=4 t=[i=5 t=~[6]]]]
97+ l=~
98+ r=[n=[p='a' q=[i=100 t=[i=1 t=~[2 3]]]] l=~ r=~]
99+]
100+> (~(add ja l) 'a' 100)
101+[n=[p='b' q=[i=4 t=[i=5 t=~[6]]]] l=~ r=[n=[p='a' q=[i=100 t=[i=1 t=~[2 3]]]] l=~ r=~]]
102+> (~(add ja l) 'b' 7)
103+[n=[p='b' q=[i=7 t=[i=4 t=~[5 6]]]] l=~ r=[n=[p='a' q=[i=1 t=[i=2 t=~[3]]]] l=~ r=~]]
104+> (~(add ja l) 'c' 7)
105+[ n=[p='b' q=[i=4 t=[i=5 t=~[6]]]]
106+ l=~
107+ r=[n=[p='c' q=[i=7 t=~]] l=[n=[p='a' q=[i=1 t=~[2 3]]] l={} r={}] r=~]
108+]
109+> (~(add ja l) 'c' (limo 7 8 9 ~))
110+mull-grow
111+mull-nice
105112```
106113
107114**
@@ -120,8 +127,18 @@ Container arm for jug operation arms. A `++jug` is a `++map` of
120127`a` is a jug.
121128
122129```
123− > ~(. ju (mo (limo a=(sa "ho") b=(sa "he") ~)))
124− <2.dgz [nlr([p={%a %b} q={nlr(^$1{@tD $1}) nlr(^$3{@tD $3})}]) <414.fvk 101.jzo 1.ypj %164>]>
130+> ~(. ju (my [[a (sy 1 ~)] [b (sy 2 ~)] ~]))
131+< 5.cws
132+ [ a
133+ ?(
134+ %~
135+ [ n=[p=@ub ?(q=%~ q=[?(n=@ud #!) l=nlr(?(@ud #!)) r=nlr(?(@ud #!))])]
136+ l=nlr([p=@ub q=?(%~ [?(n=@ud #!) l=nlr(?(@ud #!)) r=nlr(?(@ud #!))])])
137+ r=nlr([p=@ub q=?(%~ [?(n=@ud #!) l=nlr(?(@ud #!)) r=nlr(?(@ud #!))])])
138+ ]
139+ )
140+ <123.zao 45.xig 1.pnw %140>
141+ ]
125142```
126143
127144### `++del:ju`