From 71efed5c3b6c72519d6926bc3558de6c74713ada Mon Sep 17 00:00:00 2001 From: "C. Guy Yarvin" Date: Thu, 27 Oct 2016 16:50:22 -0700 Subject: [PATCH 1/5] Move ++differ and ++lines into ++clay. --- app/dojo.hoon | 2 +- app/talk.hoon | 4 +- arvo/clay.hoon | 9 +- arvo/eyre.hoon | 2 +- arvo/ford.hoon | 6 +- arvo/zuse.hoon | 739 +++++++++++++++++++++++----------------------- mar/hoon.hoon | 4 +- mar/md.hoon | 6 +- mar/txt-diff.hoon | 4 +- mar/txt.hoon | 5 +- 10 files changed, 394 insertions(+), 387 deletions(-) diff --git a/app/dojo.hoon b/app/dojo.hoon index 79f666b616..4cfd18f5eb 100644 --- a/app/dojo.hoon +++ b/app/dojo.hoon @@ -515,7 +515,7 @@ %+ weld (turn q.hit |=({a/@t b/@t} "{(trip a)}: {(trip b)}")) :- i="" - t=(turn `wain`?~(r.hit ~ (lore:differ q.u.r.hit)) trip) + t=(turn `wain`?~(r.hit ~ (lore:lines:clay q.u.r.hit)) trip) == :: ++ dy-show-span-noun diff --git a/app/talk.hoon b/app/talk.hoon index 60566843ba..e3cd995bd0 100644 --- a/app/talk.hoon +++ b/app/talk.hoon @@ -1369,7 +1369,7 @@ now.hid (sy /fora-post eyre+pax ~) :- %mor :~ - [%fat text+(lore:differ txt) [%url [ra-base-hart `pax ~] `fra]] + [%fat text+(lore:lines:clay txt) [%url [ra-base-hart `pax ~] `fra]] [%app %tree (crip "forum post: '{(trip hed)}'")] == == @@ -1410,7 +1410,7 @@ now.hid (sy /comment eyre+pax ~) :- %mor :~ - [%fat text+(lore:differ txt) [%url [ra-base-hart `pax ~] `fra]] + [%fat text+(lore:lines:clay txt) [%url [ra-base-hart `pax ~] `fra]] [%app %tree (crip "comment on /{nam}")] == == diff --git a/arvo/clay.hoon b/arvo/clay.hoon index bf3fc617cc..602a3747c9 100644 --- a/arvo/clay.hoon +++ b/arvo/clay.hoon @@ -11,8 +11,11 @@ :: :::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: |= pit/vase -=, ^differ -=, differ +=, ^clay +=, clay +=, differ:^clay +=, differ:clay +=, lines:clay => |% ++ aeon @ud :: version number :: @@ -52,7 +55,7 @@ :: ++ care ?($u $v $w $x $y $z) :: -:: Keeps track of subscibers. +:: Keeps track of subscribers. :: :: A map of requests to a set of all the subscribers who should be notified :: when the request is filled/updated. diff --git a/arvo/eyre.hoon b/arvo/eyre.hoon index 9641b765b6..2a270875f4 100644 --- a/arvo/eyre.hoon +++ b/arvo/eyre.hoon @@ -1115,7 +1115,7 @@ {$txt $robots $~} :- ~ %^ resp 200 text+/plain - %- role:differ + %- role:lines:clay :~ 'User-agent: *' 'Disallow: ' == diff --git a/arvo/ford.hoon b/arvo/ford.hoon index 7719c2ca91..4030e2dc89 100644 --- a/arvo/ford.hoon +++ b/arvo/ford.hoon @@ -3,8 +3,6 @@ !? 164 :::: |= pit/vase -=, ^differ -=, differ =, gall => =~ :: structures @@ -1748,9 +1746,9 @@ -- :: ++ pact-hoon :: .hoon special case - |= {a/@t b/(urge cord)} ^- @t + |= {a/@t b/(urge:differ:^clay cord)} ^- @t ~| %lurk-hoon - (role (lurk (lore a) b)) + (role:lines:clay (lurk:differ:clay (lore:lines:clay a) b)) :: ++ pact :: patch |= {cof/cafe kas/silk kos/silk} diff --git a/arvo/zuse.hoon b/arvo/zuse.hoon index f44e39c956..2326f165ad 100644 --- a/arvo/zuse.hoon +++ b/arvo/zuse.hoon @@ -44,7 +44,43 @@ :: :::: ++ clay |% - ++ foo %bar +:: :: +:::: ### differ^clay^models :: hunt-mcilroy diff + :: :::: + ++ differ ^? + |% + ++ udal :: atomic change (%b) + $: p/@ud :: blockwidth + q/(list {p/@ud q/(unit {p/@ q/@})}) :: indels + == :: + ++ udon :: abstract delta + $: p/umph :: preprocessor + $= q :: patch + $% {$a p/* q/*} :: trivial replace + {$b p/udal} :: atomic indel + {$c p/(urge)} :: list indel + {$d p/upas q/upas} :: tree edit + == == :: + ++ umph :: change filter + $@ $? $a :: no filter + $b :: jamfile + $c :: LF text + == :: + $% {$d p/@ud} :: blocklist + == :: + ++ unce :: change part + |* a/mold :: + $% {$& p/@ud} :: skip[copy] + {$| p/(list a) q/(list a)} :: p -> q[chunk] + == :: + ++ upas :: tree change (%d) + $^ {p/upas q/upas} :: cell + $% {$0 p/axis} :: copy old + {$1 p/*} :: insert new + {$2 p/axis q/udon} :: mutate! + == :: + ++ urge |*(a/mold (list (unce a))) :: list change + -- -- :: :: :::: ## dill^models :: console @@ -94,6 +130,7 @@ :: bit is set, the new life of this ship may have :: lost information that the old life had. :: + ++ ares (unit {p/term q/(list tank)}) :: possible error ++ arms (map chip (pair @ta @t)) :: stated identity ++ bull :: cert metadata $: dad/ship :: parent @@ -107,11 +144,13 @@ $had :: fictitious name $mid :: middle name == :: + ++ coop (unit ares) :: e2e ack ++ deed :: certificate deed $: doc/bull :: metadata pub/pass :: public key == :: ++ farm (map ship will) :: pki dump set + ++ hand @uvH :: 128-bit hash ++ life @ud :: ship version ++ mind {who/ship lyf/life} :: key identifier ++ name (pair @ta @t) :: ascii / unicode @@ -269,43 +308,6 @@ {$west p/ship q/path r/*} :: remote request == :: -- -:: :: -:::: ## differ^models :: hunt-mcilroy diff - :: :::: -++ differ - ^? |% - ++ udal :: atomic change (%b) - $: p/@ud :: blockwidth - q/(list {p/@ud q/(unit {p/@ q/@})}) :: indels - == :: - ++ udon :: abstract delta - $: p/umph :: preprocessor - $= q :: patch - $% {$a p/* q/*} :: trivial replace - {$b p/udal} :: atomic indel - {$c p/(urge)} :: list indel - {$d p/upas q/upas} :: tree edit - == == :: - ++ umph :: change filter - $@ $? $a :: no filter - $b :: jamfile - $c :: LF text - == :: - $% {$d p/@ud} :: blocklist - == :: - ++ unce :: change part - |* a/mold :: - $% {$& p/@ud} :: skip[copy] - {$| p/(list a) q/(list a)} :: p -> q[chunk] - == :: - ++ upas :: tree change (%d) - $^ {p/upas q/upas} :: cell - $% {$0 p/axis} :: copy old - {$1 p/*} :: insert new - {$2 p/axis q/udon} :: mutate! - == :: - ++ urge |*(a/mold (list (unce a))) :: list change - -- -- :: :::: :::: # engines :: engines @@ -330,7 +332,337 @@ :: :::: ++ clay |% - ++ foo %bar +:: :: +:::: ### differ^clay^engines :: hunt-mcilroy diff + :: :::: + ++ differ ^? + =, differ:^clay + =, lines + |% + :: :: ++berk:differ:clay + ++ berk :: invert diff patch + |* bur/(urge) + |- ^+ bur + ?~ bur ~ + :_ $(bur t.bur) + ?- -.i.bur + $& i.bur + $| [%| q.i.bur p.i.bur] + == + :: :: ++diff:differ:clay + ++ diff :: generate patch + |= pum/umph + |= {old/* new/*} ^- udon + :- pum + ?+ pum ~|(%unsupported !!) + $a [%d (nude old new)] + $b =+ [hel=(cue ((hard @) old)) hev=(cue ((hard @) new))] + [%d (nude hel hev)] + $c =+ [hel=(lore ((hard @) old)) hev=(lore ((hard @) new))] + [%c (lusk hel hev (loss hel hev))] + == + :: :: ++loss:differ:clay + ++ loss :: longest subsequence + ~% %loss ..is ~ + |* {hel/(list) hev/(list)} + |- ^+ hev + =+ ^= sev + =+ [inx=0 sev=*(map _i.-.hev (list @ud))] + |- ^+ sev + ?~ hev sev + =+ guy=(~(get by sev) i.hev) + %= $ + hev t.hev + inx +(inx) + sev (~(put by sev) i.hev [inx ?~(guy ~ u.guy)]) + == + =| gox/{p/@ud q/(map @ud {p/@ud q/_hev})} + =< abet + =< main + |% + :: :: ++abet:loss:differ: + ++ abet :: subsequence + ^+ hev + ?: =(0 p.gox) ~ + (flop q:(need (~(get by q.gox) (dec p.gox)))) + :: :: ++hink:loss:differ: + ++ hink :: extend fits top + |= {inx/@ud goy/@ud} ^- ? + ?| =(p.gox inx) + (lth goy p:(need (~(get by q.gox) inx))) + == + :: :: ++lonk:loss:differ: + ++ lonk :: extend fits bottom + |= {inx/@ud goy/@ud} ^- ? + ?| =(0 inx) + (gth goy p:(need (~(get by q.gox) (dec inx)))) + == + :: :: ++luna:loss:differ: + ++ luna :: extend + |= {inx/@ud goy/@ud} + ^+ +> + %_ +>.$ + gox + :- ?:(=(inx p.gox) +(p.gox) p.gox) + %+ ~(put by q.gox) inx + :+ goy + (snag goy hev) + ?:(=(0 inx) ~ q:(need (~(get by q.gox) (dec inx)))) + == + :: :: ++merg:loss:differ: + ++ merg :: merge all matches + |= gay/(list @ud) + ^+ +> + =+ ^= zes + =+ [inx=0 zes=*(list {p/@ud q/@ud})] + |- ^+ zes + ?: |(?=($~ gay) (gth inx p.gox)) zes + ?. (lonk inx i.gay) $(gay t.gay) + ?. (hink inx i.gay) $(inx +(inx)) + $(inx +(inx), gay t.gay, zes [[inx i.gay] zes]) + |- ^+ +>.^$ + ?~(zes +>.^$ $(zes t.zes, +>.^$ (luna i.zes))) + :: :: ++main:loss:differ: + ++ main :: + =+ hol=hel + |- ^+ +> + ?~ hol +> + =+ guy=(~(get by sev) i.hol) + $(hol t.hol, +> (merg (flop `(list @ud)`?~(guy ~ u.guy)))) + -- + :: :: ++lump:differ:clay + ++ lump :: apply patch + |= {don/udon src/*} + ^- * + ?+ p.don ~|(%unsupported !!) + $a + ?+ -.q.don ~|(%unsupported !!) + $a q.q.don + $c (lurk ((hard (list)) src) p.q.don) + $d (lure src p.q.don) + == + :: + $c + =+ dst=(lore ((hard @) src)) + %- role + ?+ -.q.don ~|(%unsupported !!) + :: + :: XX these hards should not be needed; udon + :: should be parameterized + :: + $a ((hard (list @t)) q.q.don) + $c ((hard (list @t)) (lurk `(list *)`dst p.q.don)) + == + == + :: :: ++lure:differ:clay + ++ lure :: apply tree diff + |= {a/* b/upas} + ^- * + ?^ -.b + [$(b -.b) $(b +.b)] + ?+ -.b ~|(%unsupported !!) + $0 .*(a [0 p.b]) + $1 .*(a [1 p.b]) + == + :: :: ++limp:differ:clay + ++ limp :: invert patch + |= don/udon ^- udon + :- p.don + ?+ -.q.don ~|(%unsupported !!) + $a [%a q.q.don p.q.don] + $c [%c (berk p.q.don)] + $d [%d q.q.don p.q.don] + == + :: :: ++hump:differ:clay + ++ hump :: general prepatch + |= {pum/umph src/*} ^- * + ?+ pum ~|(%unsupported !!) + $a src + $b (cue ((hard @) src)) + $c (lore ((hard @) src)) + == + :: :: ++husk:differ:clay + ++ husk :: unprepatch + |= {pum/umph dst/*} ^- * + ?+ pum ~|(%unsupported !!) + $a dst + $b (jam dst) + $c (role ((hard (list @)) dst)) + == + :: :: ++lurk:differ:clay + ++ lurk :: apply list patch + |* {hel/(list) rug/(urge)} + ^+ hel + =+ war=`_hel`~ + |- ^+ hel + ?~ rug (flop war) + ?- -.i.rug + $& + %= $ + rug t.rug + hel (slag p.i.rug hel) + war (weld (flop (scag p.i.rug hel)) war) + == + :: + $| + %= $ + rug t.rug + hel =+ gur=(flop p.i.rug) + |- ^+ hel + ?~ gur hel + ?>(&(?=(^ hel) =(i.gur i.hel)) $(hel t.hel, gur t.gur)) + war (weld q.i.rug war) + == + == + :: :: ++lusk:differ:clay + ++ lusk :: lcs to list patch + |* {hel/(list) hev/(list) lcs/(list)} + =+ ^= rag + ^- {$%({$& p/@ud} {$| p/_lcs q/_lcs})} + [%& 0] + => .(rag [p=rag q=*(list _rag)]) + =< abet =< main + |% + :: :: ++abet:lusk:differ: + ++ abet :: + =. q.rag ?:(=([& 0] p.rag) q.rag [p.rag q.rag]) + (flop q.rag) + :: :: ++done:lusk:differ: + ++ done :: + |= new/_p.rag + ^+ rag + ?- -.p.rag + $| ?- -.new + $| [[%| (weld p.new p.p.rag) (weld q.new q.p.rag)] q.rag] + $& [new [p.rag q.rag]] + == + $& ?- -.new + $| [new ?:(=(0 p.p.rag) q.rag [p.rag q.rag])] + $& [[%& (add p.p.rag p.new)] q.rag] + == + == + :: :: ++main:lusk:differ: + ++ main :: + |- ^+ + + ?~ hel + ?~ hev + ?>(?=($~ lcs) +) + $(hev t.hev, rag (done %| ~ [i.hev ~])) + ?~ hev + $(hel t.hel, rag (done %| [i.hel ~] ~)) + ?~ lcs + +(rag (done %| (flop hel) (flop hev))) + ?: =(i.hel i.lcs) + ?: =(i.hev i.lcs) + $(lcs t.lcs, hel t.hel, hev t.hev, rag (done %& 1)) + $(hev t.hev, rag (done %| ~ [i.hev ~])) + ?: =(i.hev i.lcs) + $(hel t.hel, rag (done %| [i.hel ~] ~)) + $(hel t.hel, hev t.hev, rag (done %| [i.hel ~] [i.hev ~])) + -- + :: :: ++nude:differ:clay + ++ nude :: tree change + =< |= {a/* b/*} ^- {p/upas q/upas} + [p=(tred a b) q=(tred b a)] + |% + :: :: ++axes:nude:differ: + ++ axes :: locs of nouns + |= {a/@ b/*} ^- (map * axis) + =+ c=*(map * axis) + |- ^- (map * axis) + => .(c (~(put by c) b a)) + ?@ b + c + %- ~(uni by c) + %- ~(uni by $(a (mul 2 a), b -.b)) + $(a +((mul 2 a)), b +.b) + :: :: ++tred:nude:differ: + ++ tred :: diff a->b + |= {a/* b/*} ^- upas + =| c/(unit *) + =+ d=(axes 1 a) + |- ^- upas + => .(c (~(get by d) b)) + ?~ c + ?@ b + [%1 b] + =+ e=^-(upas [$(b -.b) $(b +.b)]) + ?- e + {{$1 *} {$1 *}} [%1 [p.p.e p.q.e]] + * e + == + [%0 u.c] + -- + -- +:: :: +:::: ### lines^clay^engines :: unix line files + :: :::: + ++ lines ^? + |% + :: :: ++lore:lines:clay + ++ lore :: atom to line list + ~% %lore ..is ~ + |= lub/@ + =| tez/(list @t) + |- ^+ tez + =+ ^= wor + =+ [meg=0 i=0] + |- ^- {meg/@ i/@ end/@f} + =+ gam=(cut 3 [i 1] lub) + ?: =(0 gam) + [meg i %.y] + ?: =(10 gam) + [meg i %.n] + $(meg (cat 3 meg gam), i +(i)) + ?: end.wor + (flop ^+(tez [meg.wor tez])) + ?: =(0 lub) (flop tez) + $(lub (rsh 3 +(i.wor) lub), tez [meg.wor tez]) + :: :: ++lune:lines:clay + ++ lune :: cord by unix line + ~% %lune ..is ~ + |= txt/@t + ?~ txt + ^- (list @t) ~ + =+ [byt=(rip 3 txt) len=(met 3 txt)] + =| {lin/(list @t) off/@} + ^- (list @t) + %- flop + |- ^+ lin + ?: =(off len) + ~| %noeol !! + ?: =((snag off byt) 10) + ?: =(+(off) len) + [(rep 3 (scag off byt)) lin] + %= $ + lin [(rep 3 (scag off byt)) lin] + byt (slag +(off) byt) + len (sub len +(off)) + off 0 + == + $(off +(off)) + :: :: ++nule:lines:clay + ++ nule :: lines to unix cord + ~% %nule ..is ~ + |= lin/(list @t) + ^- @t + %+ can 3 + %+ turn lin + |= t/@t + [+((met 3 t)) (cat 3 t 10)] + :: :: ++role:differ:clay + ++ role :: line list to atom + |= tez/(list @t) + =| {our/@ i/@ud} + |- ^- @ + ?~ tez + our + ?: =(%$ i.tez) + $(i +(i), tez t.tez, our (cat 3 our 10)) + ?: =(0 i) + $(i +(i), tez t.tez, our i.tez) + $(i +(i), tez t.tez, our (cat 3 (cat 3 our 10) i.tez)) + -- -- :: :: :::: # dill^engines :: console @@ -368,328 +700,6 @@ ++ foo %bar -- :: :: -:::: ## differ^engines :: hunt-mcilroy diff - :: :::: -++ differ - =, ^differ - ^? |% - :: :: ++berk:differ - ++ berk :: invert diff patch - |* bur/(urge) - |- ^+ bur - ?~ bur ~ - :_ $(bur t.bur) - ?- -.i.bur - $& i.bur - $| [%| q.i.bur p.i.bur] - == - :: :: ++diff:differ - ++ diff :: generate patch - |= pum/umph - |= {old/* new/*} ^- udon - :- pum - ?+ pum ~|(%unsupported !!) - $a [%d (nude old new)] - $b =+ [hel=(cue ((hard @) old)) hev=(cue ((hard @) new))] - [%d (nude hel hev)] - $c =+ [hel=(lore ((hard @) old)) hev=(lore ((hard @) new))] - [%c (lusk hel hev (loss hel hev))] - == - :: :: ++loss:differ - ++ loss :: longest subsequence - ~% %loss ..is ~ - |* {hel/(list) hev/(list)} - |- ^+ hev - =+ ^= sev - =+ [inx=0 sev=*(map _i.-.hev (list @ud))] - |- ^+ sev - ?~ hev sev - =+ guy=(~(get by sev) i.hev) - %= $ - hev t.hev - inx +(inx) - sev (~(put by sev) i.hev [inx ?~(guy ~ u.guy)]) - == - =| gox/{p/@ud q/(map @ud {p/@ud q/_hev})} - =< abet - =< main - |% - :: :: ++abet:loss:differ - ++ abet :: subsequence - ^+ hev - ?: =(0 p.gox) ~ - (flop q:(need (~(get by q.gox) (dec p.gox)))) - :: :: ++hink:loss:differ - ++ hink :: extend fits top - |= {inx/@ud goy/@ud} ^- ? - ?| =(p.gox inx) - (lth goy p:(need (~(get by q.gox) inx))) - == - :: :: ++lonk:loss:differ - ++ lonk :: extend fits bottom - |= {inx/@ud goy/@ud} ^- ? - ?| =(0 inx) - (gth goy p:(need (~(get by q.gox) (dec inx)))) - == - :: :: ++luna:loss:differ - ++ luna :: extend - |= {inx/@ud goy/@ud} - ^+ +> - %_ +>.$ - gox - :- ?:(=(inx p.gox) +(p.gox) p.gox) - %+ ~(put by q.gox) inx - [goy (snag goy hev) ?:(=(0 inx) ~ q:(need (~(get by q.gox) (dec inx))))] - == - :: :: ++merg:loss:differ - ++ merg :: merge all matches - |= gay/(list @ud) - ^+ +> - =+ ^= zes - =+ [inx=0 zes=*(list {p/@ud q/@ud})] - |- ^+ zes - ?: |(?=($~ gay) (gth inx p.gox)) zes - ?. (lonk inx i.gay) $(gay t.gay) - ?. (hink inx i.gay) $(inx +(inx)) - $(inx +(inx), gay t.gay, zes [[inx i.gay] zes]) - |- ^+ +>.^$ - ?~(zes +>.^$ $(zes t.zes, +>.^$ (luna i.zes))) - :: :: ++main:loss:differ - ++ main :: - =+ hol=hel - |- ^+ +> - ?~ hol +> - =+ guy=(~(get by sev) i.hol) - $(hol t.hol, +> (merg (flop `(list @ud)`?~(guy ~ u.guy)))) - -- - :: :: ++lore:differ - ++ lore :: atom to line list - ~% %lore ..is ~ - |= lub/@ - =| tez/(list @t) - |- ^+ tez - =+ ^= wor - =+ [meg=0 i=0] - |- ^- {meg/@ i/@ end/@f} - =+ gam=(cut 3 [i 1] lub) - ?: =(0 gam) - [meg i %.y] - ?: =(10 gam) - [meg i %.n] - $(meg (cat 3 meg gam), i +(i)) - ?: end.wor - (flop ^+(tez [meg.wor tez])) - ?: =(0 lub) (flop tez) - $(lub (rsh 3 +(i.wor) lub), tez [meg.wor tez]) - :: :: ++role:differ - ++ role :: line list to atom - |= tez/(list @t) - =| {our/@ i/@ud} - |- ^- @ - ?~ tez - our - ?: =(%$ i.tez) - $(i +(i), tez t.tez, our (cat 3 our 10)) - ?: =(0 i) - $(i +(i), tez t.tez, our i.tez) - $(i +(i), tez t.tez, our (cat 3 (cat 3 our 10) i.tez)) - :: :: ++lune:differ - ++ lune :: cord by unix line - ~% %lune ..is ~ - |= txt/@t - ?~ txt - ^- (list @t) ~ - =+ [byt=(rip 3 txt) len=(met 3 txt)] - =| {lin/(list @t) off/@} - ^- (list @t) - %- flop - |- ^+ lin - ?: =(off len) - ~| %noeol !! - ?: =((snag off byt) 10) - ?: =(+(off) len) - [(rep 3 (scag off byt)) lin] - %= $ - lin [(rep 3 (scag off byt)) lin] - byt (slag +(off) byt) - len (sub len +(off)) - off 0 - == - $(off +(off)) - :: :: ++nule:differ - ++ nule :: lines to unix cord - ~% %nule ..is ~ - |= lin/(list @t) - ^- @t - %+ can 3 - %+ turn lin - |= t/@t - [+((met 3 t)) (cat 3 t 10)] - :: :: ++lump:differ - ++ lump :: apply patch - |= {don/udon src/*} - ^- * - ?+ p.don ~|(%unsupported !!) - $a - ?+ -.q.don ~|(%unsupported !!) - $a q.q.don - $c (lurk ((hard (list)) src) p.q.don) - $d (lure src p.q.don) - == - :: - $c - =+ dst=(lore ((hard @) src)) - %- role - ?+ -.q.don ~|(%unsupported !!) - :: - :: XX these hards should not be needed; udon - :: should be parameterized - :: - $a ((hard (list @t)) q.q.don) - $c ((hard (list @t)) (lurk `(list *)`dst p.q.don)) - == - == - :: :: ++lure:differ - ++ lure :: apply tree diff - |= {a/* b/upas} - ^- * - ?^ -.b - [$(b -.b) $(b +.b)] - ?+ -.b ~|(%unsupported !!) - $0 .*(a [0 p.b]) - $1 .*(a [1 p.b]) - == - :: :: ++limp:differ - ++ limp :: invert patch - |= don/udon ^- udon - :- p.don - ?+ -.q.don ~|(%unsupported !!) - $a [%a q.q.don p.q.don] - $c [%c (berk p.q.don)] - $d [%d q.q.don p.q.don] - == - :: :: ++hump:differ - ++ hump :: general prepatch - |= {pum/umph src/*} ^- * - ?+ pum ~|(%unsupported !!) - $a src - $b (cue ((hard @) src)) - $c (lore ((hard @) src)) - == - :: :: ++husk:differ - ++ husk :: unprepatch - |= {pum/umph dst/*} ^- * - ?+ pum ~|(%unsupported !!) - $a dst - $b (jam dst) - $c (role ((hard (list @)) dst)) - == - :: :: ++lurk:differ - ++ lurk :: apply list patch - |* {hel/(list) rug/(urge)} - ^+ hel - =+ war=`_hel`~ - |- ^+ hel - ?~ rug (flop war) - ?- -.i.rug - $& - %= $ - rug t.rug - hel (slag p.i.rug hel) - war (weld (flop (scag p.i.rug hel)) war) - == - :: - $| - %= $ - rug t.rug - hel =+ gur=(flop p.i.rug) - |- ^+ hel - ?~ gur hel - ?>(&(?=(^ hel) =(i.gur i.hel)) $(hel t.hel, gur t.gur)) - war (weld q.i.rug war) - == - == - :: :: ++lusk:differ - ++ lusk :: lcs to list patch - |* {hel/(list) hev/(list) lcs/(list)} - =+ ^= rag - ^- {$%({$& p/@ud} {$| p/_lcs q/_lcs})} - [%& 0] - => .(rag [p=rag q=*(list _rag)]) - =< abet =< main - |% - :: :: ++abet:lusk:differ - ++ abet :: - =. q.rag ?:(=([& 0] p.rag) q.rag [p.rag q.rag]) - (flop q.rag) - :: :: ++done:lusk:differ - ++ done :: - |= new/_p.rag - ^+ rag - ?- -.p.rag - $| ?- -.new - $| [[%| (weld p.new p.p.rag) (weld q.new q.p.rag)] q.rag] - $& [new [p.rag q.rag]] - == - $& ?- -.new - $| [new ?:(=(0 p.p.rag) q.rag [p.rag q.rag])] - $& [[%& (add p.p.rag p.new)] q.rag] - == - == - :: :: ++main:lusk:differ - ++ main :: - |- ^+ + - ?~ hel - ?~ hev - ?>(?=($~ lcs) +) - $(hev t.hev, rag (done %| ~ [i.hev ~])) - ?~ hev - $(hel t.hel, rag (done %| [i.hel ~] ~)) - ?~ lcs - +(rag (done %| (flop hel) (flop hev))) - ?: =(i.hel i.lcs) - ?: =(i.hev i.lcs) - $(lcs t.lcs, hel t.hel, hev t.hev, rag (done %& 1)) - $(hev t.hev, rag (done %| ~ [i.hev ~])) - ?: =(i.hev i.lcs) - $(hel t.hel, rag (done %| [i.hel ~] ~)) - $(hel t.hel, hev t.hev, rag (done %| [i.hel ~] [i.hev ~])) - -- - :: :: ++nude:differ - ++ nude :: tree change - =< |= {a/* b/*} ^- {p/upas q/upas} - [p=(tred a b) q=(tred b a)] - |% - :: :: ++axes:nude:differ - ++ axes :: locs of nouns - |= {a/@ b/*} ^- (map * axis) - =+ c=*(map * axis) - |- ^- (map * axis) - => .(c (~(put by c) b a)) - ?@ b - c - %- ~(uni by c) - %- ~(uni by $(a (mul 2 a), b -.b)) - $(a +((mul 2 a)), b +.b) - :: :: ++tred:nude:differ - ++ tred :: diff a->b - |= {a/* b/*} ^- upas - =| c/(unit *) - =+ d=(axes 1 a) - |- ^- upas - => .(c (~(get by d) b)) - ?~ c - ?@ b - [%1 b] - =+ e=^-(upas [$(b -.b) $(b +.b)]) - ?- e - {{$1 *} {$1 *}} [%1 [p.p.e p.q.e]] - * e - == - [%0 u.c] - -- - -- -:: :: :::: ## number^engines :: misc number theory :: :::: ++ number @@ -3804,7 +3814,7 @@ {$pawn p/(unit @t)} :: 128-bit ship == :: ++ govt path :: country+postcode -++ hand @uvH :: hash of code +++ hand @uvH :: 128-bit hash ++ hart {p/? q/(unit @ud) r/host} :: http sec+port+host ++ hate {p/purl q/@p r/moth} :: semi-cooked request ++ heir {p/@ud q/mess r/(unit love)} :: status+headers+data @@ -4479,11 +4489,6 @@ == :: -- :: -:::: - :: -++ jael - -- -:: :::: %arvo :: ++ gift-arvo :: out result <-$ diff --git a/mar/hoon.hoon b/mar/hoon.hoon index b7f06ad318..351b28bfb1 100644 --- a/mar/hoon.hoon +++ b/mar/hoon.hoon @@ -37,13 +37,13 @@ == == ++ txt - (lore:differ own) + (lore:lines:clay own) -- ++ grab |% :: convert from ++ mime |=({p/mite q/octs} q.q) ++ noun @t :: clam from %noun - ++ txt role:differ + ++ txt role:lines:clay -- ++ grad %txt -- diff --git a/mar/md.hoon b/mar/md.hoon index 8fee7f66c0..2a835e9e6e 100644 --- a/mar/md.hoon +++ b/mar/md.hoon @@ -8,14 +8,14 @@ |% ++ mime [/text/x-markdown (taco mud)] ++ txt - (lore:differ mud) + (lore:lines:clay mud) -- ++ grab |% ++ mime |=({p/mite q/octs} q.q) ++ noun @t - ++ txt role:differ - -- + ++ txt role:lines:clay + -- ++ grad %txt ++ garb /down -- diff --git a/mar/txt-diff.hoon b/mar/txt-diff.hoon index b97e899da3..66ff1392b1 100644 --- a/mar/txt-diff.hoon +++ b/mar/txt-diff.hoon @@ -2,10 +2,10 @@ :::: /hoon/txt-diff/mar :: /? 310 -|_ txt-diff/(urge:^differ cord) +|_ txt-diff/(urge:differ:^clay cord) :: ++ grab :: convert from |% - ++ noun (urge:^differ cord) :: clam from %noun + ++ noun (urge:differ:^clay cord) :: make from %noun -- -- diff --git a/mar/txt.hoon b/mar/txt.hoon index ffa6e2ddbb..56469752ec 100644 --- a/mar/txt.hoon +++ b/mar/txt.hoon @@ -3,8 +3,9 @@ :: /? 310 !: -=, ^differ -=, differ +=, differ:^clay +=, differ:clay +=, lines:clay =, markup |_ txt/wain :: From 101b6ef84091ed566ce3f95edea12e2c71f01df0 Mon Sep 17 00:00:00 2001 From: "C. Guy Yarvin" Date: Thu, 27 Oct 2016 17:27:08 -0700 Subject: [PATCH 2/5] Move ++perk to ++peel; move zuse ++perk to h.h. --- arvo/hoon.hoon | 36 ++++++++++++++++++++++-------------- arvo/zuse.hoon | 8 -------- 2 files changed, 22 insertions(+), 22 deletions(-) diff --git a/arvo/hoon.hoon b/arvo/hoon.hoon index c60d0484a4..eab869926a 100644 --- a/arvo/hoon.hoon +++ b/arvo/hoon.hoon @@ -4253,6 +4253,14 @@ =+ zac=(lust i.q.tub p.tub) [zac [~ i.q.tub [zac t.q.tub]]] :: +++ perk :: parse cube fork + |* a/(pole @tas) + ?~ a fail + ;~ pose + (cold -.a (jest -.a)) + $(a +.a) + == +:: ++ pick :: rule for ++each |* {a/rule b/rule} ;~ pose @@ -6447,7 +6455,7 @@ %moot moot %mull mull %nest nest - %perk perk + %peel peel %play play %peek peek %repo repo @@ -6960,7 +6968,7 @@ ?^ zem :+ %& [`axe lon] [%| (peg 2 p.u.zem) [[sut(p.q %gold) q.u.zem] ~ ~]] - =+ pec=(perk way p.q.sut) + =+ pec=(peel way p.q.sut) ?. sam.pec lose ?: con.pec $(sut p.sut, axe (peg axe 3)) $(sut (peek(sut p.sut) way 2), axe (peg axe 6)) @@ -7611,17 +7619,6 @@ == == -- :: - ++ perk - |= {way/vial met/?($gold $iron $lead $zinc)} - ^- {sam/? con/?} - ?: ?=($gold met) [& &] - ?- way - $both [| |] - $free [& &] - $read [?=($zinc met) |] - $rite [?=($iron met) |] - == - :: ++ peek ~/ %peek |= {way/?($read $rite $both $free) axe/axis} @@ -7636,7 +7633,7 @@ {$cell *} ?:(=(2 now) ^$(sut p.sut, axe lat) ^$(sut q.sut, axe lat)) {$core *} ?. =(3 now) %noun - =+ pec=(perk way p.q.sut) + =+ pec=(peel way p.q.sut) %= ^$ axe lat sut @@ -7657,6 +7654,17 @@ * $(sut repo) == :: + ++ peel + |= {way/vial met/?($gold $iron $lead $zinc)} + ^- {sam/? con/?} + ?: ?=($gold met) [& &] + ?- way + $both [| |] + $free [& &] + $read [?=($zinc met) |] + $rite [?=($iron met) |] + == + :: ++ play ~/ %play => .(vet |) diff --git a/arvo/zuse.hoon b/arvo/zuse.hoon index 2326f165ad..55aff2155d 100644 --- a/arvo/zuse.hoon +++ b/arvo/zuse.hoon @@ -2585,14 +2585,6 @@ ?~ myn ~ ?: =(~ t.myn) (trip i.myn) (weld (trip i.myn) `tape`['/' $(myn t.myn)]) - :: :: ++perk:markup - ++ perk :: parse cube fork - |* a/(pole @tas) - ?~ a fail - ;~ pose - (cold -.a (jest -.a)) - $(a +.a) - == :: :: ++poja:markup ++ poja :: parse JSON =< |=(a/cord `(unit json)`(rush a apex)) From 6461bcb4e16e47ed31443ed1b9008b444f4f913c Mon Sep 17 00:00:00 2001 From: "C. Guy Yarvin" Date: Thu, 27 Oct 2016 22:03:47 -0700 Subject: [PATCH 3/5] About to switch over will/wyll. --- arvo/jael.hoon | 75 ++++++++++++++++++++++----------------------- arvo/zuse.hoon | 82 +++++++++++++++++--------------------------------- 2 files changed, 65 insertions(+), 92 deletions(-) diff --git a/arvo/jael.hoon b/arvo/jael.hoon index 43072125a7..2bb5967d39 100644 --- a/arvo/jael.hoon +++ b/arvo/jael.hoon @@ -17,6 +17,7 @@ :: |= pit/vase =, crypto +=, ^jael =, jael :: :::: :::: # models :: data structures @@ -821,10 +822,10 @@ (splice(pig (remove les.del)) mor.del) -- :: :: ++we -:::: ## will^light :: will functions +:::: ## wyll^light :: wyll functions :: :::: ++ we - |_ pub/will + |_ pub/wyll :: :: ++collate:we ++ collate :: sort by version |= com/$-({{life cert} {life cert}} ?) @@ -1186,7 +1187,7 @@ |- ^- farm ?: =(~ mor) out :: - :: nex: all wills to add + :: nex: all wylls to add :: =/ nex =/ rom (~(tap in mor)) @@ -1196,7 +1197,7 @@ i.rom (~(got by pug.urb) i.rom) :: - :: wit: all new ships in these wills + :: wit: all new ships in these wylls :: =. sea (~(uni in sea) mor) =/ wit @@ -1221,14 +1222,14 @@ |= who/ship ^- channel :: - :: pub: will of who + :: pub: wyll of who :: exp: promises from our to who :: imp: promises from who to our :: out: symmetric key from our to who :: inn: symmetric keys from who to our :: =/ pub - ^- will + ^- wyll =- ?~(- ~ u.-) (~(get by pug.urb) who) :: @@ -1365,7 +1366,7 @@ (veil:feel rex) :: :: ++said:su ++ said :: track cert change - |= $: :: rex: ship whose will has changed + |= $: :: rex: ship whose wyll has changed :: vie: change authorized by :: lyf: modified/created version :: gan: modification @@ -1379,12 +1380,12 @@ :: =/ lip ^- farm =- [[rex -] ~ ~] - ^- will + ^- wyll =- [[lyf -] ~ ~] ^- cert ?- -.gan :: - :: add a new certificate to this will + :: add a new certificate to this wyll :: {$step p/cert} :: $step p.gan @@ -1403,7 +1404,7 @@ =. +>.$ ?. |(=(our rex) (~(has by cod.rel) rex)) +>.$ veal:feel :: - :: if a new deed, reset parent + :: if a new deyd, reset parent :: =. dad.rel ?. &(=(our rex) ?=($step -.gan)) dad.rel @@ -1413,7 +1414,7 @@ :: =. +>.$ (veil:feel rex) :: - :: if we signed a will for someone else, send it home + :: if we signed a wyll for someone else, send it home :: ?: &(=([~ ~] vie) !=(our rex)) (~(home fire lip) rex) @@ -1433,8 +1434,8 @@ ?~(vie ~ ?~(u.vie ~ `u.u.vie)) ^- (list (set ship)) :: - :: if our will has changed, send to parents and kids; - :: if a new deed has been added, also to pals + :: if our wyll has changed, send to parents and kids; + :: if a new deyd has been added, also to pals :: ?: =(our rex) :* [dad.rel ~ ~] @@ -1587,10 +1588,10 @@ :: :: ++ex:ur ++ ex :: server engine :: shy: private state - :: rug: domestic will + :: rug: domestic wyll :: =| $: shy/(map ship safe) - rug/will + rug/wyll == =| :: rex: server ship :: @@ -1606,7 +1607,7 @@ ++ able :: initialize %_ . shy (fall (~(get by pry) rex) *(map ship safe)) - rug (fall (~(get by pug) rex) *will) + rug (fall (~(get by pug) rex) *wyll) == :: :: ++deal:ex:ur ++ deal :: alter rights @@ -1661,39 +1662,39 @@ :: ryt: private key as right :: pub: public key :: cet: unsigned certificate - :: wyl: initial will - :: hec: initial will as farm + :: wyl: initial wyll + :: hec: initial wyll as farm :: =/ loy (pit:nu:crub 512 eny) =* rig sec:ex:loy =* ryt `rite`[%jewel [1 rig] ~ ~] =* pub pub:ex:loy =* cet `cert`[[doc pub] ~] - =* wyl `will`[[1 cet] ~ ~] + =* wyl `wyll`[[1 cet] ~ ~] =* hec `farm`[[rex wyl] ~ ~] =. +>.$ (deal rex [[ryt ~ ~] ~]) =. ..ex (meet [~ ~] hec) +>.$ :: :: grow:ex:ur - ++ grow :: merge wills + ++ grow :: merge wylls |= $: :: vie: data source :: cod: merge context - :: gur: input will + :: gur: input wyll :: vie/(unit (unit ship)) cod/farm - gur/will + gur/wyll == ?: |(=(~ gur) =(gur rug)) ..grow |^ ^+ ..grow :: :: wap: ascending list of new certs - :: pre: previous deed + :: pre: previous deyd :: =/ wap ~(forward we gur) ?~ wap ..grow =/ pre - ^- (unit deed) + ^- (unit deyd) ?~ (dec p.i.wap) ~ `dat:(~(got by rug) (dec p.i.wap)) :: @@ -1702,7 +1703,7 @@ |- ^+ ..grow :: :: hub: changes - :: lub: merged deed + :: lub: merged deyd :: =+ [hub lub]=[p q]:(grow-mate p.i.wap q.i.wap pre) ?~ t.wap ..grow @@ -1725,7 +1726,7 @@ |= {myn/mind ash/@ val/@} ^- ? =: ..able able(rex who.myn) - gur (fall (~(get by cod) who.myn) *will) + gur (fall (~(get by cod) who.myn) *wyll) == (grow-lick (grow-look lyf.myn) ash val) :: :: grow-look/ex:ur @@ -1750,13 +1751,13 @@ :: :: grow-mate/ex:ur ++ grow-mate :: merge lives |= $: :: num: life we're merging - :: new: new deed - :: pre: previous deed - :: eld: old deed + :: new: new deyd + :: pre: previous deyd + :: eld: old deyd :: num/@ud new/cert - pre/(unit deed) + pre/(unit deyd) == =+ :* eld=`(unit cert)`(~(get by rug) num) == @@ -1772,7 +1773,7 @@ ?> ?=(^ eld) [~ u.eld] :: - :: ash: hash of deed content + :: ash: hash of deyd content :: def: our default parent :: dad: our declared parent :: mir: our rank @@ -1792,11 +1793,11 @@ :: =((clan def) (clan dad)) :: - :: if we have an old deed at this life, merge new signatures + :: if we have an old deyd at this life, merge new signatures :: ?: ?=(^ eld) :: - :: deed data must be identical + :: deyd data must be identical :: ?> =(dat.new dat.u.eld) :: @@ -1824,7 +1825,7 @@ :_ p.mor `change`[%fact rex vie num `growth`[%sign [[p q] r]:i.sow]] :: - :: non-initial deeds must be signed by previous + :: non-initial deyds must be signed by previous :: ?> ?| ?=($~ pre) =+ laz=(~(got by syg.new) rex) @@ -1856,7 +1857,7 @@ =(~ pre) == :: - :: the deed is homemade or sent by owner + :: the deyd is homemade or sent by owner :: &(?=(^ vie) |(?=($~ u.vie) =(u.u.vie rex))) :: @@ -1868,12 +1869,12 @@ =- [[%fact rex p.- num %step q.-]~ q.-] ^- (pair (unit (unit ship)) cert) :: - :: the new deed is complete; report it + :: the new deyd is complete; report it :: ?: (~(has by syg.new) dad) [vie new] :: - :: the new deed needs a parent signature; try to add it + :: the new deyd needs a parent signature; try to add it :: :- [~ ~] :: diff --git a/arvo/zuse.hoon b/arvo/zuse.hoon index 55aff2155d..7a505e12ba 100644 --- a/arvo/zuse.hoon +++ b/arvo/zuse.hoon @@ -123,7 +123,7 @@ :: revokes and replaces the previous cert. the :: version number of a ship is a ++life. :: - :: the deed contains an ++arms, a definition + :: the deyd contains an ++arms, a definition :: of cosmetic identity; a semi-trusted parent, :: which signs the initial certificate and provides :: routing services; and a dirty bit. if the dirty @@ -137,7 +137,7 @@ dob/? :: & clean, | dirty nym/arms :: identity strings == :: - ++ cert (tale deed) :: signed deed + ++ cert (tale deyd) :: signed deyd ++ chip :: standard identity $? $giv :: given name $sur :: surname @@ -145,11 +145,11 @@ $mid :: middle name == :: ++ coop (unit ares) :: e2e ack - ++ deed :: certificate deed + ++ deyd :: certificate deyd $: doc/bull :: metadata pub/pass :: public key == :: - ++ farm (map ship will) :: pki dump set + ++ farm (map ship wyll) :: pki dump set ++ hand @uvH :: 128-bit hash ++ life @ud :: ship version ++ mind {who/ship lyf/life} :: key identifier @@ -160,7 +160,7 @@ $: dat/typ :: data syg/(map ship (pair life oath)) :: signatures == :: - ++ will (map life cert) :: meta-certificate + ++ wyll (map life cert) :: meta-certificate :: :: :::: ### promise^jael^models :: rights and promises :: :::: @@ -250,7 +250,7 @@ $% $: $fact :: certificate change rex/ship :: owner vie/(unit (unit ship)) :: made/heard from - lyf/life :: deed added/modified + lyf/life :: deyd added/modified gan/growth :: info gained == :: $: $rite :: rights change @@ -264,7 +264,7 @@ inn/(map hand bill) :: inbound keys cur/(unit life) :: their version sax/(list ship) :: their ancestry - pub/will :: their public keys + pub/wyll :: their public keys == :: ++ gift :: out result <-$ $? {$veil p/channel} :: secure channel @@ -274,7 +274,7 @@ == :: ++ growth :: unit of learning $% {$sign p/mind q/@} :: add/update signature - {$step p/cert} :: add whole deed + {$step p/cert} :: add whole deyd == :: ++ note :: out request $-> $% {$b $wait p/@da} :: wait until @@ -695,7 +695,7 @@ :: :: :::: # jael^engines :: security :: :::: -++ jaelooo +++ jael |% ++ foo %bar -- @@ -3092,13 +3092,24 @@ :: ++ parsf :: make parser from: |^ |* a/(pole _;/(*{$^(rule tape)})) :: ;"chars{rule}chars" - =- (cook - (bill (norm a))) + =- (cook - (boil (norm a))) |* (list) ?~ +< ~ ?~ t i [i $(+< t)] :: + :: .= (boil ~[[& dim] [| ", "] [& dim]]:ag) + :: ;~(plug dim ;~(pfix com ace ;~(plug dim (easy)))):ag + :: + ++ boil + |* (list (each rule tape)) + ?~ +< (easy ~) + ?: ?=($| -.i) ;~(pfix (jest (crip p.i)) $(+< t)) + %+ cook |*({* *} [i t]=+<) + ;~(plug p.i $(+< t)) + :: :: .= (norm [;"{n}, {n}"]:n=dim:ag) ~[[& dim] [| ", "] [& dim]]:ag + :: ++ norm |* (pole _;/(*{$^(rule tape)})) ?~ +< ~ @@ -3110,15 +3121,6 @@ ?~ +.rul [%| p=rul] ?@ &2.rul [%| p=;;(tape rul)] [%& p=rul] - :: - :: .= (bill ~[[& dim] [| ", "] [& dim]]:ag) - :: ;~(plug dim ;~(pfix com ace ;~(plug dim (easy)))):ag - ++ bill - |* (list (each rule tape)) - ?~ +< (easy ~) - ?: ?=($| -.i) ;~(pfix (jest (crip p.i)) $(+< t)) - %+ cook |*({* *} [i t]=+<) - ;~(plug p.i $(+< t)) -- :: ++ taco :: atom to octstream @@ -3926,11 +3928,11 @@ ++ page (cask *) :: untyped cage ++ pail ?($none $warm $cold) :: connection status ++ pipe :: secure channel - $: out/(unit (pair hand bill)) :: outbound key - inn/(map hand bill) :: inbound keys + $: out/(unit (pair hand bill:^jael)) :: outbound key + inn/(map hand bill:^jael) :: inbound keys cur/(unit life) :: their version sax/(list ship) :: their ancestry - pub/wyll :: their public keys + pub/wyll:^jael :: their public keys == :: ++ plan (trel view (pair @da (unit @dr)) path) :: subscription ++ plea {p/@ud q/{p/? q/@t}} :: live prompt @@ -4111,7 +4113,7 @@ ++ kiss-xmas :: in request ->$ $% {$hear p/lane q/@} :: {$mess p/ship q/path r/*} :: send message - {$gear p/farm q/(map life ring)} :: general update + {$gear p/farm:^jael q/(map life ring)} :: general update {$wake $~} :: == :: ++ card-xmas :: out cards @@ -4124,7 +4126,7 @@ $: $j :: to %jael $% {$line p/ship q/@da r/code} :: {$link p/ship q/@da r/code} :: - {$meet p/farm} :: + {$meet p/farm:^jael} :: {$view p/ship} :: {$west p/ship q/path r/*} :: to %gall == == == :: @@ -4198,36 +4200,6 @@ {$west p/sack q/path r/@ud s/*} :: network request == :: :: -:::: %jael - :: -++ arms (map chip (pair @ta @t)) :: stated identity -++ bill (pair @da @) :: expiring value -++ bull :: cert metadata - $: dad/@p :: parent - dob/? :: & clean, | dirty - nym/arms :: identity strings - == :: -++ cert (tale deyd) :: signed deed -++ chip :: standard identity - $? $giv :: given name - $sur :: surname - $had :: handle - $mid :: middle name - == :: -++ deyd :: certificate deed - $: doc/bull :: metadata - pub/pass :: public key - == :: -++ farm (map ship wyll) :: pki dump set -++ wyll (map life cert) :: certificate -++ mind {who/@p lyf/@ud} :: key identifier -++ site (list @ta) :: [%com %yahoo %www ~] -++ tale :: urbit-signed * - |* typ/mold :: - $: dat/typ :: data - syg/(map ship (pair life @)) :: signatures - == :: -:: :::: :: ++ blew {p/@ud q/@ud} :: columns rows @@ -4519,6 +4491,6 @@ {$e gift-eyre} {$f gift-ford} {$g gift:gall} - {$j gift:jael} + {$j gift:^jael} == -- From ae3ccde24dbaf95369be17676844f2d3135bd30e Mon Sep 17 00:00:00 2001 From: "C. Guy Yarvin" Date: Thu, 27 Oct 2016 22:19:01 -0700 Subject: [PATCH 4/5] Move weird spelling to dead code. --- arvo/ames.hoon | 74 +++++++++++++++++++++++++------------------------- arvo/jael.hoon | 74 +++++++++++++++++++++++++------------------------- arvo/zuse.hoon | 40 +++++++++++++-------------- 3 files changed, 94 insertions(+), 94 deletions(-) diff --git a/arvo/ames.hoon b/arvo/ames.hoon index 1c04015aad..5ef9c171d0 100644 --- a/arvo/ames.hoon +++ b/arvo/ames.hoon @@ -79,7 +79,7 @@ == :: ++ door :: foreign contact $: wod/road :: connection to - wyl/will :: inferred mirror + wyl/wyll :: inferred mirror caq/clot :: symmetric key state == :: ++ dove {p/@ud q/(map @ud @)} :: count 13-blocks @@ -113,13 +113,13 @@ ++ road :: secured oneway route $: exp/@da :: expiration date lun/(unit lane) :: route to friend - lew/will :: will of friend + lew/wyll :: wyll of friend == :: ++ skin ?($none $open $fast $full) :: encoding stem ++ sufi :: domestic host $: hoy/(list ship) :: hierarchy val/wund :: private keys - law/will :: server will + law/wyll :: server wyll seh/(map hand {p/ship q/@da}) :: key cache hoc/(map ship door) :: neighborhood == :: @@ -564,9 +564,9 @@ :: section 4aA, identity logic :: :: |% - ++ grip :: extend will - |= {wet/will law/will} - ^- will + ++ grip :: extend wyll + |= {wet/wyll law/wyll} + ^- wyll ?~ wet law ?: =(wet law) law ?^ t.wet @@ -576,7 +576,7 @@ ?~ q.p.q.i.wet ?>((meld i.wet i.law) [i.wet law]) =+ rul=(sein r.p.q.i.wet) - |- ^- will + |- ^- wyll ?: ?& =(rul r.p.q.i.law) =(p.p.q.i.law u.q.p.q.i.wet) == @@ -584,7 +584,7 @@ ?>(?=(^ t.law) $(law t.law)) :: ++ meld :: verify connect - |= {new/deed old/deed} + |= {new/deyd old/deyd} ^- $& ?> (melt new old) ?> .= (shaf %meld (sham q.new)) @@ -592,7 +592,7 @@ %& :: ++ melt :: proper connect - |= {new/deed old/deed} + |= {new/deyd old/deyd} ^- ? =+ rac=(clan r.p.q.new) ?& =(r.new r.old) :: match fake @@ -608,20 +608,20 @@ == :: ++ pare :: shorten against - |= {fou/will law/will} + |= {fou/wyll law/wyll} :: ~& [%pare-fou fou] :: ~& [%pare-law law] - ^- will + ^- wyll =+ [ouf=(flop fou) wal=(flop law)] %- flop - |- ^- will + |- ^- wyll ?~ ouf wal ?~ wal ~ ?. =(i.wal i.ouf) ouf $(wal t.wal, ouf t.ouf) :: - ++ pier !: :: initial deed - |= wed/deed + ++ pier !: :: initial deyd + |= wed/deyd ^- $& ?> =+ rac=(clan r.p.q.wed) =+ loy=(haul:test r.q.wed) @@ -633,7 +633,7 @@ %& :: ++ real :: validate - |= {mac/mace law/will} + |= {mac/mace law/wyll} ?> ?& |- ^- ? ?~ mac & ?> ?& ?=(^ law) @@ -653,9 +653,9 @@ ?: (gth mar p.i.mac) ~ $(mac t.mac) :: - ++ rick :: will at life - |= {mar/life lag/ship law/will} - ^- (unit will) + ++ rick :: wyll at life + |= {mar/life lag/ship law/wyll} + ^- (unit wyll) ?~ law ~ ?: =(mar p.p.q.i.law) [~ law] ?: (gth mar p.p.q.i.law) ~ @@ -976,7 +976,7 @@ |_ {our/ship saf/sufi} :: per server ++ born :: born:as:go |= {now/@da her/@p tic/@pG ges/gens pub/pass} :: register user - ^- {(unit will) _+>} + ^- {(unit wyll) _+>} ?. =(our (sein her)) [~ +>.$] =+ nes=sen =+ ryt=(end 6 1 (shaf %tick (mix her (shax sec:ex:q.nes)))) @@ -1011,7 +1011,7 @@ ?~(lew.wod.dur 0 p.p.q.i.lew.wod.dur) :: ++ deng - |= law/will + |= law/wyll %_(+> lew.wod.dur (grip law lew.wod.dur)) :: ++ griz :: griz:lax:as:go @@ -1168,8 +1168,8 @@ =^ tuy +>.$ ?:(=(~ lew.wod.dur) [*code +>.$] (griz now)) =+ yig=sen - :: =+ bil=`will`(pare wyl.dur law.saf) :: XX not set - =+ bil=law.saf :: XX send whole will + :: =+ bil=`wyll`(pare wyl.dur law.saf) :: XX not set + =+ bil=law.saf :: XX send whole wyll =+ hom=(jam ham) ?: =(~ lew.wod.dur) :- %open @@ -1231,9 +1231,9 @@ |- ^- (list ship) (saxo our) :: - ++ yew :: best will for + ++ yew :: best wyll for |= her/ship - ^- will + ^- wyll =+ gel=(~(get by hoc.saf) her) ?^ gel lew.wod.u.gel @@ -1241,7 +1241,7 @@ -- :: --as:go :: ++ ha !: :: adopt new license - |= {our/ship mac/mace wil/will} + |= {our/ship mac/mace wil/wyll} ^- town ?> !=(~ mac) ?> ?=(^ wil) @@ -1339,7 +1339,7 @@ %^ ~(ha go ton.fox) our `mace`[[0 rig] ~] - `will`[[(sign:as:loy *@ (shaf %self (sham syp))) syp fak] ~] + `wyll`[[(sign:as:loy *@ (shaf %self (sham syp))) syp fak] ~] fak.ton fak == @@ -1356,7 +1356,7 @@ ?: &(!fak !fim) !! :: not fake & bad fig =+ mac=`mace`[[0 sec:ex:loy] ~] =+ syp=`step`[`bray`[0 ~ her now] [%en %czar ~] pub:ex:loy] - =+ ded=`deed`[(sign:as:loy *@ (shaf %self (sham syp))) syp fak] + =+ ded=`deyd`[(sign:as:loy *@ (shaf %self (sham syp))) syp fak] =+ buq=`buck`[mac [ded ~]] =: ton.fox (~(ha go ton.fox) her buq) zac.fox (~(put by zac.fox) her *corn) @@ -1588,7 +1588,7 @@ :: $full :: ~& %chew-full - =+ mex=((hard {p/{p/life q/life} q/will r/@}) (cue msg)) + =+ mex=((hard {p/{p/life q/life} q/wyll r/@}) (cue msg)) =. diz (deng:diz q.mex) =+ wug=cluy:diz ?> =(q.p.mex p.wug) @@ -1599,7 +1599,7 @@ :: $open :: ~& %chew-open - =+ mex=((hard {p/{$~ q/life} q/will r/@}) (cue msg)) + =+ mex=((hard {p/{$~ q/life} q/wyll r/@}) (cue msg)) =. diz (deng:diz q.mex) =+ wug=cluy:diz ?> =(q.p.mex p.wug) @@ -2151,19 +2151,19 @@ ^- (unit (unit cage)) ?~ tyl ~ ?: ?=({$name $~} tyl) - =+ wul=$(tyl [%will ~]) - ``[%noun !>(?~(wul (scot %p his) (gnow his q.q.q:((hard deed) -.u.wul))))] + =+ wul=$(tyl [%wyll ~]) + ``[%noun !>(?~(wul (scot %p his) (gnow his q.q.q:((hard deyd) -.u.wul))))] ?: ?=({$gcos $~} tyl) - =+ wul=$(tyl [%will ~]) - ?~(wul ~ ``[%noun !>(`gcos`q.q.q:((hard deed) -.u.wul))]) + =+ wul=$(tyl [%wyll ~]) + ?~(wul ~ ``[%noun !>(`gcos`q.q.q:((hard deyd) -.u.wul))]) =+ gys=(~(us go ton.fox) our) ?~ gys ~ ?. =(our his) - ?: ?=({$will $~} tyl) + ?: ?=({$wyll $~} tyl) =+ fod=(~(get by hoc.saf.u.gys) his) ?~ fod ~ %+ bind (rick mar his lew.wod.u.fod) - |=(a/will `[%noun !>(a)]) + |=(a/wyll `[%noun !>(a)]) ?: ?=({$tick $~} tyl) ?. =(our (sein his)) ~ ``[%noun !>((end 6 1 (shaf %tick (mix his (shax sec:ex:q:sen:u.gys)))))] @@ -2175,8 +2175,8 @@ ``[%noun !>(`buck`[u.muc u.luw])] ?: ?=({$code $~} tyl) ``[%noun !>((end 6 1 (shaf %pass (shax sec:ex:q:sen:u.gys))))] - ?: ?=({$will $~} tyl) - (bind (rick mar our law.saf.u.gys) |=(a/will `[%noun !>(a)])) + ?: ?=({$wyll $~} tyl) + (bind (rick mar our law.saf.u.gys) |=(a/wyll `[%noun !>(a)])) ~ :: ++ temp diff --git a/arvo/jael.hoon b/arvo/jael.hoon index 2bb5967d39..5c9b120084 100644 --- a/arvo/jael.hoon +++ b/arvo/jael.hoon @@ -822,10 +822,10 @@ (splice(pig (remove les.del)) mor.del) -- :: :: ++we -:::: ## wyll^light :: wyll functions +:::: ## will^light :: will functions :: :::: ++ we - |_ pub/wyll + |_ pub/will :: :: ++collate:we ++ collate :: sort by version |= com/$-({{life cert} {life cert}} ?) @@ -1187,7 +1187,7 @@ |- ^- farm ?: =(~ mor) out :: - :: nex: all wylls to add + :: nex: all wills to add :: =/ nex =/ rom (~(tap in mor)) @@ -1197,7 +1197,7 @@ i.rom (~(got by pug.urb) i.rom) :: - :: wit: all new ships in these wylls + :: wit: all new ships in these wills :: =. sea (~(uni in sea) mor) =/ wit @@ -1222,14 +1222,14 @@ |= who/ship ^- channel :: - :: pub: wyll of who + :: pub: will of who :: exp: promises from our to who :: imp: promises from who to our :: out: symmetric key from our to who :: inn: symmetric keys from who to our :: =/ pub - ^- wyll + ^- will =- ?~(- ~ u.-) (~(get by pug.urb) who) :: @@ -1366,7 +1366,7 @@ (veil:feel rex) :: :: ++said:su ++ said :: track cert change - |= $: :: rex: ship whose wyll has changed + |= $: :: rex: ship whose will has changed :: vie: change authorized by :: lyf: modified/created version :: gan: modification @@ -1380,12 +1380,12 @@ :: =/ lip ^- farm =- [[rex -] ~ ~] - ^- wyll + ^- will =- [[lyf -] ~ ~] ^- cert ?- -.gan :: - :: add a new certificate to this wyll + :: add a new certificate to this will :: {$step p/cert} :: $step p.gan @@ -1404,7 +1404,7 @@ =. +>.$ ?. |(=(our rex) (~(has by cod.rel) rex)) +>.$ veal:feel :: - :: if a new deyd, reset parent + :: if a new deed, reset parent :: =. dad.rel ?. &(=(our rex) ?=($step -.gan)) dad.rel @@ -1414,7 +1414,7 @@ :: =. +>.$ (veil:feel rex) :: - :: if we signed a wyll for someone else, send it home + :: if we signed a will for someone else, send it home :: ?: &(=([~ ~] vie) !=(our rex)) (~(home fire lip) rex) @@ -1434,8 +1434,8 @@ ?~(vie ~ ?~(u.vie ~ `u.u.vie)) ^- (list (set ship)) :: - :: if our wyll has changed, send to parents and kids; - :: if a new deyd has been added, also to pals + :: if our will has changed, send to parents and kids; + :: if a new deed has been added, also to pals :: ?: =(our rex) :* [dad.rel ~ ~] @@ -1588,10 +1588,10 @@ :: :: ++ex:ur ++ ex :: server engine :: shy: private state - :: rug: domestic wyll + :: rug: domestic will :: =| $: shy/(map ship safe) - rug/wyll + rug/will == =| :: rex: server ship :: @@ -1607,7 +1607,7 @@ ++ able :: initialize %_ . shy (fall (~(get by pry) rex) *(map ship safe)) - rug (fall (~(get by pug) rex) *wyll) + rug (fall (~(get by pug) rex) *will) == :: :: ++deal:ex:ur ++ deal :: alter rights @@ -1662,39 +1662,39 @@ :: ryt: private key as right :: pub: public key :: cet: unsigned certificate - :: wyl: initial wyll - :: hec: initial wyll as farm + :: wyl: initial will + :: hec: initial will as farm :: =/ loy (pit:nu:crub 512 eny) =* rig sec:ex:loy =* ryt `rite`[%jewel [1 rig] ~ ~] =* pub pub:ex:loy =* cet `cert`[[doc pub] ~] - =* wyl `wyll`[[1 cet] ~ ~] + =* wyl `will`[[1 cet] ~ ~] =* hec `farm`[[rex wyl] ~ ~] =. +>.$ (deal rex [[ryt ~ ~] ~]) =. ..ex (meet [~ ~] hec) +>.$ :: :: grow:ex:ur - ++ grow :: merge wylls + ++ grow :: merge wills |= $: :: vie: data source :: cod: merge context - :: gur: input wyll + :: gur: input will :: vie/(unit (unit ship)) cod/farm - gur/wyll + gur/will == ?: |(=(~ gur) =(gur rug)) ..grow |^ ^+ ..grow :: :: wap: ascending list of new certs - :: pre: previous deyd + :: pre: previous deed :: =/ wap ~(forward we gur) ?~ wap ..grow =/ pre - ^- (unit deyd) + ^- (unit deed) ?~ (dec p.i.wap) ~ `dat:(~(got by rug) (dec p.i.wap)) :: @@ -1703,7 +1703,7 @@ |- ^+ ..grow :: :: hub: changes - :: lub: merged deyd + :: lub: merged deed :: =+ [hub lub]=[p q]:(grow-mate p.i.wap q.i.wap pre) ?~ t.wap ..grow @@ -1726,7 +1726,7 @@ |= {myn/mind ash/@ val/@} ^- ? =: ..able able(rex who.myn) - gur (fall (~(get by cod) who.myn) *wyll) + gur (fall (~(get by cod) who.myn) *will) == (grow-lick (grow-look lyf.myn) ash val) :: :: grow-look/ex:ur @@ -1751,13 +1751,13 @@ :: :: grow-mate/ex:ur ++ grow-mate :: merge lives |= $: :: num: life we're merging - :: new: new deyd - :: pre: previous deyd - :: eld: old deyd + :: new: new deed + :: pre: previous deed + :: eld: old deed :: num/@ud new/cert - pre/(unit deyd) + pre/(unit deed) == =+ :* eld=`(unit cert)`(~(get by rug) num) == @@ -1773,7 +1773,7 @@ ?> ?=(^ eld) [~ u.eld] :: - :: ash: hash of deyd content + :: ash: hash of deed content :: def: our default parent :: dad: our declared parent :: mir: our rank @@ -1793,11 +1793,11 @@ :: =((clan def) (clan dad)) :: - :: if we have an old deyd at this life, merge new signatures + :: if we have an old deed at this life, merge new signatures :: ?: ?=(^ eld) :: - :: deyd data must be identical + :: deed data must be identical :: ?> =(dat.new dat.u.eld) :: @@ -1825,7 +1825,7 @@ :_ p.mor `change`[%fact rex vie num `growth`[%sign [[p q] r]:i.sow]] :: - :: non-initial deyds must be signed by previous + :: non-initial deeds must be signed by previous :: ?> ?| ?=($~ pre) =+ laz=(~(got by syg.new) rex) @@ -1857,7 +1857,7 @@ =(~ pre) == :: - :: the deyd is homemade or sent by owner + :: the deed is homemade or sent by owner :: &(?=(^ vie) |(?=($~ u.vie) =(u.u.vie rex))) :: @@ -1869,12 +1869,12 @@ =- [[%fact rex p.- num %step q.-]~ q.-] ^- (pair (unit (unit ship)) cert) :: - :: the new deyd is complete; report it + :: the new deed is complete; report it :: ?: (~(has by syg.new) dad) [vie new] :: - :: the new deyd needs a parent signature; try to add it + :: the new deed needs a parent signature; try to add it :: :- [~ ~] :: diff --git a/arvo/zuse.hoon b/arvo/zuse.hoon index 7a505e12ba..f1c083e10d 100644 --- a/arvo/zuse.hoon +++ b/arvo/zuse.hoon @@ -118,12 +118,12 @@ :: :: :::: ### public^jael^models :: certificates :: :::: - :: the urbit meta-certificate (++will) is a sequence - :: of certificates (++cert). each cert in a will + :: the urbit meta-certificate (++wyll) is a sequence + :: of certificates (++cert). each cert in a wyll :: revokes and replaces the previous cert. the :: version number of a ship is a ++life. :: - :: the deyd contains an ++arms, a definition + :: the deed contains an ++arms, a definition :: of cosmetic identity; a semi-trusted parent, :: which signs the initial certificate and provides :: routing services; and a dirty bit. if the dirty @@ -137,7 +137,7 @@ dob/? :: & clean, | dirty nym/arms :: identity strings == :: - ++ cert (tale deyd) :: signed deyd + ++ cert (tale deed) :: signed deed ++ chip :: standard identity $? $giv :: given name $sur :: surname @@ -145,11 +145,11 @@ $mid :: middle name == :: ++ coop (unit ares) :: e2e ack - ++ deyd :: certificate deyd + ++ deed :: certificate deed $: doc/bull :: metadata pub/pass :: public key == :: - ++ farm (map ship wyll) :: pki dump set + ++ farm (map ship will) :: pki dump set ++ hand @uvH :: 128-bit hash ++ life @ud :: ship version ++ mind {who/ship lyf/life} :: key identifier @@ -160,7 +160,7 @@ $: dat/typ :: data syg/(map ship (pair life oath)) :: signatures == :: - ++ wyll (map life cert) :: meta-certificate + ++ will (map life cert) :: meta-certificate :: :: :::: ### promise^jael^models :: rights and promises :: :::: @@ -223,7 +223,7 @@ :: change tasks are designed to match high-level :: operations - for instance, we have %burn, %mint, :: and %move, not just a single delta operation. - :: more of these operations will probably be added, + :: more of these operations wyll probably be added, :: and invariants enforced at transaction end. :: :: subscriptions are also user-focused - for instance, @@ -250,7 +250,7 @@ $% $: $fact :: certificate change rex/ship :: owner vie/(unit (unit ship)) :: made/heard from - lyf/life :: deyd added/modified + lyf/life :: deed added/modified gan/growth :: info gained == :: $: $rite :: rights change @@ -264,7 +264,7 @@ inn/(map hand bill) :: inbound keys cur/(unit life) :: their version sax/(list ship) :: their ancestry - pub/wyll :: their public keys + pub/will :: their public keys == :: ++ gift :: out result <-$ $? {$veil p/channel} :: secure channel @@ -274,7 +274,7 @@ == :: ++ growth :: unit of learning $% {$sign p/mind q/@} :: add/update signature - {$step p/cert} :: add whole deyd + {$step p/cert} :: add whole deed == :: ++ note :: out request $-> $% {$b $wait p/@da} :: wait until @@ -3690,7 +3690,7 @@ ++ boat (map (pair bone wire) (trel bean ship path)) :: outgoing subs ++ boon :: fort output $% {$beer p/ship} :: gained ownership - {$bier p/ship q/deed} :: unsigned deed + {$bier p/ship q/deyd} :: unsigned deyd {$cake p/sock q/soap r/coop s/duct} :: e2e message result {$coke p/sock q/soap r/cape s/duct} :: message result {$mead p/lane q/rock} :: accept packet @@ -3715,7 +3715,7 @@ == == :: ++ bray {p/life q/(unit life) r/ship s/@da} :: our parent us now ++ brow {p/@da q/@tas} :: browser version -++ buck {p/mace q/will} :: all security data +++ buck {p/mace q/wyll} :: all security data ++ cake {p/sock q/skin r/@} :: top level packet ++ cape :: end-to-end result $? $good :: delivered @@ -3764,7 +3764,7 @@ cip/(each @if @is) :: client IP cum/(map @tas *) :: custom dirt == :: -++ deed {p/@ q/step r/?} :: sig stage fake? +++ deyd {p/@ q/step r/?} :: sig stage fake? ++ dome :: project state $: ank/ankh :: state let/@ud :: top id @@ -3773,7 +3773,7 @@ == :: ++ dore :: foreign contact $: wod/road :: connection to - wyl/will :: inferred mirror + wyl/wyll :: inferred mirror caq/clot :: symmetric key state == :: ++ dove {p/@ud q/(map @ud @)} :: count hash 13-blocks @@ -3932,7 +3932,7 @@ inn/(map hand bill:^jael) :: inbound keys cur/(unit life) :: their version sax/(list ship) :: their ancestry - pub/wyll:^jael :: their public keys + pub/will:^jael :: their public keys == :: ++ plan (trel view (pair @da (unit @dr)) path) :: subscription ++ plea {p/@ud q/{p/? q/@t}} :: live prompt @@ -3975,7 +3975,7 @@ ++ road :: secured oneway route $: exp/@da :: expiration date lun/(unit lane) :: route to friend - lew/will :: will of friend + lew/wyll :: wyll of friend == :: ++ rock @uvO :: packet ++ rout {p/(list host) q/path r/oryx s/path} :: http route (new) @@ -3990,7 +3990,7 @@ ++ sufi :: domestic host $: hoy/(list ship) :: hierarchy val/wund :: private keys - law/will :: server will + law/wyll :: server wyll seh/(map hand {p/ship q/@da}) :: key cache hoc/(map ship dore) :: neighborhood == :: @@ -4061,10 +4061,10 @@ ++ woof $@ $know :: udon transform {$chan (list {$@(@ud {p/@ud q/@ud})})} :: ++ wund (list {p/life q/ring r/acru}) :: mace in action -++ will (list deed) :: certificate +++ wyll (list deyd) :: certificate ++ zuse %310 :: hoon+zuse kelvin :: :: -:::: :::: this will become `%york`, vane structures. +:::: :::: this wyll become `%york`, vane structures. :: :: ++ gift-ames :: out result <-$ $% {$drop $~} :: drop packet From 84f3508f0d075167846d66e24bd43b5a773692d9 Mon Sep 17 00:00:00 2001 From: "C. Guy Yarvin" Date: Thu, 27 Oct 2016 22:29:29 -0700 Subject: [PATCH 5/5] Correct previous commit. --- app/hood.hoon | 2 +- lib/helm.hoon | 4 ++-- lib/womb.hoon | 10 +++++----- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/app/hood.hoon b/app/hood.hoon index 4745a0ef12..2439f658af 100644 --- a/app/hood.hoon +++ b/app/hood.hoon @@ -184,7 +184,7 @@ ++ poke-write-plan-account (wrap poke-plan-account):from-write ++ poke-write-tree (wrap poke-tree):from-write ++ poke-write-wipe (wrap poke-wipe):from-write -++ poke-will (wrap poke-will):from-helm +++ poke-wyll (wrap poke-wyll):from-helm ++ quit-drum-phat (wrap quit-phat):from-drum ++ reap-drum-phat (wrap reap-phat):from-drum ++ woot-helm (wrap take-woot):from-helm diff --git a/lib/helm.hoon b/lib/helm.hoon index 98517c0e85..ae5b2c62b1 100644 --- a/lib/helm.hoon +++ b/lib/helm.hoon @@ -197,8 +197,8 @@ :- [%flog /deset %vega (weld top `path`/two)] ~ :: -++ poke-will :: hear certificate - |= wil/(unit will) +++ poke-wyll :: hear certificate + |= wil/(unit wyll) ?> ?=(^ bur) ?> ?=(^ wil) =< abet diff --git a/lib/womb.hoon b/lib/womb.hoon index 8ac1cb8004..9f772b1bc5 100644 --- a/lib/womb.hoon +++ b/lib/womb.hoon @@ -118,7 +118,7 @@ {$poke wire dock pear} :: app RPC {$next wire p/ring} :: update private key {$tick wire p/@pG q/@p} :: save ticket - {$knew wire p/ship q/will} :: learn will (old pki) + {$knew wire p/ship q/wyll} :: learn wyll (old pki) == :: ++ pear :: $% {$email mail tape wall} :: send email @@ -137,7 +137,7 @@ ++ move (pair bone card) :: user-level move :: ++ transaction :: logged poke - $% {$report her/@p wyl/will} + $% {$report her/@p wyl/wyll} {$release gal/@ud sta/@ud} {$release-ships (list ship)} {$claim aut/passcode her/@p} @@ -679,15 +679,15 @@ %+ foal (welp pax /jam-crub) [%jam-crub !>((en:crub:crypto pas (jam `part`+:abet)))] :: -++ poke-rekey :: extend will +++ poke-rekey :: extend wyll |= $~ =< abet ?> |(=(our src) =([~ src] boss)) :: privileged :: (emit /rekey %next sec:ex:(pit:nu:crub 512 (shaz (mix %next (shaz eny))))) ~& %rekey-stub . :: -++ poke-report :: report will - |= {her/@p wyl/will} :: +++ poke-report :: report wyll + |= {her/@p wyl/wyll} :: =< abet =. log-transaction (log-transaction %report +<) ?> =(src src) :: self-authenticated