From 07fc0a5defbccaedddc66179796e137d0ee039d2 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Tue, 9 Jun 2015 15:18:32 -0400 Subject: [PATCH 01/34] basic clay stuff written, haven't compiled --- base/arvo/clay.hoon | 159 +++++++++++++++----------------------------- base/arvo/zuse.hoon | 12 ++-- 2 files changed, 61 insertions(+), 110 deletions(-) diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index 74d49d989..72ead9a4c 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -83,6 +83,7 @@ $: fat=(map ship room) :: domestic hoy=(map ship rung) :: foreign ran=rang :: hashes + mon=(map term beam) :: mount points == :: ++ rede :: universal project $: lim=@da :: complete to @@ -114,7 +115,7 @@ == :: ++ tage ,[[%tabl p=(list (pair marc marc))] q=vase] :: %tabl gage ++ dork :: diff work - $: del=(list (pair path cage)) :: deletes + $: del=(list path) :: deletes ink=(list (pair path cage)) :: hoo{n,k} ins=(unit (list (pair path cage))) :: inserts dig=(map path cage) :: store diffs @@ -417,7 +418,7 @@ :* %+ turn del |= [pax=path mis=miso] ?> ?=(%del -.mis) - [pax p.mis] + pax :: %+ turn ink |= [pax=path mis=miso] @@ -440,7 +441,7 @@ %+ turn mut |= [pax=path mis=miso] ?> ?=(%mut -.mis) - [pax p.mis q.mis] + [pax p.mis] :: ~ :: @@ -470,9 +471,9 @@ |= [pax=path mis=miso] ^- (unit (pair path mime)) ?> ?=(%mut -.mis) - ?. ?=(%mime p.q.mis) + ?. ?=(%mime p.p.mis) ~ - `[pax ((hard mime) q.q.q.mis)] + `[pax ((hard mime) q.q.p.mis)] == == == @@ -508,7 +509,8 @@ |= [pax=path mis=miso] ?> ?=(%mut -.mis) :- [%done ~ %path -:!>(*path) pax] - [%cast p.p.mis [%done ~ q.mis]] + =+ (lobe-to-mark (~(got by q:(aeon-to-yaki let.dom)) pax)) + [%cast - [%done ~ p.mis]] == == :: @@ -522,10 +524,11 @@ :- [%diffing (scot %p who) syd (scot %da wen) pax] :^ %f %exec who :+ [who syd %da wen] ~ ^- silk - =+ =+ (slag (dec (lent pax)) pax) - =+ ?~(- %$ i.-) - [%cast - [%done ~ q.mis]] - [%diff [%done ~ p.mis] -] + =+ (lobe-to-silk (~(got by q:(aeon-to-yaki let.dom)) pax)) + :+ %diff [%done ~ -] + =+ (slag (dec (lent pax)) pax) + =+ ?~(- %$ i.-) + [%cast - [%done ~ q.mis]] :: %ins :- [%casting (scot %p who) syd (scot %da wen) pax] @@ -547,7 +550,7 @@ ?> ?=(^ mut.u.dok) ;: welp ^- (list (pair path misu)) - (turn del.u.dok |=([pax=path cay=cage] [pax %del cay])) + (turn del.u.dok |=(pax=path [pax %del ~])) :: ^- (list (pair path misu)) (turn ink.u.dok |=([pax=path cay=cage] [pax %ins cay])) @@ -682,7 +685,7 @@ ?> ?=(^ mut.u.dok) ;: welp ^- (list (pair path misu)) - (turn del.u.dok |=([pax=path cay=cage] [pax %del cay])) + (turn del.u.dok |=(pax=path [pax %del ~])) :: ^- (list (pair path misu)) (turn ink.u.dok |=([pax=path cay=cage] [pax %ins cay])) @@ -722,7 +725,7 @@ |= a=miso ?| ?=(%del -.a) &(?=(%ins -.a) ?=(%mime -.+.a)) - &(?=(%mut -.a) ?=(%mime -.+>.a)) + &(?=(%mut -.a) ?=(%mime -.+.a)) == :: ~& %forming-ergo :: =- ~& %formed-ergo - @@ -2161,8 +2164,8 @@ =+ tay=(gage-to-tage res) ?: ?=(%| -.tay) (error:he %ergo-bad-made leaf/"merge ergo failed" p.tay) - =+ =| can=mick - |- ^- tan=$&(mick [p=term q=tang]) + =+ =| can=mode + |- ^- tan=$&(mode [p=term q=tang]) ?~ p.tay can =* pax p.i.p.tay ?. ?=(%path p.pax) @@ -2375,32 +2378,29 @@ [mos ..^$] :: %into - =+ yar=(~(got by fat.ruf) p.q.hic) - :_ ..^$(fat.ruf (~(put by fat.ruf) p.q.hic yar(hez [~ hen]))) - ^- (list move) - ?: =(%$ q.q.hic) - ~ - =+ dos=(~(get by dos.yar) q.q.hic) - ?: &(?=(^ dos) !=(0 +>-.+<.+.dos)) :: ank.s.u.dos - ?: =(ank.dom.u.dos q.q.hic) - ~ - :_ ~ - :* hen %pass / %c %info p.q.hic q.q.hic %& - (khan-to-soba `ank.dom.u.dos `r.q.hic) + =+ bem=(~(get by mon.ruf) p.q.hic) + ?: &(?=(~ bem) !=(%$ p.q.hic)) + ~|(%bad-mount-point-from-unix !!) + =+ bem=?~(bem [-.-.fat.ruf %base 1] u.bem) + =+ rom=(~(got by fat.ruf) p.bem) + =+ dos=(~(got by dos.rom) q.bem) + ?: =(0 let.dom.dos) + =+ cos=(mode-to-soba ~ s.bem q.q.hic) + =+ ^- [one=(list ,[path miso]) two=(list ,[path miso])] + %+ skid q.cos + |= [a=path b=miso] + ?& ?=(%ins -.b) + ?=(%mime p.p.b) + =+ (slag (dec (lent a)) a) + ?| =([%hook ~] -) + =([%hoon ~] -) + == == + :~ [hen %pass /one %c %info p.q.hic q.q.hic %& p.cos one] + [hen %pass /two %c %info p.q.hic q.q.hic %& p.cos two] == - =+ cos=(khan-to-soba ~ `r.q.hic) - =+ ^- [one=(list ,[path miso]) two=(list ,[path miso])] - %+ skid q.cos - |= [a=path b=miso] - ?& ?=(%ins -.b) - ?=(%mime p.p.b) - =+ (slag (dec (lent a)) a) - ?| =([%hook ~] -) - =([%hoon ~] -) - == == - :~ [hen %pass /one %c %info p.q.hic q.q.hic %& p.cos one] - [hen %pass /two %c %info p.q.hic q.q.hic %& p.cos two] - == + =+ yak=(~(got by hut.ran) (~(got by hit.dom) let.dom.dos)) + =+ cos=(mode-to-soba q.yak (flop s.bem) q.q.hic) + [hen %pass / %c %info p.bem q.bem %& cos]~ :: %lynx ?: =(%$ q.q.hic) @@ -2717,71 +2717,22 @@ ^- rand [p q [p q.q]:r] :: -:: XX perhaps fil.khan should be (unit (unit mime)) and !> -++ khan-to-soba - |= [ank=(unit ankh) kan=(unit khan)] +++ mode-to-soba + |= [hat=(map path lobe) pax=path mod=mode] ^- soba :- *cart - =| pax=path - :: =- ~& [%khan (turn - |=((pair path miso) [p -.q]))] - - |- ^- (list ,[p=path q=miso]) - ?~ ank - ?~ kan - :: ~& >> [pax %ank-kan-sig] + %+ murn mod + |= [pat=path mim=(unit mime)] + ^- (unit (pair path miso)) + =+ paf=(weld pax pat) + ?~ mim + =+ (~(get by hat) paf) + ?~ - + ~& [%deleting-already-gone pax pat] ~ - :: ~& >> [pax %ank-sig] - =+ ?~ dir.u.kan - ~ - =+ (~(tap by u.dir.u.kan)) - :: ~& [%dirukan pax=pax (~(run by u.dir.u.kan) (cury test ~))] - |- ^- (list (pair path miso)) - ?~ +< ~ - ?~ q.i $(+< t) - (weld ^$(pax [p.i pax], kan `u.q.i) $(+< t)) - ?~ fil.u.kan - - - ?~ u.fil.u.kan - - - :: ~& >> [pax %ins-1] - [[(flop pax) %ins u.u.fil.u.kan] -] - ?~ kan - :: ~& >> [pax %kan-sig] - =+ =+ (~(tap by r.u.ank)) - |-(?~(+< ~ (weld ^$(pax [p.i pax], ank `q.i) $(+< t)))) - ?~ q.u.ank - - - [[(flop pax) %del q.u.q.u.ank] -] - :: ~& >> [pax %neither-sig] - =+ ?~ dir.u.kan - ~ - %+ weld - =+ (~(tap by r.u.ank)) - |- ^- (list ,[p=path q=miso]) - ?~ +< ~ - =+ (~(get by u.dir.u.kan) p.i) - ?: ?=([~ ~] -) $(+< t) - %- weld :_ $(+< t) - :: ~& >> [pax %ankhing p.i ?=(~ -)] - ^$(pax [p.i pax], ank `q.i, kan ?~(- ~ `u.u.-)) - =+ (~(tap by u.dir.u.kan)) - :: ~& > [%sdirukan pax=pax (~(run by dir.u.kan) (cury test ~))] - |- ^- (list ,[p=path q=miso]) - ?~ +< ~ - ?~ q.i $(+< t) - ?: (~(has by r.u.ank) p.i) $(+< t) - :: ~& >> [pax %khaning p.i] - %- weld :_ $(+< t) - ^$(pax [p.i pax], kan `u.q.i, ank ~) - ?~ q.u.ank - ?~ fil.u.kan - - - ?~ u.fil.u.kan - - - :: ~& %ins-2 - [[(flop pax) %ins u.u.fil.u.kan] -] - ?~ fil.u.kan - - - ?~ u.fil.u.kan - [[(flop pax) %del q.u.q.u.ank] -] - [[(flop pax) %mut q.u.q.u.ank u.u.fil.u.kan] -] + [paf %del ~] + =+ (~(get by hat) paf) + ?~ - + [paf %ins %mime -:!>(*mime) u.mim] + [paf %mut %mime -:!>(*mime) u.mim] -- diff --git a/base/arvo/zuse.hoon b/base/arvo/zuse.hoon index 5aa88444a..83c0fdc2f 100644 --- a/base/arvo/zuse.hoon +++ b/base/arvo/zuse.hoon @@ -2113,13 +2113,13 @@ ++ mime ,[p=mite q=octs] :: mimetyped data ++ mite (list ,@ta) :: mime type ++ miso :: ankh delta - $% [%del p=cage] :: delete + $% [%del ~] :: delete [%ins p=cage] :: insert [%dif p=cage] :: mutate from diff - [%mut p=cage q=cage] :: mutate from raw + [%mut p=cage] :: mutate from raw == :: ++ misu :: computed delta - $% [%del p=cage] :: delete + $% [%del ~] :: delete [%ins p=cage] :: insert [%dif p=lobe q=cage] :: mutate from diff == :: @@ -2326,11 +2326,11 @@ $: fil=(unit (unit cage)) :: XX see khan-to-soba dir=(unit (map ,@ta (unit khan))) :: == :: -++ mick (list ,[path (unit mime)]) +++ mode (list ,[path (unit mime)]) ++ riff ,[p=desk q=(unit rave)] :: request/desist :::: :: ++ gift-clay :: out result <-$ - $% [%ergo p=@p q=@tas r=@ud s=mick] :: version update + $% [%ergo p=@tas q=mode] :: version update [%mass p=mass] :: memory usage [%mere p=(each (set path) (pair term tang))] :: merge result [%note p=@tD q=tank] :: debug message @@ -2339,7 +2339,7 @@ ++ kiss-clay :: in request ->$ $% [%info p=@p q=@tas r=nori] :: internal edit [%init p=@p] :: report install - [%into p=@p q=@tas r=khan] :: external edit + [%into p=@tas q=mode] :: external edit [%lynx p=@p q=@tas r=(unit ,?)] :: sync to unix [%merg p=@p q=@tas r=@p s=@tas t=germ] :: merge desks [%wart p=sock q=@tas r=path s=*] :: network request From b13941458beaeb06fd6b488c4d7934fa60ea3967 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Tue, 9 Jun 2015 16:55:07 -0400 Subject: [PATCH 02/34] all compiles --- base/arvo/clay.hoon | 66 ++++++++++++++++++++++++--------------------- base/arvo/zuse.hoon | 5 ++-- 2 files changed, 38 insertions(+), 33 deletions(-) diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index 72ead9a4c..213ede000 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -120,7 +120,7 @@ ins=(unit (list (pair path cage))) :: inserts dig=(map path cage) :: store diffs dif=(unit (list (trel path lobe cage))) :: changes - muc=(map path (pair cage cage)) :: store miso + muc=(map path cage) :: store miso muh=(map path lobe) :: store hashes mut=(unit (list (trel path lobe cage))) :: mutations mim=(map path mime) :: mime cache @@ -509,7 +509,7 @@ |= [pax=path mis=miso] ?> ?=(%mut -.mis) :- [%done ~ %path -:!>(*path) pax] - =+ (lobe-to-mark (~(got by q:(aeon-to-yaki let.dom)) pax)) + =+ (lobe-to-mark:ze (~(got by q:(aeon-to-yaki:ze let.dom)) pax)) [%cast - [%done ~ p.mis]] == == @@ -524,11 +524,11 @@ :- [%diffing (scot %p who) syd (scot %da wen) pax] :^ %f %exec who :+ [who syd %da wen] ~ ^- silk - =+ (lobe-to-silk (~(got by q:(aeon-to-yaki let.dom)) pax)) - :+ %diff [%done ~ -] + :+ %diff + (lobe-to-silk:ze pax (~(got by q:(aeon-to-yaki:ze let.dom)) pax)) =+ (slag (dec (lent pax)) pax) =+ ?~(- %$ i.-) - [%cast - [%done ~ q.mis]] + [%cast - [%done ~ p.mis]] :: %ins :- [%casting (scot %p who) syd (scot %da wen) pax] @@ -639,7 +639,8 @@ %+ turn cat |= [pax=path cay=cage] :- [%done ~ %path -:!>(*path) pax] - [%diff [%done ~ p:(~(got by muc.u.dok) pax)] [%done ~ cay]] + =+ (lobe-to-silk:ze pax (~(got by q:(aeon-to-yaki:ze let.dom)) pax)) + [%diff - [%done ~ cay]] == :: ++ take-mutating @@ -762,21 +763,22 @@ == ?~ hez ~|(%no-sync-duct !!) ?. syn ~|(%sync-off !!) - %= +>.$ - reg - :_ reg - :* u.hez %ergo who syd let.dom - ^- (list ,[path (unit mime)]) - %+ turn (gage-to-cages res) - |= [pax=cage mim=cage] - ?. ?=(%path p.pax) - ~|(%ergo-bad-path-mark !!) - :- ((hard path) q.q.pax) - ?. ?=(%mime p.mim) - ~ - `((hard mime) q.q.mim) - == - == + +>.$ + :: %= +>.$ + :: reg + :: :_ reg + :: :* u.hez %ergo who syd let.dom + :: ^- (list ,[path (unit mime)]) + :: %+ turn (gage-to-cages res) + :: |= [pax=cage mim=cage] + :: ?. ?=(%path p.pax) + :: ~|(%ergo-bad-path-mark !!) + :: :- ((hard path) q.q.pax) + :: ?. ?=(%mime p.mim) + :: ~ + :: `((hard mime) q.q.mim) + :: == + :: == :: ++ checkout-ankh |= hat=(map path lobe) @@ -2182,7 +2184,7 @@ +>.$ %_ +>.$ don %| - reg [[u.hez %ergo who syd let.dom tan] reg] + :: reg [[u.hez %ergo who syd let.dom tan] reg] == :: ++ he @@ -2378,10 +2380,14 @@ [mos ..^$] :: %into + :_ ..^$ =+ bem=(~(get by mon.ruf) p.q.hic) ?: &(?=(~ bem) !=(%$ p.q.hic)) - ~|(%bad-mount-point-from-unix !!) - =+ bem=?~(bem [-.-.fat.ruf %base 1] u.bem) + ~|([%bad-mount-point-from-unix p.q.hic] !!) + =+ ^- bem=beam + ?^ bem + u.bem + [[?>(?=(^ fat.ruf) p.n.fat.ruf) %base %ud 1] ~] =+ rom=(~(got by fat.ruf) p.bem) =+ dos=(~(got by dos.rom) q.bem) ?: =(0 let.dom.dos) @@ -2395,10 +2401,10 @@ ?| =([%hook ~] -) =([%hoon ~] -) == == - :~ [hen %pass /one %c %info p.q.hic q.q.hic %& p.cos one] - [hen %pass /two %c %info p.q.hic q.q.hic %& p.cos two] + :~ [hen %pass /one %c %info p.bem q.bem %& p.cos one] + [hen %pass /two %c %info p.bem q.bem %& p.cos two] == - =+ yak=(~(got by hut.ran) (~(got by hit.dom) let.dom.dos)) + =+ yak=(~(got by hut.ran.ruf) (~(got by hit.dom.dos) let.dom.dos)) =+ cos=(mode-to-soba q.yak (flop s.bem) q.q.hic) [hen %pass / %c %info p.bem q.bem %& cos]~ :: @@ -2730,9 +2736,9 @@ ?~ - ~& [%deleting-already-gone pax pat] ~ - [paf %del ~] + `[paf %del ~] =+ (~(get by hat) paf) ?~ - - [paf %ins %mime -:!>(*mime) u.mim] - [paf %mut %mime -:!>(*mime) u.mim] + `[paf %ins %mime -:!>(*mime) u.mim] + `[paf %mut %mime -:!>(*mime) u.mim] -- diff --git a/base/arvo/zuse.hoon b/base/arvo/zuse.hoon index 83c0fdc2f..77c7b1ef3 100644 --- a/base/arvo/zuse.hoon +++ b/base/arvo/zuse.hoon @@ -1029,8 +1029,7 @@ ^- miso =+ dir=((hard arch) .^(%cy pax)) ?~ q.dir [%ins val] - =+ for=((hard mark) -:(flop pax)) - [%mut [for [%atom %$] .^(%cx pax)] val] + [%mut val] :: ++ file :: simple file load |= pax=path @@ -1048,7 +1047,7 @@ |= pax=path ^- toro ?> ?=([* * * *] pax) - [i.t.pax [%& [*cart [[t.t.t.pax [%del %$ !>(.^(%cx pax))]] ~]]]] + [i.t.pax [%& [*cart [[t.t.t.pax [%del ~]] ~]]]] :: ++ furl :: unify changes |= [one=toro two=toro] From c0baedb4380ab072d18c476357ea5c564f2f5e80 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Thu, 11 Jun 2015 23:52:42 -0400 Subject: [PATCH 03/34] mount mostly works --- base/ape/hood.hoon | 2 +- base/arvo/clay.hoon | 178 +++++++++++++++++++++++++++----------------- base/arvo/gall.hoon | 2 +- base/arvo/zuse.hoon | 2 +- base/lib/kiln.hoon | 18 +++-- base/mar/otf.hoon | 9 +-- base/mar/woff.hoon | 9 +-- 7 files changed, 130 insertions(+), 90 deletions(-) diff --git a/base/ape/hood.hoon b/base/ape/hood.hoon index d3e1cdf80..adc2e0922 100644 --- a/base/ape/hood.hoon +++ b/base/ape/hood.hoon @@ -74,9 +74,9 @@ ++ poke-helm-init (wrap poke-init):from-helm ++ poke-hood-link (wrap poke-link):from-drum ++ poke-hood-mass (wrap poke-mass):from-helm +++ poke-hood-mount (wrap poke-mount):from-kiln ++ poke-hood-sync (wrap poke-sync):from-kiln ++ poke-hood-unsync (wrap poke-unsync):from-kiln -++ poke-hood-unix (wrap poke-unix):from-kiln ++ poke-hood-verb (wrap poke-verb):from-helm ++ poke-hood-begin (wrap poke-begin):from-helm ++ poke-hood-invite (wrap poke-invite):from-helm diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index 213ede000..a94441dbd 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -15,7 +15,6 @@ dom=dome :: desk data dok=(unit dork) :: outstanding diffs mer=(map (pair ship desk) mery) :: outstanding merges - syn=? :: sync to unix == :: ++ gift gift-clay :: out result <-$ ++ kiss kiss-clay :: in request ->$ @@ -84,6 +83,7 @@ hoy=(map ship rung) :: foreign ran=rang :: hashes mon=(map term beam) :: mount points + hez=(unit duct) :: sync duct == :: ++ rede :: universal project $: lim=@da :: complete to @@ -92,7 +92,6 @@ dom=dome :: revision state dok=(unit dork) :: outstanding diffs mer=(map (pair ship desk) mery) :: outstanding merges - syn=? :: sync to unix == :: ++ rind :: request manager $: nix=@ud :: request index @@ -103,7 +102,6 @@ == :: ++ room :: fs per ship $: hun=duct :: terminal duct - hez=(unit duct) :: sync duct dos=(map desk dojo) :: native desk == :: ++ rove :: stored request @@ -134,7 +132,7 @@ |% ++ de :: per desk |= [now=@da hen=duct hun=duct hez=(unit duct)] - |= [[who=@p for=@p] syd=@ta rede ran=rang] + |= [[who=@p for=@p] syd=@ta rede ran=rang mon=(map term beam)] =* red +<+>- =| yel=(list ,[p=duct q=gift]) =| byn=(list ,[p=duct q=riot]) @@ -285,10 +283,44 @@ fod.u.ref (~(put by fod.u.ref) hen inx) == :: - ++ lynx - |= sun=(unit ,?) + ++ must-ergo + |= can=(list path) + ^- (map term (pair ,@ud (set path))) + %- mo ^- (list (trel term ,@ud (set path))) + %+ murn (~(tap by mon)) + |= [nam=term bem=beam] + ^- (unit (trel term ,@ud (set path))) + =- ?~(- ~ `[nam (lent s.bem) (sa -)]) + %+ skim can + |= pax=path + %- ~(any by mon) + |= bem=beam + &(=(p.bem for) =(q.bem syd) =((flop s.bem) (scag (lent s.bem) pax))) + :: + ++ mont + |= [pot=term pax=path] ^+ +> - +>.$(syn ?~(sun !syn u.sun)) + =+ can=(turn (~(tap by q:(aeon-to-yaki:ze let.dom))) head) + =+ mus=(skim can |=(paf=path =(pax (scag (lent pax) paf)))) + ?~ mus + +>.$ + %_ +>.$ + tag + :_ tag + :* hen %pass [%ergoing (scot %p who) syd pot ~] %f + %exec who [who syd %da now] ~ %tabl + ^- (list (pair silk silk)) + %+ turn `(list path)`mus + |= a=path + ^- (pair silk silk) + :- [%done ~ %path !>((slag (lent pax) a))] + :+ %cast %mime + =+ (need (need (read-x:ze let.dom a))) + ?: ?=(%& -<) + [%done ~ p.-] + (lobe-to-silk:ze a p.-) + == + == :: ++ ease :: release request ^+ . @@ -365,7 +397,6 @@ ^+ +> %= +> reg ~& %merge-announce reg - :: ?~(hez reg :_(reg [u.hez [%ergo who syd let.dom]])) :: yel [[hen %note '=' %leaf ~] yel] :: XX do better == :: @@ -721,7 +752,9 @@ =. +>.$ =>(wake ?>(?=(^ dok) .)) :: ~& %checked-out ?~ hez +>.$(dok ~) - ?. syn +>.$(dok ~) + =+ mus=(must-ergo (turn sim head)) + ?: =(~ mus) + +>.$(dok ~) =+ ^= ceq |= a=miso ?| ?=(%del -.a) @@ -732,29 +765,29 @@ :: =- ~& %formed-ergo - %_ +>.$ dok ~ - tag :: ?~(hez reg :_(reg [u.hez [%ergo who syd let.dom]])) - :_ tag - :* hen %pass [%ergoing (scot %p who) syd ~] %f - %exec who [who syd %da now] ~ %tabl - ^- (list (pair silk silk)) - %+ turn sim - |= [a=path b=misu] - ^- (pair silk silk) - :- [%done ~ %path !>(a)] - ?: ?=(%del -.b) - [%done ~ %null !>(~)] - =+ (~(get by mim.u.dok) a) - ?^ - [%done ~ %mime !>(u.-)] - :+ %cast %mime - =+ (need (need (read-x:ze let.dom a))) - ?: ?=(%& -<) - [%done ~ p.-] - (lobe-to-silk:ze a p.-) - == + :: tag + :: :_ tag + :: :* hen %pass [%ergoing (scot %p who) syd ~] %f + :: %exec who [who syd %da now] ~ %tabl + :: ^- (list (pair silk silk)) + :: %+ turn sim + :: |= [a=path b=misu] + :: ^- (pair silk silk) + :: :- [%done ~ %path !>(a)] + :: ?: ?=(%del -.b) + :: [%done ~ %null !>(~)] + :: =+ (~(get by mim.u.dok) a) + :: ?^ - [%done ~ %mime !>(u.-)] + :: :+ %cast %mime + :: =+ (need (need (read-x:ze let.dom a))) + :: ?: ?=(%& -<) + :: [%done ~ p.-] + :: (lobe-to-silk:ze a p.-) + :: == == :: ++ take-ergo - |= res=gage + |= [pot=term res=gage] ^+ +> ?: ?=(%| -.res) %_ +>.$ @@ -762,23 +795,21 @@ [[hen %note '!' %rose [" " "" ""] leaf/"clay ergo failed" p.res] yel] == ?~ hez ~|(%no-sync-duct !!) - ?. syn ~|(%sync-off !!) - +>.$ - :: %= +>.$ - :: reg - :: :_ reg - :: :* u.hez %ergo who syd let.dom - :: ^- (list ,[path (unit mime)]) - :: %+ turn (gage-to-cages res) - :: |= [pax=cage mim=cage] - :: ?. ?=(%path p.pax) - :: ~|(%ergo-bad-path-mark !!) - :: :- ((hard path) q.q.pax) - :: ?. ?=(%mime p.mim) - :: ~ - :: `((hard mime) q.q.mim) - :: == - :: == + %= +>.$ + reg + :_ reg + :* u.hez %ergo pot + ^- mode + %+ turn (gage-to-cages res) + |= [pax=cage mim=cage] + ?. ?=(%path p.pax) + ~|(%ergo-bad-path-mark !!) + :- ((hard path) q.q.pax) + ?. ?=(%mime p.mim) + ~ + `((hard mime) q.q.mim) + == + == :: ++ checkout-ankh |= hat=(map path lobe) @@ -2137,7 +2168,8 @@ =. ank.dom ank.dat ?~ hez (done:he ~) - ?. syn + =+ mus=(must-ergo (turn (~(tap by erg.dat)) head)) + ?: =(~ mus) (done:he ~) ergo :: @@ -2178,8 +2210,6 @@ ?: ?=([@ *] tan) (error:he tan) ?~ hez (error:he %ergo-no-hez ~) - ?. syn - (error:he %ergo-sync-off ~) ?: ?=(%| -.gon.dat) +>.$ %_ +>.$ @@ -2265,8 +2295,8 @@ ?^(rug u.rug *rung) =+ ^= red ^- rede =+ yit=(~(get by rus.rug) syd) - ?^(yit u.yit `rede`[~2000.1.1 ~ [~ *rind] *dome ~ ~ %|]) - ((de now hen ~ ~) [who him] syd red ran.ruf) + ?^(yit u.yit `rede`[~2000.1.1 ~ [~ *rind] *dome ~ ~]) + ((de now hen ~ hez.ruf) [who him] syd red ran.ruf mon.ruf) :: ++ posh |= [him=ship syd=desk red=rede ruf=raft] @@ -2288,7 +2318,7 @@ %_ +> ran.ruf run dos.yar - (~(put by dos.yar) syd [qyx.red dom.red dok.red mer.red syn.red]) + (~(put by dos.yar) syd [qyx.red dom.red dok.red mer.red]) == :: ++ wake @@ -2305,10 +2335,10 @@ =+ ^= saq ^- dojo =+ saq=(~(get by dos.yar) syd) ?~(saq *dojo u.saq) - %^ (de now hen hun.yar hez.yar) + %^ (de now hen hun.yar hez.ruf) [who who] syd - [[now qyx.saq ~ dom.saq dok.saq mer.saq syn.saq] ran.ruf] + [[now qyx.saq ~ dom.saq dok.saq mer.saq] ran.ruf mon.ruf] -- -- :::::::::::::::::::::::::::::::::::::::::::::::::::::::: @@ -2341,7 +2371,7 @@ ^- [p=(list move) q=_..^$] ?- -.q.hic %init - :_ ..^$(fat.ruf (~(put by fat.ruf) p.q.hic [hen ~ ~])) + :_ ..^$(fat.ruf (~(put by fat.ruf) p.q.hic [hen ~])) =+ [bos=(sein p.q.hic) can=(clan p.q.hic)] %- zing ^- (list (list move)) :~ ~& [%bos bos p.q.hic] @@ -2380,6 +2410,7 @@ [mos ..^$] :: %into + =. hez.ruf `hen :_ ..^$ =+ bem=(~(get by mon.ruf) p.q.hic) ?: &(?=(~ bem) !=(%$ p.q.hic)) @@ -2407,19 +2438,6 @@ =+ yak=(~(got by hut.ran.ruf) (~(got by hit.dom.dos) let.dom.dos)) =+ cos=(mode-to-soba q.yak (flop s.bem) q.q.hic) [hen %pass / %c %info p.bem q.bem %& cos]~ - :: - %lynx - ?: =(%$ q.q.hic) - [~ ..^$] - =^ mos ruf - =+ une=(un p.q.hic now hen ruf) - =+ ^= zat - (lynx:(di:wake:une q.q.hic) r.q.hic) - =+ zot=abet.zat - :- -.zot - =. une (pish:une q.q.hic +.zot ran.zat) - abet:une - [mos ..^$] :: %merg :: direct state up ?: =(%$ q.q.hic) @@ -2433,6 +2451,25 @@ =. une (pish:une q.q.hic +.zot ran.zat) abet:une [mos ..^$] + :: + %mont + =+ pot=(~(get by mon.ruf) p.q.hic) + ?^ pot + ~& [%already-mounted pot] + [~ ..^$] + =. mon.ruf + (~(put by mon.ruf) p.q.hic [q.q.hic r.q.hic %ud 0] (flop s.q.hic)) + =+ yar=(~(get by fat.ruf) q.q.hic) + ?~ yar + [~ ..^$] + =+ dos=(~(get by dos.u.yar) r.q.hic) + ?~ dos + [~ ..^$] + =+ une=(un q.q.hic now hen ruf) + =+ wex=(di:une r.q.hic) + =+ wao=(mont:wex p.q.hic s.q.hic) + =+ woo=abet:wao + [-.woo ..^$(ruf abet:(pish:une r.q.hic +.woo ran.wao))] :: %warp =^ mos ruf @@ -2622,13 +2659,14 @@ [mos ..^$] :: %ergoing - ?> ?=([@ @ ~] t.tea) + ?> ?=([@ @ @ ~] t.tea) =+ who=(slav %p i.t.tea) =+ syd=(slav %tas i.t.t.tea) + =+ pot=(slav %tas i.t.t.t.tea) =^ mos ruf =+ une=(un who now hen ruf) =+ ^= zat - (take-ergo:(di:une syd) q.q.hin) + (take-ergo:(di:une syd) pot q.q.hin) =+ zot=abet.zat [-.zot abet:(pish:une syd +.zot ran.zat)] [mos ..^$] diff --git a/base/arvo/gall.hoon b/base/arvo/gall.hoon index 672b670b0..312be0489 100644 --- a/base/arvo/gall.hoon +++ b/base/arvo/gall.hoon @@ -1065,8 +1065,8 @@ %exec `%f %flog `%d %info `%c - %lynx `%c %merg `%c + %mont `%c %them `%e %wait `%t %want `%a diff --git a/base/arvo/zuse.hoon b/base/arvo/zuse.hoon index 77c7b1ef3..f72cec1db 100644 --- a/base/arvo/zuse.hoon +++ b/base/arvo/zuse.hoon @@ -2339,8 +2339,8 @@ $% [%info p=@p q=@tas r=nori] :: internal edit [%init p=@p] :: report install [%into p=@tas q=mode] :: external edit - [%lynx p=@p q=@tas r=(unit ,?)] :: sync to unix [%merg p=@p q=@tas r=@p s=@tas t=germ] :: merge desks + [%mont p=@tas q=@p r=@tas s=path] :: mount to unix [%wart p=sock q=@tas r=path s=*] :: network request [%warp p=sock q=riff] :: file request [%wegh ~] :: report memory diff --git a/base/lib/kiln.hoon b/base/lib/kiln.hoon index 51ffd2400..95050a059 100644 --- a/base/lib/kiln.hoon +++ b/base/lib/kiln.hoon @@ -21,9 +21,9 @@ :: :: :: :::: :: :: :: :: :: -++ hood-unix :: - $: syd=desk :: - syn=(unit bean) :: +++ hood-mount :: + $: pax=path :: + pot=term :: == :: ++ hood-sync :: $: syd=desk :: @@ -55,7 +55,7 @@ ++ card :: $% [%exec wire @p beak (unit silk)] :: [%info wire @p @tas nori] :: - [%lynx wire @p @tas (unit ,?)] :: + [%mont wire @tas @p @tas path] :: [%merg wire @p @tas @p @tas germ] :: [%poke wire dock pear] :: [%warp wire sock riff] :: @@ -76,9 +76,13 @@ ^+ +> ?~(+< +> $(+< t.+<, +> (emit i.+<))) :: - ++ poke-unix :: - |= hood-unix - abet:(emit %lynx /kiln our syd syn) + ++ poke-mount + |= hood-mount + =+ bem=(tome pax) + ?~ bem + =+ "can't sync bad path: {}" + abet:(spam leaf/- ~) + abet:(emit %mont /mount pot p.u.bem q.u.bem (flop s.u.bem)) :: ++ poke-sync :: |= hos=hood-sync diff --git a/base/mar/otf.hoon b/base/mar/otf.hoon index 202f49b67..d48b4bddc 100644 --- a/base/mar/otf.hoon +++ b/base/mar/otf.hoon @@ -5,17 +5,16 @@ :: :::: compute :: -|_ otf=@ +|_ otf=mime :: ++ grow :: convert to |% - ++ mime :: convert to %mime - [/font/otf (taco otf)] + ++ mime otf :: convert to %mime -- ++ grab |% - ++ mime |=([p=mite q=octs] q.q) - ++ noun ,@ + ++ mime |=([mite p=octs] [/font/otf p]) + ++ noun ^mime -- ++ grad |% diff --git a/base/mar/woff.hoon b/base/mar/woff.hoon index 627e20641..854569013 100644 --- a/base/mar/woff.hoon +++ b/base/mar/woff.hoon @@ -5,17 +5,16 @@ :: :::: compute :: -|_ otf=@ +|_ wof=mime :: ++ grow :: convert to |% - ++ mime :: convert to %mime - [/application/font-woff (taco otf)] + ++ mime wof :: convert to %mime -- ++ grab |% - ++ mime |=([p=mite q=octs] q.q) - ++ noun ,@ + ++ mime |=([mite p=octs] [/application/font-woff p]) + ++ noun ^mime -- ++ grad |% From e3537b34123333b413dd5df877c5685d348042e1 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Fri, 12 Jun 2015 13:56:30 -0400 Subject: [PATCH 04/34] partial whitespace cleanup --- base/arvo/clay.hoon | 2 +- base/arvo/hoon.hoon | 126 ++++++++++++++++++++++---------------------- 2 files changed, 63 insertions(+), 65 deletions(-) diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index a94441dbd..751aa9508 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -1,4 +1,4 @@ -!: +!: :: clay (4c), revision control :: |= pit=vase diff --git a/base/arvo/hoon.hoon b/base/arvo/hoon.hoon index 9dc6b4f62..a7b9836fa 100644 --- a/base/arvo/hoon.hoon +++ b/base/arvo/hoon.hoon @@ -158,7 +158,7 @@ ++ tang (list tank) :: general error ++ tank $% [%leaf p=tape] :: printing formats $: %palm :: backstep list - p=[p=tape q=tape r=tape s=tape] :: + p=[p=tape q=tape r=tape s=tape] :: q=(list tank) :: == :: $: %rose :: flat list @@ -257,7 +257,7 @@ [%dtwt p=twig] :: nock 3 cell test :: :::::: prettyprinting [%hxgl p=tusk] :: prettyprint tape - [%hxgr p=tusk] :: prettyprint tank + [%hxgr p=tusk] :: prettyprint tank :: :::::: type conversion [%ktbr p=twig] :: %gold core to %iron [%ktdt p=twig q=twig] :: cast q to type (p q) @@ -308,7 +308,7 @@ [%wthz p=tiki q=tine] :: tiki %wthp [%wtcl p=twig q=twig r=twig] :: if p, then q, else r [%wtdt p=twig q=twig r=twig] :: unless, ?:(p r q) - [%wtkt p=wing q=twig r=twig] :: if p is a cell + [%wtkt p=wing q=twig r=twig] :: if p is a cell [%wtkz p=tiki q=twig r=twig] :: tiki %wtkt [%wtgl p=twig q=twig] :: assert |, ?:(p !! q) [%wtgr p=twig q=twig] :: assert &, ?:(p q !!) @@ -400,7 +400,7 @@ ++ unce |* a=_,* :: change part $% [%& p=@ud] :: skip[copy] [%| p=(list a) q=(list a)] :: p -> q[chunk] - == :: + == :: ++ unit |* a=_,* :: maybe $|(~ [~ u=a]) :: ++ upas :: tree change (%d) @@ -527,10 +527,10 @@ ~/ %lth |= [a=@ b=@] ^- ? - ?& !=(a b) - |- - ?| =(0 a) - ?& !=(0 b) + ?& !=(a b) + |- + ?| =(0 a) + ?& !=(0 b) $(a (dec a), b (dec b)) == == == :: @@ -692,7 +692,7 @@ ^- @ =+ b=0 |- - ?~ a b + ?~ a b $(a t.a, b +(b)) :: ++ levy @@ -942,9 +942,9 @@ a (rsh 0 1 a) b (rsh 0 1 b) c +(c) - d %+ add d - %^ lsh 0 c - ?& =(0 (end 0 1 a)) + d %+ add d + %^ lsh 0 c + ?& =(0 (end 0 1 a)) =(0 (end 0 1 b)) == == @@ -959,9 +959,9 @@ a (rsh 0 1 a) b (rsh 0 1 b) c +(c) - d %+ add d - %^ lsh 0 c - ?| =(0 (end 0 1 a)) + d %+ add d + %^ lsh 0 c + ?| =(0 (end 0 1 a)) =(0 (end 0 1 b)) == == @@ -1058,7 +1058,7 @@ |= [syd=@ key=@] ?> (lte (met 5 syd) 1) =+ ^= row - |= [a=@ b=@] + |= [a=@ b=@] (con (end 5 1 (lsh 0 a b)) (rsh 0 (sub 32 a) b)) =+ mow=|=([a=@ b=@] (end 5 1 (mul a b))) =+ len=(met 5 key) @@ -1074,7 +1074,7 @@ ?: =(inx len) goc =+ kop=(cut 5 [inx 1] key) =. kop (mow kop 0xcc9e.2d51) - =. kop (row 15 kop) + =. kop (row 15 kop) =. kop (mow kop 0x1b87.3593) =. goc (mix kop goc) =. goc (row 13 goc) @@ -1182,7 +1182,7 @@ :: ++ pad |=(a=@ =+(b=(met 3 a) ?:((gte b 21) 0 (sub 21 b)))) ++ enc |=(a=@ux `@ux`(mix (lsh 3 4 a) (tok a))) - ++ den + ++ den |= a=@ux ^- (unit ,@ux) =+ b=(rsh 3 4 a) ?. =((tok b) (end 3 4 a)) @@ -1272,9 +1272,9 @@ |= (trel ,? a (map a ,@ud)) ^+ r =+ (~(get by r) q) - ?: p + ?: p (~(put by r) q ?~(- 1 +(u.-))) - ?> ?=(^ -) + ?> ?=(^ -) ?:(=(0 u.-) (~(del by r) q) (~(put by r) q (dec u.-))) :::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: section 2cG, floating point :: @@ -1415,7 +1415,7 @@ =+ n=(^sub (met 0 a) (^add p 1)) =+ r=(end 0 n a) (rne p a r n) - :: + :: :: the real rnd ++ rne |= [p=@u a=@u r=@u n=@u] ^- @u =+ b=(rsh 0 n a) @@ -1461,14 +1461,13 @@ ++ inf |= [b=@u n=[s=? e=@s a=@u]] &(=(e.n (^mul 2 +(b))) =(0 (ira a.n))) - ++ gar |= [b=@u n=[s=? e=@s a=@u] m=[s=? e=@s a=@u]] + ++ gar |= [b=@u n=[s=? e=@s a=@u] m=[s=? e=@s a=@u]] ^- (unit ,[s=? e=@s a=@u]) ?: (snan b n) ~|(%floating-nan !!) ?: (snan b n) ~|(%floating-nan !!) ?: (nan b n) [~ n] ?: (nan b m) [~ m] ~ - ++ pro |= [b=@u p=@u n=[s=? e=@s a=@u]] ^- [s=? e=@s a=@u] =+ maxexp=`@s`(^mul 2 +(b)) @@ -1478,7 +1477,6 @@ ?: &(=(1 (mod e.n 2)) (^gte e.n minexp)) (szer:vl:fl b p s.n) :: flush denorms n - ++ err |= [b=@u p=@u n=[s=? e=@s a=@u]] ^- (unit tape) ?: (snan b n) [~ "snan"] @@ -1488,7 +1486,7 @@ ~ -- :::::::::::: - ++ add |= [b=@u p=@u n=[s=? e=@s a=@u] m=[s=? e=@s a=@u]] + ++ add |= [b=@u p=@u n=[s=? e=@s a=@u] m=[s=? e=@s a=@u]] ^- [s=? e=@s a=@u] =+ g=(gar:te:fl b n m) ?: ?=(^ g) @@ -1511,7 +1509,7 @@ =+ e2=(sum:si (sun:si dif2) e.n) (pro:te:fl b p [s=|(s.n s.m) e=e2 a=(lia p a3)]) - ++ sub |= [b=@u p=@u n=[s=? e=@s a=@u] m=[s=? e=@s a=@u]] + ++ sub |= [b=@u p=@u n=[s=? e=@s a=@u] m=[s=? e=@s a=@u]] ^- [s=? e=@s a=@u] =+ g=(gar:te:fl b n m) ?: ?=(^ g) @@ -1675,7 +1673,7 @@ ++ bex |= a=@s ^- @rd (bit [s=%.y e=a a=(ari:fl mlen 0)]) - + ++ ipow |= [exp=@s n=@rd] ^- @rd ?: =(0 (mod exp 2)) @@ -3474,7 +3472,7 @@ :: %r ?+ hay (z-co q.p.lot) - %d + %d =+ r=(rlyd q.p.lot) ?~ e.r ['.' '~' (r-co r)] @@ -3521,7 +3519,7 @@ => .(rex ['.' (t-co ((d-co 1) der) ne)]) => .(rex ((d-co 1) nub)) ?:(syn rex ['-' rex]) - ++ t-co |= [a=tape n=?] ^- tape + ++ t-co |= [a=tape n=?] ^- tape ?: n a ?~ a ~|(%empty-frac !!) t.a :: @@ -3689,12 +3687,12 @@ ;~ plug ;~(pose (cold | hep) (easy &)) ;~(plug dim:ag ;~(pose ;~(pfix dot ;~(plug zer dim:ag)) (easy [0 0]))) - ;~ pose - ;~ pfix - (just 'e') + ;~ pose + ;~ pfix + (just 'e') (cook some ;~(plug ;~(pose (cold | hep) (easy &)) dim:ag)) - == - (easy ~) + == + (easy ~) == == ;~ pose @@ -3704,7 +3702,7 @@ (stag %rs (cook ryls voy)) == ++ royl-cell - |= [a=? b=[c=@ d=@ e=@] f=(unit ,[h=? i=@])] + |= [a=? b=[c=@ d=@ e=@] f=(unit ,[h=? i=@])] ^- [? @ @ @ (unit ,@s)] ?~ f [a c.b d.b e.b ~] @@ -5009,7 +5007,7 @@ =+ zd=(qr ~[&16.y &13.y &14.y &15.y]) ^- (list ,@) :~ &1.za &2.za &3.za &4.za - &4.zb &1.zb &2.zb &3.zb + &4.zb &1.zb &2.zb &3.zb &3.zc &4.zc &1.zc &2.zc &2.zd &3.zd &4.zd &1.zd == @@ -5134,7 +5132,7 @@ ?: (gth j l) t =+ u=(add s (lsh 3 sl (rep 3 (flop (rpp 3 4 j))))) =+ f=0 =. f |- ^- @ - ?: (gth k c) f + ?: (gth k c) f =+ q=(hml p pl u ?:(=(k 1) (add sl 4) h)) $(u q, f (mix f q), k +(k)) $(t (add t (lsh 3 (mul (dec j) h) f)), j +(j)) @@ -5672,7 +5670,7 @@ :: :::::::::::::::::::::::::::::::::::::::::::::::::::::: :: section 2fA, miscellaneous funs :: :: :: -++ bull :: make %bull type +++ bull :: make %bull type |= [bid=twin der=type] ^- type ?:(|(=(%void der) =(%void s.bid)) %void [%bull bid der]) @@ -5707,7 +5705,7 @@ [%face cog der] :: ++ bool ^-(type [%fork [%cube 0 %atom %f] [%cube 1 %atom %f]]) :: -:!>(*?) -++ flay +++ flay ~/ %flay |= pok=port ^- [p=axis q=type] @@ -5946,7 +5944,7 @@ ++ seed :: hoon/hoon core vase ^- vase !! - :: ~+ :: trimmed + :: ~+ :: trimmed :: !;(*type ..seed) :: ++ seem |=(toy=typo `type`toy) :: promote typo @@ -6016,7 +6014,7 @@ ~ `[(~(peek ut p.vax) %free axe) .*(q.vax [0 axe])] :: -++ slab +++ slab |= [cog=@tas typ=type] !=(~ q:(~(fino ut typ) 0 %free cog)) :: @@ -6052,7 +6050,7 @@ |= [sut=type ref=type] ^- [? worm] ?: (~(has in nes) [sut ref]) [& +>+<] - ?. (~(nest ut sut) | ref) + ?. (~(nest ut sut) | ref) :: ~& %nest-failed [| +>+<] [& +>+<(nes (~(put in nes) [sut ref]))] @@ -6105,7 +6103,7 @@ ++ spec :: specialize vase |= vax=vase ^- [vase worm] - =+ ^= gen ^- twig + =+ ^= gen ^- twig ?@ q.vax [%wtts [%axil [%atom %$]] [%$ 1]~] ?@ -.q.vax [%wtts [%leaf %tas -.q.vax] [%$ 2]~] [%wtts [%axil %cell] [%$ 1]~] @@ -6360,7 +6358,7 @@ [%cnzz [@ ~]] i.p.gen [%zpcb *] $(gen q.gen) [@ *] =+(neg=open ?:(=(gen neg) [%0 ~] $(gen neg))) - [^ *] =+ toe=[$(gen p.gen) $(gen q.gen)] + [^ *] =+ toe=[$(gen p.gen) $(gen q.gen)] ?:(=(toe [[%0 ~] [%0 ~]]) [%0 ~] [%2 toe]) == :: @@ -6411,7 +6409,7 @@ [i.p.gen $(p.gen t.p.gen)] :: [%cncb *] [%ktls [%cnzz p.gen] %cnts p.gen q.gen] - [%cncl *] + [%cncl *] =+ rem=[%cnsg [%$ ~] p.gen q.gen] ?. ?=([%zpcb ^ %cnzz @ ~] p.gen) rem => .(p.gen `[@ ^ @ p=@tas ~]`p.gen) @@ -6998,7 +6996,7 @@ %type =+ cis=((hard tank) .*(.(sut lum) !=(duck))) :: type bypass :^ ~ %palm - [~ ~ ~ ~] + [~ ~ ~ ~] [[%leaf '#' 't' '/' ~] cis ~] :: %wall @@ -8461,7 +8459,7 @@ $(i.ruw t.i.ruw, cah [i.i.ruw cah]) $(i.ruw t.i.ruw, cah ~, yun [p.i.i.ruw (wod cah yun)]) :: - ++ posh !: + ++ posh !: |= [pre=(unit tyke) pof=(unit ,[p=@ud q=tyke])] ^- (unit (list twig)) =- ?^(- - ~&(%posh-fail -)) @@ -8484,7 +8482,7 @@ ^- (unit tusk) ?~ goo `~ %+ both - ?^(i.goo i.goo ?~(pag ~ `u=i.pag)) + ?^(i.goo i.goo ?~(pag ~ `u=i.pag)) $(goo t.goo, pag ?~(pag ~ t.pag)) :: ++ poor @@ -8912,7 +8910,7 @@ ;~ pose ;~ less (jest '"""') %+ ifix [doq doq] - %- star + %- star ;~ pose ;~(pfix bas ;~(pose bas doq kel bix:ab)) ;~(less doq bas kel prn) @@ -8922,7 +8920,7 @@ :: %- inde %+ ifix [(jest '"""\0a') (jest '\0a"""')] - %- star + %- star ;~ pose ;~(pfix bas ;~(pose bas kel bix:ab)) ;~(less bas kel prn) @@ -9336,7 +9334,7 @@ %pel [~ %cnts ~(rake ap ros) p.vil] %pat [~ %bcpt ~(rake ap ros) p.vil] %ket [~ ros p.vil] - %tis =+ tog=~(hock ap ros) + %tis =+ tog=~(hock ap ros) ?:(=([%0 ~] tog) ~ [~ %ktts tog p.vil]) == :: @@ -9486,7 +9484,7 @@ :::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::: :::::: profiling support; move me :::::: :::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::: -++ doss +++ doss $: mon=moan :: sample count hit=(map term ,@ud) :: hit points cut=(map path hump) :: cut points @@ -9527,11 +9525,11 @@ =+ nax=`(unit path)`?~(t.paz ~ `i.t.paz) =+ hup=`hump`=+(hup=(~(get by cut.day) i.paz) ?^(hup u.hup [*moan ~ ~])) :+ (pi-mope mot mon.hup) - ?~ lax out.hup - =+ hag=(~(get by out.hup) u.lax) + ?~ lax out.hup + =+ hag=(~(get by out.hup) u.lax) (~(put by out.hup) u.lax ?~(hag 1 +(u.hag))) - ?~ nax inn.hup - =+ hag=(~(get by inn.hup) u.nax) + ?~ nax inn.hup + =+ hag=(~(get by inn.hup) u.nax) (~(put by inn.hup) u.nax ?~(hag 1 +(u.hag))) == ++ pi-mope :: add sample @@ -9706,7 +9704,7 @@ == :: ++ wire path :: event pretext ::::: hacks and tools -++ slod +++ slod |= sed=slad ^- slut |= raw=* @@ -9771,7 +9769,7 @@ | [%| [%cell typ.vil p.p.hil] p.hil] == :: - ++ slur :: call gate on + ++ slur :: call gate on |= [gat=vase hil=mill] ^- (unit (pair vase worm)) =+ sam=(slot 6 gat) @@ -9793,7 +9791,7 @@ :: ++ slur-pro :: profiling slur ~/ %slur-pro - |= [lal=@tas gat=vase hil=mill] + |= [lal=@tas gat=vase hil=mill] ?+ lal (slur-z gat hil) %a (slur-a gat hil) %b (slur-b gat hil) @@ -9863,7 +9861,7 @@ [%sick p=[p=@tas q=*]] %- (bond |.([%| p.p.q.caq])) =^ yav p.sew (~(spot wa p.sew) 3 caq) - %+ bind (song yav) + %+ bind (song yav) |= [hil=mill vel=worm] [%& [%sick hil] vel] :: @@ -9935,10 +9933,10 @@ (slid [%& duc.vil hen] (slix hil)) ~| [%swim-take-vane lal] =^ vax p.sew (~(slap wa p.sew) rig [%cnzy %take]) - %^ slur-pro lal vax + %^ slur-pro lal vax ;: slid - [%& pah.vil u.pux] - [%& duc.vil hen] + [%& pah.vil u.pux] + [%& duc.vil hen] (slix (slid [%& [%cube org %atom %tas] org] hil)) == ?~ pru @@ -10043,7 +10041,7 @@ :: =. lac |(lac ?=(?(%g %f) p.gum)) :: =. lac &(lac !?=(%b p.gum)) %+ fire - p.gum + p.gum ?- -.r.gum %pass ~? &(!lac !=(%$ p.gum)) From 2aa655fa3d6c1ae1cfba03621adc36cf99e13e39 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Fri, 12 Jun 2015 14:24:14 -0400 Subject: [PATCH 05/34] more whitespace cleanup --- base/arvo/clay.hoon | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index 751aa9508..b4e80be73 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -226,7 +226,7 @@ ?. ?=(%path p.pax) (mule |.(`~`~|([%expected-path got=p.pax] !!))) $(tay t.tay, can (~(put by can) ((hard path) q.q.pax) q.i.tay)) - + :: ++ balk :: read and send |= [hen=duct cay=(unit (each cage lobe)) mun=mood] ^+ +> @@ -1597,7 +1597,7 @@ (rewind yon) |= a=(unit ,_+>.$) ^- (unit (each cage lobe)) - ?~ a + ?~ a ~ `(unit (each cage lobe))`(bind (read:u.a mun) (cury same %&)) :: @@ -2033,7 +2033,6 @@ !! [%pact (lobe-to-silk pax u.-) [%done ~ u.cay]] == - :: ++ built |= res=gage @@ -2274,7 +2273,7 @@ %+ roll (~(tap in unk)) |= [yak=yaki qar=(map tako (set tako))] (~(put by qar) r.yak (reachable-takos r.yak)) - |- + |- ^- (set yaki) ?~ unk gud =+ bun=(~(del in `(set yaki)`unk) n.unk) @@ -2394,16 +2393,16 @@ abet:une :: ~& :+ %infoed :: len=(lent mos) - :: %+ turn mos + :: %+ turn mos :: |= move :: ^- [duct (unit path) term term] :: :- p :: ^- [(unit path) term term] :: ?+ -.q [~ *term *term] - :: %pass + :: %pass :: ^- [(unit path) term term] :: [`p.q [- +<]:q.q] - :: %give + :: %give :: ^- [(unit path) term term] :: [~ %give -.p.q] :: == @@ -2574,7 +2573,7 @@ [(weld -.sip -.woo) ..^$(ruf abet:[+.sip])] ?: ?=([%blab care @ @ *] tea) ?> ?=(%made +<.q.hin) - ?. ?=(%& -.q.q.hin) + ?. ?=(%& -.q.q.hin) ~| %blab-fail ~> %mean.|.(?+(-.q.q.hin -.q.q.hin %| p.q.q.hin)) !! :: interpolate ford fail into stack trace From 894468a70ddc7cfadb7c33dd7ea3b29415a8e142 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Fri, 12 Jun 2015 20:48:16 -0400 Subject: [PATCH 06/34] fixed more problems --- base/arvo/clay.hoon | 92 +++++++++++++++++++++++++-------------------- 1 file changed, 51 insertions(+), 41 deletions(-) diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index b4e80be73..a867d3614 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -307,13 +307,13 @@ %_ +>.$ tag :_ tag - :* hen %pass [%ergoing (scot %p who) syd pot ~] %f + :* hen %pass [%ergoing (scot %p who) syd ~] %f %exec who [who syd %da now] ~ %tabl ^- (list (pair silk silk)) %+ turn `(list path)`mus |= a=path ^- (pair silk silk) - :- [%done ~ %path !>((slag (lent pax) a))] + :- [%done ~ %path !>(a)] :+ %cast %mime =+ (need (need (read-x:ze let.dom a))) ?: ?=(%& -<) @@ -755,39 +755,40 @@ =+ mus=(must-ergo (turn sim head)) ?: =(~ mus) +>.$(dok ~) - =+ ^= ceq - |= a=miso - ?| ?=(%del -.a) - &(?=(%ins -.a) ?=(%mime -.+.a)) - &(?=(%mut -.a) ?=(%mime -.+.a)) - == + =+ ^- sum=(set path) + =+ (turn (~(tap by mus)) (corl tail tail)) + %+ roll - + |= [pak=(set path) acc=(set path)] + (~(uni in acc) pak) + =+ can=(mo sim) :: ~& %forming-ergo :: =- ~& %formed-ergo - %_ +>.$ dok ~ - :: tag - :: :_ tag - :: :* hen %pass [%ergoing (scot %p who) syd ~] %f - :: %exec who [who syd %da now] ~ %tabl - :: ^- (list (pair silk silk)) - :: %+ turn sim - :: |= [a=path b=misu] - :: ^- (pair silk silk) - :: :- [%done ~ %path !>(a)] - :: ?: ?=(%del -.b) - :: [%done ~ %null !>(~)] - :: =+ (~(get by mim.u.dok) a) - :: ?^ - [%done ~ %mime !>(u.-)] - :: :+ %cast %mime - :: =+ (need (need (read-x:ze let.dom a))) - :: ?: ?=(%& -<) - :: [%done ~ p.-] - :: (lobe-to-silk:ze a p.-) - :: == + tag + :_ tag + :* hen %pass [%ergoing (scot %p who) syd ~] %f + %exec who [who syd %da now] ~ %tabl + ^- (list (pair silk silk)) + %+ turn (~(tap in sum)) + |= a=path + ^- (pair silk silk) + :- [%done ~ %path !>(a)] + =+ b=(~(got by can) a) + ?: ?=(%del -.b) + [%done ~ %null !>(~)] + =+ (~(get by mim.u.dok) a) + ?^ - [%done ~ %mime !>(u.-)] + :+ %cast %mime + =+ (need (need (read-x:ze let.dom a))) + ?: ?=(%& -<) + [%done ~ p.-] + (lobe-to-silk:ze a p.-) + == == :: ++ take-ergo - |= [pot=term res=gage] + |= res=gage ^+ +> ?: ?=(%| -.res) %_ +>.$ @@ -795,19 +796,26 @@ [[hen %note '!' %rose [" " "" ""] leaf/"clay ergo failed" p.res] yel] == ?~ hez ~|(%no-sync-duct !!) + =+ ^- can=(map path (unit mime)) + %- mo ^- mode + %+ turn (gage-to-cages res) + |= [pax=cage mim=cage] + ?. ?=(%path p.pax) + ~|(%ergo-bad-path-mark !!) + :- ((hard path) q.q.pax) + ?. ?=(%mime p.mim) + ~ + `((hard mime) q.q.mim) + =+ mus=(must-ergo (turn (~(tap by can)) head)) %= +>.$ reg - :_ reg + %- welp :_ reg + %+ turn (~(tap by mus)) + |= [pot=term len=@ud pak=(set path)] :* u.hez %ergo pot - ^- mode - %+ turn (gage-to-cages res) - |= [pax=cage mim=cage] - ?. ?=(%path p.pax) - ~|(%ergo-bad-path-mark !!) - :- ((hard path) q.q.pax) - ?. ?=(%mime p.mim) - ~ - `((hard mime) q.q.mim) + %+ turn (~(tap in pak)) + |= pax=path + [(slag len pax) (~(got by can) pax)] == == :: @@ -1287,6 +1295,9 @@ %+ ~(put by bar) pax (make-delta p.mys [(lobe-to-mark u.har) u.har] [p q.q]:q.mys) :: XX check vase !evil + :: XX of course that's a problem, p.u.ber isn't in rang since it + :: was just cretated. We shouldn't be sending multiple + :: diffs %+ ~(put by bar) pax (make-delta p.mys [(lobe-to-mark p.u.ber) p.u.ber] [p q.q]:q.mys) :: XX check vase !evil @@ -2658,14 +2669,13 @@ [mos ..^$] :: %ergoing - ?> ?=([@ @ @ ~] t.tea) + ?> ?=([@ @ ~] t.tea) =+ who=(slav %p i.t.tea) =+ syd=(slav %tas i.t.t.tea) - =+ pot=(slav %tas i.t.t.t.tea) =^ mos ruf =+ une=(un who now hen ruf) =+ ^= zat - (take-ergo:(di:une syd) pot q.q.hin) + (take-ergo:(di:une syd) q.q.hin) =+ zot=abet.zat [-.zot abet:(pish:une syd +.zot ran.zat)] [mos ..^$] From b1e59ec8b33e00e915ca79acc7e9cd798267ef35 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Tue, 16 Jun 2015 17:34:21 -0400 Subject: [PATCH 07/34] ergo merges --- base/arvo/clay.hoon | 32 ++++++++++++++++++++++++-------- 1 file changed, 24 insertions(+), 8 deletions(-) diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index a867d3614..99dbb87da 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -293,8 +293,6 @@ =- ?~(- ~ `[nam (lent s.bem) (sa -)]) %+ skim can |= pax=path - %- ~(any by mon) - |= bem=beam &(=(p.bem for) =(q.bem syd) =((flop s.bem) (scag (lent s.bem) pax))) :: ++ mont @@ -807,6 +805,7 @@ ~ `((hard mime) q.q.mim) =+ mus=(must-ergo (turn (~(tap by can)) head)) + ~& [%mus mus] %= +>.$ reg %- welp :_ reg @@ -2186,16 +2185,23 @@ ++ ergo ^+ . =- %_(+ tag [- tag]) + =+ ^- sum=(set path) + =+ (must-ergo (turn (~(tap by erg.dat)) head)) + =+ (turn (~(tap by -)) (corl tail tail)) + %+ roll - + |= [pak=(set path) acc=(set path)] + (~(uni in acc) pak) =+ zez=ze(ank.dom ank.dat) =+ val=?:(?=(%init gem.dat) ali bob) :* hen %pass [%merge (scot %p p.bob) q.bob (scot %p p.ali) q.ali %ergo ~] %f %exec p.bob [p.val q.val cas.dat] ~ %tabl ^- (list (pair silk silk)) - %+ turn (~(tap by erg.dat)) - |= [a=path b=?] + %+ turn (~(tap in sum)) + |= a=path ^- (pair silk silk) :- [%done ~ %path !>(a)] + =+ b=(~(got by erg.dat) a) ?. b [%done ~ %null !>(~)] :+ %cast %mime @@ -2208,23 +2214,33 @@ =+ tay=(gage-to-tage res) ?: ?=(%| -.tay) (error:he %ergo-bad-made leaf/"merge ergo failed" p.tay) - =+ =| can=mode + =+ =| nac=mode |- ^- tan=$&(mode [p=term q=tang]) - ?~ p.tay can + ?~ p.tay nac =* pax p.i.p.tay ?. ?=(%path p.pax) [%ergo >[%expected-path got=p.pax]< ~] =* mim q.i.p.tay =+ mit=?.(?=(%mime p.mim) ~ `((hard mime) q.q.mim)) - $(p.tay t.p.tay, can :_(can [((hard path) q.q.pax) mit])) + $(p.tay t.p.tay, nac :_(nac [((hard path) q.q.pax) mit])) ?: ?=([@ *] tan) (error:he tan) + =+ `can=(map path (unit mime))`(mo tan) ?~ hez (error:he %ergo-no-hez ~) ?: ?=(%| -.gon.dat) +>.$ %_ +>.$ don %| - :: reg [[u.hez %ergo who syd let.dom tan] reg] + reg + =+ mus=(must-ergo (turn (~(tap by erg.dat)) head)) + %- welp :_ reg + %+ turn (~(tap by mus)) + |= [pot=term len=@ud pak=(set path)] + :* u.hez %ergo pot + %+ turn (~(tap in pak)) + |= pax=path + [(slag len pax) (~(got by can) pax)] + == == :: ++ he From 98c08a2b39503f6d81fa9e861cbdf026634273da Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Wed, 17 Jun 2015 15:06:40 -0400 Subject: [PATCH 08/34] persist mount points across pier reboots --- base/arvo/clay.hoon | 4 ++++ base/arvo/hoon.hoon | 1 + base/arvo/zuse.hoon | 4 +++- 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index e6837933a..6ae49deaa 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -2408,6 +2408,10 @@ == ^- [p=(list move) q=_..^$] ?- -.q.hic + %boat + :_ ..^$ + [hen %give %hill (turn (~(tap by mon.ruf)) head)]~ + :: %init :_ ..^$(fat.ruf (~(put by fat.ruf) p.q.hic [hen ~])) =+ [bos=(sein p.q.hic) can=(clan p.q.hic)] diff --git a/base/arvo/hoon.hoon b/base/arvo/hoon.hoon index e04017688..d992e9e40 100644 --- a/base/arvo/hoon.hoon +++ b/base/arvo/hoon.hoon @@ -9988,6 +9988,7 @@ |= hap=path ^- @tas ?+ hap !! [@ %ames *] %a + [@ %boat *] %c [@ %newt *] %a [@ %sync *] %c [@ %term *] %d diff --git a/base/arvo/zuse.hoon b/base/arvo/zuse.hoon index 9391c36b6..75e3030c1 100644 --- a/base/arvo/zuse.hoon +++ b/base/arvo/zuse.hoon @@ -2330,13 +2330,15 @@ :::: :: ++ gift-clay :: out result <-$ $% [%ergo p=@tas q=mode] :: version update + [%hill p=(list term)] :: mount points [%mass p=mass] :: memory usage [%mere p=(each (set path) (pair term tang))] :: merge result [%note p=@tD q=tank] :: debug message [%writ p=riot] :: response == :: ++ kiss-clay :: in request ->$ - $% [%info p=@p q=@tas r=nori] :: internal edit + $% [%boat ~] :: pier rebooted + [%info p=@p q=@tas r=nori] :: internal edit [%init p=@p] :: report install [%into p=@tas q=mode] :: external edit [%merg p=@p q=@tas r=@p s=@tas t=germ] :: merge desks From b844d1b8927508bbc06f45e80c12e50528ac2ab9 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Wed, 17 Jun 2015 19:44:00 -0400 Subject: [PATCH 09/34] add :+unmount --- base/ape/hood.hoon | 1 + base/arvo/clay.hoon | 21 +++++++++++++++++++++ base/arvo/gall.hoon | 1 + base/arvo/zuse.hoon | 4 +++- base/lib/kiln.hoon | 15 ++++++++++++++- 5 files changed, 40 insertions(+), 2 deletions(-) diff --git a/base/ape/hood.hoon b/base/ape/hood.hoon index 1b4c05e21..890a9d1b2 100644 --- a/base/ape/hood.hoon +++ b/base/ape/hood.hoon @@ -75,6 +75,7 @@ ++ poke-hood-link (wrap poke-link):from-drum ++ poke-hood-mass (wrap poke-mass):from-helm ++ poke-hood-mount (wrap poke-mount):from-kiln +++ poke-hood-unmount (wrap poke-unmount):from-kiln ++ poke-hood-sync (wrap poke-sync):from-kiln ++ poke-hood-unsync (wrap poke-unsync):from-kiln ++ poke-hood-verb (wrap poke-verb):from-helm diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index 6ae49deaa..1e543f50c 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -2511,6 +2511,27 @@ =+ wao=(mont:wex p.q.hic s.q.hic) =+ woo=abet:wao [-.woo ..^$(ruf abet:(pish:une r.q.hic +.woo ran.wao))] + :: + %ogre + ?~ hez.ruf + ~& %no-sync-duct + [~ ..^$] + ?@ p.q.hic + ?. (~(has by mon.ruf) p.q.hic) + ~& [%not-mounted p.q.hic] + [~ ..^$] + :_ ..^$(mon.ruf (~(del by mon.ruf) p.q.hic)) + [u.hez.ruf %give %ogre p.q.hic]~ + :_ %_ ..^$ + mon.ruf + %- mo + %+ skip (~(tap by mon.ruf)) + (corl (cury test p.q.hic) tail) + == + %+ turn + (skim (~(tap by mon.ruf)) (corl (cury test p.q.hic) tail)) + |= [pot=term bem=beam] + [u.hez.ruf %give %ogre pot] :: %warp =^ mos ruf diff --git a/base/arvo/gall.hoon b/base/arvo/gall.hoon index b97e3455e..bb1954f65 100644 --- a/base/arvo/gall.hoon +++ b/base/arvo/gall.hoon @@ -1108,6 +1108,7 @@ %info `%c %merg `%c %mont `%c + %ogre `%c %them `%e %wait `%t %want `%a diff --git a/base/arvo/zuse.hoon b/base/arvo/zuse.hoon index 75e3030c1..4c58a416e 100644 --- a/base/arvo/zuse.hoon +++ b/base/arvo/zuse.hoon @@ -2330,10 +2330,11 @@ :::: :: ++ gift-clay :: out result <-$ $% [%ergo p=@tas q=mode] :: version update - [%hill p=(list term)] :: mount points + [%hill p=(list ,@tas)] :: mount points [%mass p=mass] :: memory usage [%mere p=(each (set path) (pair term tang))] :: merge result [%note p=@tD q=tank] :: debug message + [%ogre p=@tas] :: delete mount point [%writ p=riot] :: response == :: ++ kiss-clay :: in request ->$ @@ -2343,6 +2344,7 @@ [%into p=@tas q=mode] :: external edit [%merg p=@p q=@tas r=@p s=@tas t=germ] :: merge desks [%mont p=@tas q=@p r=@tas s=path] :: mount to unix + [%ogre p=$|(@tas beam)] :: delete mount point [%wart p=sock q=@tas r=path s=*] :: network request [%warp p=sock q=riff] :: file request [%wegh ~] :: report memory diff --git a/base/lib/kiln.hoon b/base/lib/kiln.hoon index be5fe3f16..dd4b07267 100644 --- a/base/lib/kiln.hoon +++ b/base/lib/kiln.hoon @@ -25,6 +25,8 @@ $: pax=path :: pot=term :: == :: +++ hood-unmount :: + $|(term [span path]) :: ++ hood-sync :: $: syd=desk :: her=ship :: @@ -56,6 +58,7 @@ $% [%exec wire @p beak (unit silk)] :: [%info wire @p @tas nori] :: [%mont wire @tas @p @tas path] :: + [%ogre wire $|(@tas beam)] :: [%merg wire @p @tas @p @tas germ] :: [%poke wire dock pear] :: [%warp wire sock riff] :: @@ -80,10 +83,20 @@ |= hood-mount =+ bem=(tome pax) ?~ bem - =+ "can't sync bad path: {}" + =+ "can't mount bad path: {}" abet:(spam leaf/- ~) abet:(emit %mont /mount pot p.u.bem q.u.bem (flop s.u.bem)) :: + ++ poke-unmount + |= mon=hood-unmount + ?^ mon + =+ bem=(tome mon) + ?~ bem + =+ "can't unmount bad path: {}" + abet:(spam leaf/- ~) + abet:(emit %ogre /unmount-beam [[p q %ud 0] s]:u.bem) + abet:(emit %ogre /unmount-point mon) + :: ++ poke-sync :: |= hos=hood-sync ?: (~(has by syn) hos) From 6db7796803860b2997a221cea148e48f3c818044 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Thu, 18 Jun 2015 15:56:11 -0400 Subject: [PATCH 10/34] bug fixes --- base/arvo/clay.hoon | 27 ++++++++++++++++++++++++--- base/arvo/zuse.hoon | 2 +- 2 files changed, 25 insertions(+), 4 deletions(-) diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index 1e543f50c..3226a4705 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -2463,7 +2463,7 @@ =+ rom=(~(got by fat.ruf) p.bem) =+ dos=(~(got by dos.rom) q.bem) ?: =(0 let.dom.dos) - =+ cos=(mode-to-soba ~ s.bem q.q.hic) + =+ cos=(mode-to-soba ~ s.bem q.q.hic r.q.hic) =+ ^- [one=(list ,[path miso]) two=(list ,[path miso])] %+ skid q.cos |= [a=path b=miso] @@ -2477,7 +2477,7 @@ [hen %pass /two %c %info p.bem q.bem %& p.cos two] == =+ yak=(~(got by hut.ran.ruf) (~(got by hit.dom.dos) let.dom.dos)) - =+ cos=(mode-to-soba q.yak (flop s.bem) q.q.hic) + =+ cos=(mode-to-soba q.yak (flop s.bem) q.q.hic r.q.hic) [hen %pass / %c %info p.bem q.bem %& cos]~ :: %merg :: direct state up @@ -2824,9 +2824,30 @@ [p q [p q.q]:r] :: ++ mode-to-soba - |= [hat=(map path lobe) pax=path mod=mode] + |= [hat=(map path lobe) pax=path all=? mod=mode] ^- soba :- *cart + %+ welp + ^- (list (pair path miso)) + ?. all + ~ + =+ mad=(mo mod) + =+ len=(lent pax) + =+ ^- descendants=(list path) + %+ turn + %+ skim (~(tap by hat)) + |= [paf=path lob=lobe] + =(pax (scag len paf)) + |= [paf=path lob=lobe] + (slag len paf) + %+ murn + descendants + |= pat=path + ^- (unit (pair path ,[%del ~])) + ?: (~(has by mad) pat) + ~ + `[(weld pax pat) %del ~] + ^- (list (pair path miso)) %+ murn mod |= [pat=path mim=(unit mime)] ^- (unit (pair path miso)) diff --git a/base/arvo/zuse.hoon b/base/arvo/zuse.hoon index 4c58a416e..3c1ef0f5d 100644 --- a/base/arvo/zuse.hoon +++ b/base/arvo/zuse.hoon @@ -2341,7 +2341,7 @@ $% [%boat ~] :: pier rebooted [%info p=@p q=@tas r=nori] :: internal edit [%init p=@p] :: report install - [%into p=@tas q=mode] :: external edit + [%into p=@tas q=? r=mode] :: external edit [%merg p=@p q=@tas r=@p s=@tas t=germ] :: merge desks [%mont p=@tas q=@p r=@tas s=path] :: mount to unix [%ogre p=$|(@tas beam)] :: delete mount point From 4b1ef23b16851ce30e561a7351efb3953ab59083 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Thu, 18 Jun 2015 18:06:07 -0400 Subject: [PATCH 11/34] forgot to commit {,un}mount.hoon --- base/cat/hood/mount.hoon | 12 ++++++++++++ base/cat/hood/unmount.hoon | 12 ++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 base/cat/hood/mount.hoon create mode 100644 base/cat/hood/unmount.hoon diff --git a/base/cat/hood/mount.hoon b/base/cat/hood/mount.hoon new file mode 100644 index 000000000..b3dc3c7b5 --- /dev/null +++ b/base/cat/hood/mount.hoon @@ -0,0 +1,12 @@ +:: +:::: /hoon/mount/hood/cat + :: +/? 314 +:: +:::: + !: +|= $: [now=@da eny=@uvI bec=beak] + [arg=[pax=path pot=@tas ~] ~] + == +:- %hood-mount +[pax pot]:arg diff --git a/base/cat/hood/unmount.hoon b/base/cat/hood/unmount.hoon new file mode 100644 index 000000000..9cec0679c --- /dev/null +++ b/base/cat/hood/unmount.hoon @@ -0,0 +1,12 @@ +:: +:::: /hoon/mount/hood/cat + :: +/? 314 +:: +:::: + !: +|= $: [now=@da eny=@uvI bec=beak] + [[mon=$|(term [span path]) ~] ~] + == +:- %hood-unmount +mon From 62fab9fa946b7b8a9b47ee635839a42dd276ffb6 Mon Sep 17 00:00:00 2001 From: "C. Guy Yarvin" Date: Fri, 19 Jun 2015 10:22:41 -0700 Subject: [PATCH 12/34] Report stranger peers. --- base/ape/dojo/core.hook | 2 +- base/ape/talk/core.hook | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/base/ape/dojo/core.hook b/base/ape/dojo/core.hook index 7ce98b071..c55e27352 100644 --- a/base/ape/dojo/core.hook +++ b/base/ape/dojo/core.hook @@ -718,7 +718,7 @@ ++ peer-sole |= [from pax=path] ^- (quip move +>) - ~? !=(src our.hid) [%dojo-peer-stranger ost src pax] + ~? !=(src our.hid) [%peer-dojo-stranger src] :: ?> =(src our.hid) ?< (~(has by hoc) ost) ?> =(~ pax) diff --git a/base/ape/talk/core.hook b/base/ape/talk/core.hook index b8fb13762..7de520c3b 100644 --- a/base/ape/talk/core.hook +++ b/base/ape/talk/core.hook @@ -1663,6 +1663,7 @@ ++ peer :: accept subscription |= [from pax=path] ^- [(list move) _+>] + ~? !=(src our.hid) [%peer-talk-stranger src] :: ~& [%talk-peer src ost pax] ?: ?=([%sole *] pax) ?> =(our.hid src) From f027ab628df5418c403ad73204c074bdf2a549b4 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Fri, 19 Jun 2015 15:26:11 -0400 Subject: [PATCH 13/34] remove printfs --- base/arvo/clay.hoon | 1 - 1 file changed, 1 deletion(-) diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index 3226a4705..12acd7e6b 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -805,7 +805,6 @@ ~ `((hard mime) q.q.mim) =+ mus=(must-ergo (turn (~(tap by can)) head)) - ~& [%mus mus] %= +>.$ reg %- welp :_ reg From 72ef5c2cbda3d39ec335180fb177b52e387c84cc Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Fri, 19 Jun 2015 17:16:48 -0400 Subject: [PATCH 14/34] urb/zod/base -> urb/zod --- {base/ape => ape}/bit.hoon | 0 {base/ape => ape}/cloud.hoon | 0 {base/ape => ape}/curl.hoon | 0 {base/ape => ape}/dojo.hoon | 0 {base/ape => ape}/hood.hoon | 0 {base/ape => ape}/oct1.hoon | 0 {base/ape => ape}/oct2.hoon | 0 {base/ape => ape}/oct3.hoon | 0 {base/ape => ape}/oct4.hoon | 0 {base/ape => ape}/talk.hoon | 0 {base/ape => ape}/twif.hoon | 0 {base/ape => ape}/twit.hoon | 0 {base/arvo => arvo}/ames.hoon | 0 {base/arvo => arvo}/clay.hoon | 0 {base/arvo => arvo}/dill.hoon | 0 {base/arvo => arvo}/eyre.hoon | 0 {base/arvo => arvo}/ford.hoon | 0 {base/arvo => arvo}/gall.hoon | 0 {base/arvo => arvo}/hoon.hoon | 0 {base/arvo => arvo}/jael.hoon | 0 {base/arvo => arvo}/kahn.hoon | 0 {base/arvo => arvo}/lunt.hoon | 0 {base/arvo => arvo}/musk.hoon | 0 {base/arvo => arvo}/time.hoon | 0 {base/arvo => arvo}/zuse.hoon | 0 {base/cat => cat}/bit/act.hoon | 0 {base/cat => cat}/bit/address-contact.hoon | 0 {base/cat => cat}/bit/auth.hoon | 0 {base/cat => cat}/bit/buy.hoon | 0 {base/cat => cat}/bit/contact-address.hoon | 0 {base/cat => cat}/bit/list.hoon | 0 {base/cat => cat}/bit/sell.hoon | 0 {base/cat => cat}/bit/send.hoon | 0 {base/cat => cat}/cat.hoon | 0 {base/cat => cat}/cat/pretty.hoon | 0 {base/cat => cat}/coin/keys.hoon | 0 {base/cat => cat}/curl/url.hoon | 0 {base/cat => cat}/hello.hoon | 0 {base/cat => cat}/hood/breload.hoon | 0 {base/cat => cat}/hood/cp.hoon | 0 {base/cat => cat}/hood/hi.hoon | 0 {base/cat => cat}/hood/init.hoon | 0 {base/cat => cat}/hood/invite.hoon | 0 {base/cat => cat}/hood/link.hoon | 0 {base/cat => cat}/hood/mass.hoon | 0 {base/cat => cat}/hood/merge.hoon | 0 {base/cat => cat}/hood/mount.hoon | 0 {base/cat => cat}/hood/mv.hoon | 0 {base/cat => cat}/hood/reload-desk.hoon | 0 {base/cat => cat}/hood/reload.hoon | 0 {base/cat => cat}/hood/reset.hoon | 0 {base/cat => cat}/hood/rm.hoon | 0 {base/cat => cat}/hood/schedule.hoon | 0 {base/cat => cat}/hood/start.hoon | 0 {base/cat => cat}/hood/sync.hoon | 0 {base/cat => cat}/hood/unix.hoon | 0 {base/cat => cat}/hood/unmount.hoon | 0 {base/cat => cat}/hood/verb.hoon | 0 {base/cat => cat}/ls.hoon | 0 {base/cat => cat}/ls/subdir.hoon | 0 {base/cat => cat}/solid.hoon | 0 {base/cat => cat}/ticket.hoon | 0 {base/cat => cat}/tree.hoon | 0 {base/cat => cat}/twit/as.hoon | 0 {base/cat => cat}/twit/tweet.hoon | 0 {base/cat => cat}/twit/twitter-feed.hoon | 0 {base/dog => dog}/hood/begin.hoon | 0 {base/dog => dog}/twit/auth.hoon | 0 {base/dog => dog}/twit/auth/hoontap-keys.txt | 0 base/elem.hook => elem.hook | 0 {base/lib => lib}/base.css | 0 {base/lib => lib}/drum.hoon | 0 {base/lib => lib}/helm.hoon | 0 {base/lib => lib}/http.hoon | 0 {base/lib => lib}/kiln.hoon | 0 {base/lib => lib}/oct1.hoon | 0 {base/lib => lib}/oct2.hoon | 0 {base/lib => lib}/oct3.hoon | 0 {base/lib => lib}/oct4.hoon | 0 {base/lib => lib}/react.hoon | 0 {base/lib => lib}/sh-utils.hoon | 0 {base/lib => lib}/shu.hoon | 0 {base/lib => lib}/sole.hoon | 0 {base/lib => lib}/syntax/codemirror.css | 0 {base/lib => lib}/syntax/hoon.js | 0 {base/lib => lib}/talk.hoon | 0 {base/lib => lib}/twitter.hoon | 0 {base/lib => lib}/urb.js | 0 {base/mar => mar}/acto-game.hoon | 0 {base/mar => mar}/atom.hoon | 0 {base/mar => mar}/bit-accounts.hoon | 0 {base/mar => mar}/bit-addr-made.hoon | 0 {base/mar => mar}/bit-addr-request.hoon | 0 {base/mar => mar}/bit-api-call.hoon | 0 {base/mar => mar}/bit-get-token.hoon | 0 {base/mar => mar}/bit-transaction.hoon | 0 {base/mar => mar}/client-secret.hoon | 0 {base/mar => mar}/cloud-auth.hoon | 0 {base/mar => mar}/cloud-auth/door.hook | 0 {base/mar => mar}/cloud-secret.hoon | 0 {base/mar => mar}/cloud-secret/door.hook | 0 {base/mar => mar}/coffee.hoon | 0 {base/mar => mar}/css.hoon | 0 {base/mar => mar}/dill-belt.hoon | 0 {base/mar => mar}/dill-blit.hoon | 0 {base/mar => mar}/down.hoon | 0 {base/mar => mar}/down/html5-entities.json | 0 {base/mar => mar}/down/parse.hoon | 0 {base/mar => mar}/down/rend.hoon | 0 {base/mar => mar}/elem.hoon | 0 {base/mar => mar}/eot.hoon | 0 {base/mar => mar}/helm-hi.hoon | 0 {base/mar => mar}/hiss.hoon | 0 {base/mar => mar}/hook.hoon | 0 {base/mar => mar}/hoon.hoon | 0 {base/mar => mar}/html.hoon | 0 {base/mar => mar}/httpreq.hoon | 0 {base/mar => mar}/httr.hoon | 0 {base/mar => mar}/hymn.hoon | 0 {base/mar => mar}/js.hoon | 0 {base/mar => mar}/json.hoon | 0 {base/mar => mar}/markdown.hoon | 0 {base/mar => mar}/md.hoon | 0 {base/mar => mar}/mess.hoon | 0 {base/mar => mar}/mime.hoon | 0 {base/mar => mar}/oauth-tokens.hoon | 0 {base/mar => mar}/oauth2-code.hoon | 0 {base/mar => mar}/oct3-move.hoon | 0 {base/mar => mar}/oct3-update.hoon | 0 {base/mar => mar}/oct4-move.hoon | 0 {base/mar => mar}/oct4-update.hoon | 0 {base/mar => mar}/otf.hoon | 0 {base/mar => mar}/purl.hoon | 0 {base/mar => mar}/react-snip.hoon | 0 {base/mar => mar}/react.hoon | 0 {base/mar => mar}/sched.hoon | 0 {base/mar => mar}/snip.hoon | 0 {base/mar => mar}/sole-action.hoon | 0 {base/mar => mar}/sole-effect.hoon | 0 {base/mar => mar}/styl.hoon | 0 {base/mar => mar}/talk-command.hoon | 0 {base/mar => mar}/talk-report.hoon | 0 {base/mar => mar}/tang.hoon | 0 {base/mar => mar}/txt-diff.hoon | 0 {base/mar => mar}/txt.hoon | 0 {base/mar => mar}/urb.hoon | 0 {base/mar => mar}/user.hoon | 0 {base/mar => mar}/users.hoon | 0 {base/mar => mar}/will.hoon | 0 {base/mar => mar}/woff.hoon | 0 {base/pub => pub}/bit/fab/hymn.hook | 0 {base/pub => pub}/cloud/fab/hymn.hook | 0 {base/pub => pub}/cloud/src/main.css | 0 {base/pub => pub}/cloud/src/main.js | 0 {base/pub => pub}/coin/fab/hymn.hook | 0 {base/pub => pub}/doc.md | 0 {base/pub => pub}/doc/arvo.md | 0 {base/pub => pub}/doc/arvo/ames.md | 0 {base/pub => pub}/doc/arvo/ames/commentary.md | 0 {base/pub => pub}/doc/arvo/arvo.md | 0 {base/pub => pub}/doc/arvo/arvo/commentary.md | 0 {base/pub => pub}/doc/arvo/clay.md | 0 {base/pub => pub}/doc/arvo/clay/commentary.md | 0 {base/pub => pub}/doc/arvo/dill.md | 0 {base/pub => pub}/doc/arvo/dill/commentary.md | 0 {base/pub => pub}/doc/arvo/eyre.md | 0 {base/pub => pub}/doc/arvo/eyre/commentary.md | 0 {base/pub => pub}/doc/arvo/ford.md | 0 {base/pub => pub}/doc/arvo/ford/commentary.md | 0 {base/pub => pub}/doc/arvo/gall.md | 0 {base/pub => pub}/doc/arvo/gall/gall.md | 0 {base/pub => pub}/doc/arvo/ives.md | 0 {base/pub => pub}/doc/arvo/ives/ives.md | 0 {base/pub => pub}/doc/arvo/jael.md | 0 {base/pub => pub}/doc/arvo/jael/jael.md | 0 {base/pub => pub}/doc/arvo/kahn.md | 0 {base/pub => pub}/doc/arvo/kahn/kahn.md | 0 {base/pub => pub}/doc/arvo/lunt.md | 0 {base/pub => pub}/doc/arvo/lunt/lunt.md | 0 {base/pub => pub}/doc/arvo/time.md | 0 {base/pub => pub}/doc/arvo/util.md | 0 {base/pub => pub}/doc/guide.md | 0 {base/pub => pub}/doc/guide/a-ford.md | 0 {base/pub => pub}/doc/guide/b-cli.md | 0 {base/pub => pub}/doc/guide/c-gall.md | 0 {base/pub => pub}/doc/guide/d-app.md | 0 {base/pub => pub}/doc/guide/e-dev.md | 0 {base/pub => pub}/doc/hoon.md | 0 {base/pub => pub}/doc/hoon/library.md | 0 {base/pub => pub}/doc/hoon/library/0.md | 0 {base/pub => pub}/doc/hoon/library/1.md | 0 {base/pub => pub}/doc/hoon/library/2a.md | 0 {base/pub => pub}/doc/hoon/library/2b.md | 0 {base/pub => pub}/doc/hoon/library/2c.md | 0 {base/pub => pub}/doc/hoon/library/2da.md | 0 {base/pub => pub}/doc/hoon/library/2db.md | 0 {base/pub => pub}/doc/hoon/library/2dc.md | 0 {base/pub => pub}/doc/hoon/library/2dd.md | 0 {base/pub => pub}/doc/hoon/library/2ea.md | 0 {base/pub => pub}/doc/hoon/library/2eb.md | 0 {base/pub => pub}/doc/hoon/library/2ec.md | 0 {base/pub => pub}/doc/hoon/library/2ed.md | 0 {base/pub => pub}/doc/hoon/library/2ee.md | 0 {base/pub => pub}/doc/hoon/library/2ef.md | 0 {base/pub => pub}/doc/hoon/library/2eg.md | 0 {base/pub => pub}/doc/hoon/library/2eh.md | 0 {base/pub => pub}/doc/hoon/library/2ei.md | 0 {base/pub => pub}/doc/hoon/library/2ej.md | 0 {base/pub => pub}/doc/hoon/library/2ek.md | 0 {base/pub => pub}/doc/hoon/library/2el.md | 0 {base/pub => pub}/doc/hoon/library/2em.md | 0 {base/pub => pub}/doc/hoon/library/2en.md | 0 {base/pub => pub}/doc/hoon/library/2eo.md | 0 {base/pub => pub}/doc/hoon/library/2ep.md | 0 {base/pub => pub}/doc/hoon/library/2ew.md | 0 {base/pub => pub}/doc/hoon/library/2ex.md | 0 {base/pub => pub}/doc/hoon/library/2ey.md | 0 {base/pub => pub}/doc/hoon/library/2ez.md | 0 {base/pub => pub}/doc/hoon/library/3ba.md | 0 {base/pub => pub}/doc/hoon/library/3bb.md | 0 {base/pub => pub}/doc/hoon/library/3bc.md | 0 {base/pub => pub}/doc/hoon/library/3bd.md | 0 {base/pub => pub}/doc/hoon/library/3be.md | 0 {base/pub => pub}/doc/hoon/library/3bf.md | 0 {base/pub => pub}/doc/hoon/library/3bg.md | 0 {base/pub => pub}/doc/hoon/library/3bh.md | 0 {base/pub => pub}/doc/hoon/library/3bi.md | 0 {base/pub => pub}/doc/hoon/reference.md | 0 {base/pub => pub}/doc/hoon/reference/odors.md | 0 {base/pub => pub}/doc/hoon/runes.md | 0 {base/pub => pub}/doc/hoon/runes/bc.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bcbr.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bccb.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bccl.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bccm.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bccn.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bckt.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bcls.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bcpm.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bcpt.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bctr.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bcts.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bcwt.md | 0 {base/pub => pub}/doc/hoon/runes/bc/bczp.md | 0 {base/pub => pub}/doc/hoon/runes/br.md | 0 {base/pub => pub}/doc/hoon/runes/br/brcb.md | 0 {base/pub => pub}/doc/hoon/runes/br/brcn.md | 0 {base/pub => pub}/doc/hoon/runes/br/brdt.md | 0 {base/pub => pub}/doc/hoon/runes/br/brfs.md | 0 {base/pub => pub}/doc/hoon/runes/br/brhp.md | 0 {base/pub => pub}/doc/hoon/runes/br/brkt.md | 0 {base/pub => pub}/doc/hoon/runes/br/brls.md | 0 {base/pub => pub}/doc/hoon/runes/br/brtr.md | 0 {base/pub => pub}/doc/hoon/runes/br/brts.md | 0 {base/pub => pub}/doc/hoon/runes/br/brwt.md | 0 {base/pub => pub}/doc/hoon/runes/cl.md | 0 {base/pub => pub}/doc/hoon/runes/cl/clcb.md | 0 {base/pub => pub}/doc/hoon/runes/cl/clfs.md | 0 {base/pub => pub}/doc/hoon/runes/cl/clhp.md | 0 {base/pub => pub}/doc/hoon/runes/cl/clkt.md | 0 {base/pub => pub}/doc/hoon/runes/cl/clls.md | 0 {base/pub => pub}/doc/hoon/runes/cl/clsg.md | 0 {base/pub => pub}/doc/hoon/runes/cl/cltr.md | 0 {base/pub => pub}/doc/hoon/runes/cn.md | 0 {base/pub => pub}/doc/hoon/runes/cn/cncb.md | 0 {base/pub => pub}/doc/hoon/runes/cn/cncl.md | 0 {base/pub => pub}/doc/hoon/runes/cn/cndt.md | 0 {base/pub => pub}/doc/hoon/runes/cn/cnhp.md | 0 {base/pub => pub}/doc/hoon/runes/cn/cnkt.md | 0 {base/pub => pub}/doc/hoon/runes/cn/cnls.md | 0 {base/pub => pub}/doc/hoon/runes/cn/cnsg.md | 0 {base/pub => pub}/doc/hoon/runes/cn/cntr.md | 0 {base/pub => pub}/doc/hoon/runes/cn/cnts.md | 0 {base/pub => pub}/doc/hoon/runes/cn/cnzy.md | 0 {base/pub => pub}/doc/hoon/runes/cn/cnzz.md | 0 {base/pub => pub}/doc/hoon/runes/dt.md | 0 {base/pub => pub}/doc/hoon/runes/dt/dtkt.md | 0 {base/pub => pub}/doc/hoon/runes/dt/dtls.md | 0 {base/pub => pub}/doc/hoon/runes/dt/dttr.md | 0 {base/pub => pub}/doc/hoon/runes/dt/dtts.md | 0 {base/pub => pub}/doc/hoon/runes/dt/dtwt.md | 0 {base/pub => pub}/doc/hoon/runes/dt/dtzy.md | 0 {base/pub => pub}/doc/hoon/runes/dt/dtzz.md | 0 {base/pub => pub}/doc/hoon/runes/hx.md | 0 {base/pub => pub}/doc/hoon/runes/hx/hxgl.md | 0 {base/pub => pub}/doc/hoon/runes/hx/hxgr.md | 0 {base/pub => pub}/doc/hoon/runes/kt.md | 0 {base/pub => pub}/doc/hoon/runes/kt/ktbr.md | 0 {base/pub => pub}/doc/hoon/runes/kt/ktdt.md | 0 {base/pub => pub}/doc/hoon/runes/kt/kthp.md | 0 {base/pub => pub}/doc/hoon/runes/kt/ktls.md | 0 {base/pub => pub}/doc/hoon/runes/kt/ktpm.md | 0 {base/pub => pub}/doc/hoon/runes/kt/ktsg.md | 0 {base/pub => pub}/doc/hoon/runes/kt/ktts.md | 0 {base/pub => pub}/doc/hoon/runes/kt/ktwt.md | 0 {base/pub => pub}/doc/hoon/runes/sg.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sgbc.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sgbr.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sgcb.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sgcn.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sgfs.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sggl.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sggr.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sgls.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sgpm.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sgts.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sgwt.md | 0 {base/pub => pub}/doc/hoon/runes/sg/sgzp.md | 0 {base/pub => pub}/doc/hoon/runes/sm.md | 0 {base/pub => pub}/doc/hoon/runes/sm/smcl.md | 0 {base/pub => pub}/doc/hoon/runes/sm/smcn.md | 0 {base/pub => pub}/doc/hoon/runes/sm/smdq.md | 0 {base/pub => pub}/doc/hoon/runes/sm/smhp.md | 0 {base/pub => pub}/doc/hoon/runes/sm/smls.md | 0 {base/pub => pub}/doc/hoon/runes/sm/smsg.md | 0 {base/pub => pub}/doc/hoon/runes/sm/smsm.md | 0 {base/pub => pub}/doc/hoon/runes/sm/smtr.md | 0 {base/pub => pub}/doc/hoon/runes/sm/smzz.md | 0 {base/pub => pub}/doc/hoon/runes/ts.md | 0 {base/pub => pub}/doc/hoon/runes/ts/tsbr.md | 0 {base/pub => pub}/doc/hoon/runes/ts/tscl.md | 0 {base/pub => pub}/doc/hoon/runes/ts/tsdt.md | 0 {base/pub => pub}/doc/hoon/runes/ts/tsgl.md | 0 {base/pub => pub}/doc/hoon/runes/ts/tsgr.md | 0 {base/pub => pub}/doc/hoon/runes/ts/tshp.md | 0 {base/pub => pub}/doc/hoon/runes/ts/tskt.md | 0 {base/pub => pub}/doc/hoon/runes/ts/tsls.md | 0 {base/pub => pub}/doc/hoon/runes/ts/tssg.md | 0 {base/pub => pub}/doc/hoon/runes/ts/tstr.md | 0 {base/pub => pub}/doc/hoon/runes/wt.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtbr.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtcl.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtdt.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtgl.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtgr.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wthp.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wthz.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtkt.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtkz.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtls.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtlz.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtpm.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtpt.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtpz.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtsg.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtsz.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtts.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wttz.md | 0 {base/pub => pub}/doc/hoon/runes/wt/wtzp.md | 0 {base/pub => pub}/doc/hoon/runes/zp.md | 0 {base/pub => pub}/doc/hoon/runes/zp/zpcb.md | 0 {base/pub => pub}/doc/hoon/runes/zp/zpcm.md | 0 {base/pub => pub}/doc/hoon/runes/zp/zpfs.md | 0 {base/pub => pub}/doc/hoon/runes/zp/zpgr.md | 0 {base/pub => pub}/doc/hoon/runes/zp/zpsm.md | 0 {base/pub => pub}/doc/hoon/runes/zp/zpts.md | 0 {base/pub => pub}/doc/hoon/runes/zp/zpwt.md | 0 {base/pub => pub}/doc/hoon/runes/zp/zpzp.md | 0 {base/pub => pub}/doc/nock.md | 0 {base/pub => pub}/doc/nock/reference.md | 0 {base/pub => pub}/doc/reference.md | 0 {base/pub => pub}/doc/reference/glossary.md | 0 {base/pub => pub}/doc/reference/u3.md | 0 {base/pub => pub}/doc/reference/vere.md | 0 {base/pub => pub}/doc/talk.md | 0 {base/pub => pub}/doc/talk/help.txt | 0 {base/pub => pub}/fab/readme.md | 0 {base/pub => pub}/match/hymn.hook | 0 {base/pub => pub}/oct3/fab/hymn.hook | 0 {base/pub => pub}/oct3/src/main.css | 0 {base/pub => pub}/oct3/src/main.js | 0 {base/pub => pub}/sole/fab/hymn.hook | 0 {base/pub => pub}/sole/src/main.coffee | 0 {base/pub => pub}/sole/src/share.coffee | 0 {base/pub => pub}/src/readme.md | 0 {base/pub => pub}/talk/fab/hymn.hook | 0 {base/pub => pub}/talk/src/css/fonts.styl | 0 {base/pub => pub}/talk/src/css/main.css | 0 {base/pub => pub}/talk/src/css/main.styl | 0 {base/pub => pub}/talk/src/css/mobile.styl | 0 {base/pub => pub}/talk/src/js/.main.js | 0 {base/pub => pub}/talk/src/js/actions/MessageActions.coffee | 0 {base/pub => pub}/talk/src/js/actions/StationActions.coffee | 0 {base/pub => pub}/talk/src/js/components/MemberComponent.coffee | 0 {base/pub => pub}/talk/src/js/components/MessagesComponent.coffee | 0 {base/pub => pub}/talk/src/js/components/StationComponent.coffee | 0 {base/pub => pub}/talk/src/js/components/StationsComponent.coffee | 0 {base/pub => pub}/talk/src/js/components/TalkComponent.coffee | 0 {base/pub => pub}/talk/src/js/components/WritingComponent.coffee | 0 {base/pub => pub}/talk/src/js/dep/director.js | 0 {base/pub => pub}/talk/src/js/dispatcher/Dispatcher.coffee | 0 {base/pub => pub}/talk/src/js/main.coffee | 0 {base/pub => pub}/talk/src/js/main.js | 0 {base/pub => pub}/talk/src/js/module.coffee | 0 {base/pub => pub}/talk/src/js/module.js | 0 {base/pub => pub}/talk/src/js/move.coffee | 0 {base/pub => pub}/talk/src/js/package.json | 0 .../pub => pub}/talk/src/js/persistence/MessagePersistence.coffee | 0 .../pub => pub}/talk/src/js/persistence/StationPersistence.coffee | 0 {base/pub => pub}/talk/src/js/stores/MessageStore.coffee | 0 {base/pub => pub}/talk/src/js/stores/StationStore.coffee | 0 {base/pub => pub}/talk/src/js/test.js | 0 {base/pub => pub}/talk/src/js/util.coffee | 0 {base/pub => pub}/test.sched | 0 {base/pub => pub}/tree/src/css/fonts.styl | 0 {base/pub => pub}/tree/src/css/main.css | 0 {base/pub => pub}/tree/src/css/main.styl | 0 {base/pub => pub}/tree/src/css/mobile.styl | 0 {base/pub => pub}/tree/src/js/actions/TreeActions.coffee | 0 {base/pub => pub}/tree/src/js/components/AnchorComponent.coffee | 0 {base/pub => pub}/tree/src/js/components/BodyComponent.coffee | 0 {base/pub => pub}/tree/src/js/components/CodeMirror.coffee | 0 {base/pub => pub}/tree/src/js/components/KidsComponent.coffee | 0 {base/pub => pub}/tree/src/js/components/ListComponent.coffee | 0 {base/pub => pub}/tree/src/js/components/LoadComponent.coffee | 0 {base/pub => pub}/tree/src/js/dispatcher/Dispatcher.coffee | 0 {base/pub => pub}/tree/src/js/main.coffee | 0 {base/pub => pub}/tree/src/js/main.js | 0 {base/pub => pub}/tree/src/js/package.json | 0 {base/pub => pub}/tree/src/js/persistence/TreePersistence.coffee | 0 {base/pub => pub}/tree/src/js/stores/TreeStore.coffee | 0 {base/pub => pub}/tree/src/readme.md | 0 {base/spec => spec}/nock/5.txt | 0 {base/sur => sur}/bang-args.hoon | 0 {base/sur => sur}/bit-api.hoon | 0 {base/sur => sur}/cp-args.hoon | 0 {base/sur => sur}/demo-args.hoon | 0 {base/sur => sur}/down.hoon | 0 {base/sur => sur}/foobar.hoon | 0 {base/sur => sur}/helm.hoon | 0 {base/sur => sur}/hi-args.hoon | 0 {base/sur => sur}/hood.hoon | 0 {base/sur => sur}/into-args.hoon | 0 {base/sur => sur}/kyev.hoon | 0 {base/sur => sur}/markdown.hoon | 0 {base/sur => sur}/mess.hoon | 0 {base/sur => sur}/mv-args.hoon | 0 {base/sur => sur}/oct1.hoon | 0 {base/sur => sur}/oct2.hoon | 0 {base/sur => sur}/oct3.hoon | 0 {base/sur => sur}/oct4.hoon | 0 {base/sur => sur}/reload-args.hoon | 0 {base/sur => sur}/rm-args.hoon | 0 {base/sur => sur}/sole.hoon | 0 {base/sur => sur}/sync-args.hoon | 0 {base/sur => sur}/talk.hoon | 0 {base/sur => sur}/term-ctrl.hoon | 0 {base/sur => sur}/term-in.hoon | 0 {base/sur => sur}/term-line.hoon | 0 {base/sur => sur}/ticket-args.hoon | 0 {base/sur => sur}/twitter.hoon | 0 {base/sur => sur}/unsync-args.hoon | 0 {base/sur => sur}/user.hoon | 0 {base/sur => sur}/users.hoon | 0 {base/sur => sur}/verb-args.hoon | 0 {base/sur => sur}/wand.hoon | 0 {base/sur => sur}/zing.hoon | 0 {base/sur => sur}/zong.hoon | 0 {base/sur => sur}/zung.hoon | 0 {base/tree => tree}/hymn.hook | 0 {base/tree => tree}/json.hook | 0 {base/tree => tree}/util.hoon | 0 {base/try => try}/readme.md | 0 463 files changed, 0 insertions(+), 0 deletions(-) rename {base/ape => ape}/bit.hoon (100%) rename {base/ape => ape}/cloud.hoon (100%) rename {base/ape => ape}/curl.hoon (100%) rename {base/ape => ape}/dojo.hoon (100%) rename {base/ape => ape}/hood.hoon (100%) rename {base/ape => ape}/oct1.hoon (100%) rename {base/ape => ape}/oct2.hoon (100%) rename {base/ape => ape}/oct3.hoon (100%) rename {base/ape => ape}/oct4.hoon (100%) rename {base/ape => ape}/talk.hoon (100%) rename {base/ape => ape}/twif.hoon (100%) rename {base/ape => ape}/twit.hoon (100%) rename {base/arvo => arvo}/ames.hoon (100%) rename {base/arvo => arvo}/clay.hoon (100%) rename {base/arvo => arvo}/dill.hoon (100%) rename {base/arvo => arvo}/eyre.hoon (100%) rename {base/arvo => arvo}/ford.hoon (100%) rename {base/arvo => arvo}/gall.hoon (100%) rename {base/arvo => arvo}/hoon.hoon (100%) rename {base/arvo => arvo}/jael.hoon (100%) rename {base/arvo => arvo}/kahn.hoon (100%) rename {base/arvo => arvo}/lunt.hoon (100%) rename {base/arvo => arvo}/musk.hoon (100%) rename {base/arvo => arvo}/time.hoon (100%) rename {base/arvo => arvo}/zuse.hoon (100%) rename {base/cat => cat}/bit/act.hoon (100%) rename {base/cat => cat}/bit/address-contact.hoon (100%) rename {base/cat => cat}/bit/auth.hoon (100%) rename {base/cat => cat}/bit/buy.hoon (100%) rename {base/cat => cat}/bit/contact-address.hoon (100%) rename {base/cat => cat}/bit/list.hoon (100%) rename {base/cat => cat}/bit/sell.hoon (100%) rename {base/cat => cat}/bit/send.hoon (100%) rename {base/cat => cat}/cat.hoon (100%) rename {base/cat => cat}/cat/pretty.hoon (100%) rename {base/cat => cat}/coin/keys.hoon (100%) rename {base/cat => cat}/curl/url.hoon (100%) rename {base/cat => cat}/hello.hoon (100%) rename {base/cat => cat}/hood/breload.hoon (100%) rename {base/cat => cat}/hood/cp.hoon (100%) rename {base/cat => cat}/hood/hi.hoon (100%) rename {base/cat => cat}/hood/init.hoon (100%) rename {base/cat => cat}/hood/invite.hoon (100%) rename {base/cat => cat}/hood/link.hoon (100%) rename {base/cat => cat}/hood/mass.hoon (100%) rename {base/cat => cat}/hood/merge.hoon (100%) rename {base/cat => cat}/hood/mount.hoon (100%) rename {base/cat => cat}/hood/mv.hoon (100%) rename {base/cat => cat}/hood/reload-desk.hoon (100%) rename {base/cat => cat}/hood/reload.hoon (100%) rename {base/cat => cat}/hood/reset.hoon (100%) rename {base/cat => cat}/hood/rm.hoon (100%) rename {base/cat => cat}/hood/schedule.hoon (100%) rename {base/cat => cat}/hood/start.hoon (100%) rename {base/cat => cat}/hood/sync.hoon (100%) rename {base/cat => cat}/hood/unix.hoon (100%) rename {base/cat => cat}/hood/unmount.hoon (100%) rename {base/cat => cat}/hood/verb.hoon (100%) rename {base/cat => cat}/ls.hoon (100%) rename {base/cat => cat}/ls/subdir.hoon (100%) rename {base/cat => cat}/solid.hoon (100%) rename {base/cat => cat}/ticket.hoon (100%) rename {base/cat => cat}/tree.hoon (100%) rename {base/cat => cat}/twit/as.hoon (100%) rename {base/cat => cat}/twit/tweet.hoon (100%) rename {base/cat => cat}/twit/twitter-feed.hoon (100%) rename {base/dog => dog}/hood/begin.hoon (100%) rename {base/dog => dog}/twit/auth.hoon (100%) rename {base/dog => dog}/twit/auth/hoontap-keys.txt (100%) rename base/elem.hook => elem.hook (100%) rename {base/lib => lib}/base.css (100%) rename {base/lib => lib}/drum.hoon (100%) rename {base/lib => lib}/helm.hoon (100%) rename {base/lib => lib}/http.hoon (100%) rename {base/lib => lib}/kiln.hoon (100%) rename {base/lib => lib}/oct1.hoon (100%) rename {base/lib => lib}/oct2.hoon (100%) rename {base/lib => lib}/oct3.hoon (100%) rename {base/lib => lib}/oct4.hoon (100%) rename {base/lib => lib}/react.hoon (100%) rename {base/lib => lib}/sh-utils.hoon (100%) rename {base/lib => lib}/shu.hoon (100%) rename {base/lib => lib}/sole.hoon (100%) rename {base/lib => lib}/syntax/codemirror.css (100%) rename {base/lib => lib}/syntax/hoon.js (100%) rename {base/lib => lib}/talk.hoon (100%) rename {base/lib => lib}/twitter.hoon (100%) rename {base/lib => lib}/urb.js (100%) rename {base/mar => mar}/acto-game.hoon (100%) rename {base/mar => mar}/atom.hoon (100%) rename {base/mar => mar}/bit-accounts.hoon (100%) rename {base/mar => mar}/bit-addr-made.hoon (100%) rename {base/mar => mar}/bit-addr-request.hoon (100%) rename {base/mar => mar}/bit-api-call.hoon (100%) rename {base/mar => mar}/bit-get-token.hoon (100%) rename {base/mar => mar}/bit-transaction.hoon (100%) rename {base/mar => mar}/client-secret.hoon (100%) rename {base/mar => mar}/cloud-auth.hoon (100%) rename {base/mar => mar}/cloud-auth/door.hook (100%) rename {base/mar => mar}/cloud-secret.hoon (100%) rename {base/mar => mar}/cloud-secret/door.hook (100%) rename {base/mar => mar}/coffee.hoon (100%) rename {base/mar => mar}/css.hoon (100%) rename {base/mar => mar}/dill-belt.hoon (100%) rename {base/mar => mar}/dill-blit.hoon (100%) rename {base/mar => mar}/down.hoon (100%) rename {base/mar => mar}/down/html5-entities.json (100%) rename {base/mar => mar}/down/parse.hoon (100%) rename {base/mar => mar}/down/rend.hoon (100%) rename {base/mar => mar}/elem.hoon (100%) rename {base/mar => mar}/eot.hoon (100%) rename {base/mar => mar}/helm-hi.hoon (100%) rename {base/mar => mar}/hiss.hoon (100%) rename {base/mar => mar}/hook.hoon (100%) rename {base/mar => mar}/hoon.hoon (100%) rename {base/mar => mar}/html.hoon (100%) rename {base/mar => mar}/httpreq.hoon (100%) rename {base/mar => mar}/httr.hoon (100%) rename {base/mar => mar}/hymn.hoon (100%) rename {base/mar => mar}/js.hoon (100%) rename {base/mar => mar}/json.hoon (100%) rename {base/mar => mar}/markdown.hoon (100%) rename {base/mar => mar}/md.hoon (100%) rename {base/mar => mar}/mess.hoon (100%) rename {base/mar => mar}/mime.hoon (100%) rename {base/mar => mar}/oauth-tokens.hoon (100%) rename {base/mar => mar}/oauth2-code.hoon (100%) rename {base/mar => mar}/oct3-move.hoon (100%) rename {base/mar => mar}/oct3-update.hoon (100%) rename {base/mar => mar}/oct4-move.hoon (100%) rename {base/mar => mar}/oct4-update.hoon (100%) rename {base/mar => mar}/otf.hoon (100%) rename {base/mar => mar}/purl.hoon (100%) rename {base/mar => mar}/react-snip.hoon (100%) rename {base/mar => mar}/react.hoon (100%) rename {base/mar => mar}/sched.hoon (100%) rename {base/mar => mar}/snip.hoon (100%) rename {base/mar => mar}/sole-action.hoon (100%) rename {base/mar => mar}/sole-effect.hoon (100%) rename {base/mar => mar}/styl.hoon (100%) rename {base/mar => mar}/talk-command.hoon (100%) rename {base/mar => mar}/talk-report.hoon (100%) rename {base/mar => mar}/tang.hoon (100%) rename {base/mar => mar}/txt-diff.hoon (100%) rename {base/mar => mar}/txt.hoon (100%) rename {base/mar => mar}/urb.hoon (100%) rename {base/mar => mar}/user.hoon (100%) rename {base/mar => mar}/users.hoon (100%) rename {base/mar => mar}/will.hoon (100%) rename {base/mar => mar}/woff.hoon (100%) rename {base/pub => pub}/bit/fab/hymn.hook (100%) rename {base/pub => pub}/cloud/fab/hymn.hook (100%) rename {base/pub => pub}/cloud/src/main.css (100%) rename {base/pub => pub}/cloud/src/main.js (100%) rename {base/pub => pub}/coin/fab/hymn.hook (100%) rename {base/pub => pub}/doc.md (100%) rename {base/pub => pub}/doc/arvo.md (100%) rename {base/pub => pub}/doc/arvo/ames.md (100%) rename {base/pub => pub}/doc/arvo/ames/commentary.md (100%) rename {base/pub => pub}/doc/arvo/arvo.md (100%) rename {base/pub => pub}/doc/arvo/arvo/commentary.md (100%) rename {base/pub => pub}/doc/arvo/clay.md (100%) rename {base/pub => pub}/doc/arvo/clay/commentary.md (100%) rename {base/pub => pub}/doc/arvo/dill.md (100%) rename {base/pub => pub}/doc/arvo/dill/commentary.md (100%) rename {base/pub => pub}/doc/arvo/eyre.md (100%) rename {base/pub => pub}/doc/arvo/eyre/commentary.md (100%) rename {base/pub => pub}/doc/arvo/ford.md (100%) rename {base/pub => pub}/doc/arvo/ford/commentary.md (100%) rename {base/pub => pub}/doc/arvo/gall.md (100%) rename {base/pub => pub}/doc/arvo/gall/gall.md (100%) rename {base/pub => pub}/doc/arvo/ives.md (100%) rename {base/pub => pub}/doc/arvo/ives/ives.md (100%) rename {base/pub => pub}/doc/arvo/jael.md (100%) rename {base/pub => pub}/doc/arvo/jael/jael.md (100%) rename {base/pub => pub}/doc/arvo/kahn.md (100%) rename {base/pub => pub}/doc/arvo/kahn/kahn.md (100%) rename {base/pub => pub}/doc/arvo/lunt.md (100%) rename {base/pub => pub}/doc/arvo/lunt/lunt.md (100%) rename {base/pub => pub}/doc/arvo/time.md (100%) rename {base/pub => pub}/doc/arvo/util.md (100%) rename {base/pub => pub}/doc/guide.md (100%) rename {base/pub => pub}/doc/guide/a-ford.md (100%) rename {base/pub => pub}/doc/guide/b-cli.md (100%) rename {base/pub => pub}/doc/guide/c-gall.md (100%) rename {base/pub => pub}/doc/guide/d-app.md (100%) rename {base/pub => pub}/doc/guide/e-dev.md (100%) rename {base/pub => pub}/doc/hoon.md (100%) rename {base/pub => pub}/doc/hoon/library.md (100%) rename {base/pub => pub}/doc/hoon/library/0.md (100%) rename {base/pub => pub}/doc/hoon/library/1.md (100%) rename {base/pub => pub}/doc/hoon/library/2a.md (100%) rename {base/pub => pub}/doc/hoon/library/2b.md (100%) rename {base/pub => pub}/doc/hoon/library/2c.md (100%) rename {base/pub => pub}/doc/hoon/library/2da.md (100%) rename {base/pub => pub}/doc/hoon/library/2db.md (100%) rename {base/pub => pub}/doc/hoon/library/2dc.md (100%) rename {base/pub => pub}/doc/hoon/library/2dd.md (100%) rename {base/pub => pub}/doc/hoon/library/2ea.md (100%) rename {base/pub => pub}/doc/hoon/library/2eb.md (100%) rename {base/pub => pub}/doc/hoon/library/2ec.md (100%) rename {base/pub => pub}/doc/hoon/library/2ed.md (100%) rename {base/pub => pub}/doc/hoon/library/2ee.md (100%) rename {base/pub => pub}/doc/hoon/library/2ef.md (100%) rename {base/pub => pub}/doc/hoon/library/2eg.md (100%) rename {base/pub => pub}/doc/hoon/library/2eh.md (100%) rename {base/pub => pub}/doc/hoon/library/2ei.md (100%) rename {base/pub => pub}/doc/hoon/library/2ej.md (100%) rename {base/pub => pub}/doc/hoon/library/2ek.md (100%) rename {base/pub => pub}/doc/hoon/library/2el.md (100%) rename {base/pub => pub}/doc/hoon/library/2em.md (100%) rename {base/pub => pub}/doc/hoon/library/2en.md (100%) rename {base/pub => pub}/doc/hoon/library/2eo.md (100%) rename {base/pub => pub}/doc/hoon/library/2ep.md (100%) rename {base/pub => pub}/doc/hoon/library/2ew.md (100%) rename {base/pub => pub}/doc/hoon/library/2ex.md (100%) rename {base/pub => pub}/doc/hoon/library/2ey.md (100%) rename {base/pub => pub}/doc/hoon/library/2ez.md (100%) rename {base/pub => pub}/doc/hoon/library/3ba.md (100%) rename {base/pub => pub}/doc/hoon/library/3bb.md (100%) rename {base/pub => pub}/doc/hoon/library/3bc.md (100%) rename {base/pub => pub}/doc/hoon/library/3bd.md (100%) rename {base/pub => pub}/doc/hoon/library/3be.md (100%) rename {base/pub => pub}/doc/hoon/library/3bf.md (100%) rename {base/pub => pub}/doc/hoon/library/3bg.md (100%) rename {base/pub => pub}/doc/hoon/library/3bh.md (100%) rename {base/pub => pub}/doc/hoon/library/3bi.md (100%) rename {base/pub => pub}/doc/hoon/reference.md (100%) rename {base/pub => pub}/doc/hoon/reference/odors.md (100%) rename {base/pub => pub}/doc/hoon/runes.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bcbr.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bccb.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bccl.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bccm.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bccn.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bckt.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bcls.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bcpm.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bcpt.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bctr.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bcts.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bcwt.md (100%) rename {base/pub => pub}/doc/hoon/runes/bc/bczp.md (100%) rename {base/pub => pub}/doc/hoon/runes/br.md (100%) rename {base/pub => pub}/doc/hoon/runes/br/brcb.md (100%) rename {base/pub => pub}/doc/hoon/runes/br/brcn.md (100%) rename {base/pub => pub}/doc/hoon/runes/br/brdt.md (100%) rename {base/pub => pub}/doc/hoon/runes/br/brfs.md (100%) rename {base/pub => pub}/doc/hoon/runes/br/brhp.md (100%) rename {base/pub => pub}/doc/hoon/runes/br/brkt.md (100%) rename {base/pub => pub}/doc/hoon/runes/br/brls.md (100%) rename {base/pub => pub}/doc/hoon/runes/br/brtr.md (100%) rename {base/pub => pub}/doc/hoon/runes/br/brts.md (100%) rename {base/pub => pub}/doc/hoon/runes/br/brwt.md (100%) rename {base/pub => pub}/doc/hoon/runes/cl.md (100%) rename {base/pub => pub}/doc/hoon/runes/cl/clcb.md (100%) rename {base/pub => pub}/doc/hoon/runes/cl/clfs.md (100%) rename {base/pub => pub}/doc/hoon/runes/cl/clhp.md (100%) rename {base/pub => pub}/doc/hoon/runes/cl/clkt.md (100%) rename {base/pub => pub}/doc/hoon/runes/cl/clls.md (100%) rename {base/pub => pub}/doc/hoon/runes/cl/clsg.md (100%) rename {base/pub => pub}/doc/hoon/runes/cl/cltr.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn/cncb.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn/cncl.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn/cndt.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn/cnhp.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn/cnkt.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn/cnls.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn/cnsg.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn/cntr.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn/cnts.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn/cnzy.md (100%) rename {base/pub => pub}/doc/hoon/runes/cn/cnzz.md (100%) rename {base/pub => pub}/doc/hoon/runes/dt.md (100%) rename {base/pub => pub}/doc/hoon/runes/dt/dtkt.md (100%) rename {base/pub => pub}/doc/hoon/runes/dt/dtls.md (100%) rename {base/pub => pub}/doc/hoon/runes/dt/dttr.md (100%) rename {base/pub => pub}/doc/hoon/runes/dt/dtts.md (100%) rename {base/pub => pub}/doc/hoon/runes/dt/dtwt.md (100%) rename {base/pub => pub}/doc/hoon/runes/dt/dtzy.md (100%) rename {base/pub => pub}/doc/hoon/runes/dt/dtzz.md (100%) rename {base/pub => pub}/doc/hoon/runes/hx.md (100%) rename {base/pub => pub}/doc/hoon/runes/hx/hxgl.md (100%) rename {base/pub => pub}/doc/hoon/runes/hx/hxgr.md (100%) rename {base/pub => pub}/doc/hoon/runes/kt.md (100%) rename {base/pub => pub}/doc/hoon/runes/kt/ktbr.md (100%) rename {base/pub => pub}/doc/hoon/runes/kt/ktdt.md (100%) rename {base/pub => pub}/doc/hoon/runes/kt/kthp.md (100%) rename {base/pub => pub}/doc/hoon/runes/kt/ktls.md (100%) rename {base/pub => pub}/doc/hoon/runes/kt/ktpm.md (100%) rename {base/pub => pub}/doc/hoon/runes/kt/ktsg.md (100%) rename {base/pub => pub}/doc/hoon/runes/kt/ktts.md (100%) rename {base/pub => pub}/doc/hoon/runes/kt/ktwt.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sgbc.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sgbr.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sgcb.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sgcn.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sgfs.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sggl.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sggr.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sgls.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sgpm.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sgts.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sgwt.md (100%) rename {base/pub => pub}/doc/hoon/runes/sg/sgzp.md (100%) rename {base/pub => pub}/doc/hoon/runes/sm.md (100%) rename {base/pub => pub}/doc/hoon/runes/sm/smcl.md (100%) rename {base/pub => pub}/doc/hoon/runes/sm/smcn.md (100%) rename {base/pub => pub}/doc/hoon/runes/sm/smdq.md (100%) rename {base/pub => pub}/doc/hoon/runes/sm/smhp.md (100%) rename {base/pub => pub}/doc/hoon/runes/sm/smls.md (100%) rename {base/pub => pub}/doc/hoon/runes/sm/smsg.md (100%) rename {base/pub => pub}/doc/hoon/runes/sm/smsm.md (100%) rename {base/pub => pub}/doc/hoon/runes/sm/smtr.md (100%) rename {base/pub => pub}/doc/hoon/runes/sm/smzz.md (100%) rename {base/pub => pub}/doc/hoon/runes/ts.md (100%) rename {base/pub => pub}/doc/hoon/runes/ts/tsbr.md (100%) rename {base/pub => pub}/doc/hoon/runes/ts/tscl.md (100%) rename {base/pub => pub}/doc/hoon/runes/ts/tsdt.md (100%) rename {base/pub => pub}/doc/hoon/runes/ts/tsgl.md (100%) rename {base/pub => pub}/doc/hoon/runes/ts/tsgr.md (100%) rename {base/pub => pub}/doc/hoon/runes/ts/tshp.md (100%) rename {base/pub => pub}/doc/hoon/runes/ts/tskt.md (100%) rename {base/pub => pub}/doc/hoon/runes/ts/tsls.md (100%) rename {base/pub => pub}/doc/hoon/runes/ts/tssg.md (100%) rename {base/pub => pub}/doc/hoon/runes/ts/tstr.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtbr.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtcl.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtdt.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtgl.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtgr.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wthp.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wthz.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtkt.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtkz.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtls.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtlz.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtpm.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtpt.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtpz.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtsg.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtsz.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtts.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wttz.md (100%) rename {base/pub => pub}/doc/hoon/runes/wt/wtzp.md (100%) rename {base/pub => pub}/doc/hoon/runes/zp.md (100%) rename {base/pub => pub}/doc/hoon/runes/zp/zpcb.md (100%) rename {base/pub => pub}/doc/hoon/runes/zp/zpcm.md (100%) rename {base/pub => pub}/doc/hoon/runes/zp/zpfs.md (100%) rename {base/pub => pub}/doc/hoon/runes/zp/zpgr.md (100%) rename {base/pub => pub}/doc/hoon/runes/zp/zpsm.md (100%) rename {base/pub => pub}/doc/hoon/runes/zp/zpts.md (100%) rename {base/pub => pub}/doc/hoon/runes/zp/zpwt.md (100%) rename {base/pub => pub}/doc/hoon/runes/zp/zpzp.md (100%) rename {base/pub => pub}/doc/nock.md (100%) rename {base/pub => pub}/doc/nock/reference.md (100%) rename {base/pub => pub}/doc/reference.md (100%) rename {base/pub => pub}/doc/reference/glossary.md (100%) rename {base/pub => pub}/doc/reference/u3.md (100%) rename {base/pub => pub}/doc/reference/vere.md (100%) rename {base/pub => pub}/doc/talk.md (100%) rename {base/pub => pub}/doc/talk/help.txt (100%) rename {base/pub => pub}/fab/readme.md (100%) rename {base/pub => pub}/match/hymn.hook (100%) rename {base/pub => pub}/oct3/fab/hymn.hook (100%) rename {base/pub => pub}/oct3/src/main.css (100%) rename {base/pub => pub}/oct3/src/main.js (100%) rename {base/pub => pub}/sole/fab/hymn.hook (100%) rename {base/pub => pub}/sole/src/main.coffee (100%) rename {base/pub => pub}/sole/src/share.coffee (100%) rename {base/pub => pub}/src/readme.md (100%) rename {base/pub => pub}/talk/fab/hymn.hook (100%) rename {base/pub => pub}/talk/src/css/fonts.styl (100%) rename {base/pub => pub}/talk/src/css/main.css (100%) rename {base/pub => pub}/talk/src/css/main.styl (100%) rename {base/pub => pub}/talk/src/css/mobile.styl (100%) rename {base/pub => pub}/talk/src/js/.main.js (100%) rename {base/pub => pub}/talk/src/js/actions/MessageActions.coffee (100%) rename {base/pub => pub}/talk/src/js/actions/StationActions.coffee (100%) rename {base/pub => pub}/talk/src/js/components/MemberComponent.coffee (100%) rename {base/pub => pub}/talk/src/js/components/MessagesComponent.coffee (100%) rename {base/pub => pub}/talk/src/js/components/StationComponent.coffee (100%) rename {base/pub => pub}/talk/src/js/components/StationsComponent.coffee (100%) rename {base/pub => pub}/talk/src/js/components/TalkComponent.coffee (100%) rename {base/pub => pub}/talk/src/js/components/WritingComponent.coffee (100%) rename {base/pub => pub}/talk/src/js/dep/director.js (100%) rename {base/pub => pub}/talk/src/js/dispatcher/Dispatcher.coffee (100%) rename {base/pub => pub}/talk/src/js/main.coffee (100%) rename {base/pub => pub}/talk/src/js/main.js (100%) rename {base/pub => pub}/talk/src/js/module.coffee (100%) rename {base/pub => pub}/talk/src/js/module.js (100%) rename {base/pub => pub}/talk/src/js/move.coffee (100%) rename {base/pub => pub}/talk/src/js/package.json (100%) rename {base/pub => pub}/talk/src/js/persistence/MessagePersistence.coffee (100%) rename {base/pub => pub}/talk/src/js/persistence/StationPersistence.coffee (100%) rename {base/pub => pub}/talk/src/js/stores/MessageStore.coffee (100%) rename {base/pub => pub}/talk/src/js/stores/StationStore.coffee (100%) rename {base/pub => pub}/talk/src/js/test.js (100%) rename {base/pub => pub}/talk/src/js/util.coffee (100%) rename {base/pub => pub}/test.sched (100%) rename {base/pub => pub}/tree/src/css/fonts.styl (100%) rename {base/pub => pub}/tree/src/css/main.css (100%) rename {base/pub => pub}/tree/src/css/main.styl (100%) rename {base/pub => pub}/tree/src/css/mobile.styl (100%) rename {base/pub => pub}/tree/src/js/actions/TreeActions.coffee (100%) rename {base/pub => pub}/tree/src/js/components/AnchorComponent.coffee (100%) rename {base/pub => pub}/tree/src/js/components/BodyComponent.coffee (100%) rename {base/pub => pub}/tree/src/js/components/CodeMirror.coffee (100%) rename {base/pub => pub}/tree/src/js/components/KidsComponent.coffee (100%) rename {base/pub => pub}/tree/src/js/components/ListComponent.coffee (100%) rename {base/pub => pub}/tree/src/js/components/LoadComponent.coffee (100%) rename {base/pub => pub}/tree/src/js/dispatcher/Dispatcher.coffee (100%) rename {base/pub => pub}/tree/src/js/main.coffee (100%) rename {base/pub => pub}/tree/src/js/main.js (100%) rename {base/pub => pub}/tree/src/js/package.json (100%) rename {base/pub => pub}/tree/src/js/persistence/TreePersistence.coffee (100%) rename {base/pub => pub}/tree/src/js/stores/TreeStore.coffee (100%) rename {base/pub => pub}/tree/src/readme.md (100%) rename {base/spec => spec}/nock/5.txt (100%) rename {base/sur => sur}/bang-args.hoon (100%) rename {base/sur => sur}/bit-api.hoon (100%) rename {base/sur => sur}/cp-args.hoon (100%) rename {base/sur => sur}/demo-args.hoon (100%) rename {base/sur => sur}/down.hoon (100%) rename {base/sur => sur}/foobar.hoon (100%) rename {base/sur => sur}/helm.hoon (100%) rename {base/sur => sur}/hi-args.hoon (100%) rename {base/sur => sur}/hood.hoon (100%) rename {base/sur => sur}/into-args.hoon (100%) rename {base/sur => sur}/kyev.hoon (100%) rename {base/sur => sur}/markdown.hoon (100%) rename {base/sur => sur}/mess.hoon (100%) rename {base/sur => sur}/mv-args.hoon (100%) rename {base/sur => sur}/oct1.hoon (100%) rename {base/sur => sur}/oct2.hoon (100%) rename {base/sur => sur}/oct3.hoon (100%) rename {base/sur => sur}/oct4.hoon (100%) rename {base/sur => sur}/reload-args.hoon (100%) rename {base/sur => sur}/rm-args.hoon (100%) rename {base/sur => sur}/sole.hoon (100%) rename {base/sur => sur}/sync-args.hoon (100%) rename {base/sur => sur}/talk.hoon (100%) rename {base/sur => sur}/term-ctrl.hoon (100%) rename {base/sur => sur}/term-in.hoon (100%) rename {base/sur => sur}/term-line.hoon (100%) rename {base/sur => sur}/ticket-args.hoon (100%) rename {base/sur => sur}/twitter.hoon (100%) rename {base/sur => sur}/unsync-args.hoon (100%) rename {base/sur => sur}/user.hoon (100%) rename {base/sur => sur}/users.hoon (100%) rename {base/sur => sur}/verb-args.hoon (100%) rename {base/sur => sur}/wand.hoon (100%) rename {base/sur => sur}/zing.hoon (100%) rename {base/sur => sur}/zong.hoon (100%) rename {base/sur => sur}/zung.hoon (100%) rename {base/tree => tree}/hymn.hook (100%) rename {base/tree => tree}/json.hook (100%) rename {base/tree => tree}/util.hoon (100%) rename {base/try => try}/readme.md (100%) diff --git a/base/ape/bit.hoon b/ape/bit.hoon similarity index 100% rename from base/ape/bit.hoon rename to ape/bit.hoon diff --git a/base/ape/cloud.hoon b/ape/cloud.hoon similarity index 100% rename from base/ape/cloud.hoon rename to ape/cloud.hoon diff --git a/base/ape/curl.hoon b/ape/curl.hoon similarity index 100% rename from base/ape/curl.hoon rename to ape/curl.hoon diff --git a/base/ape/dojo.hoon b/ape/dojo.hoon similarity index 100% rename from base/ape/dojo.hoon rename to ape/dojo.hoon diff --git a/base/ape/hood.hoon b/ape/hood.hoon similarity index 100% rename from base/ape/hood.hoon rename to ape/hood.hoon diff --git a/base/ape/oct1.hoon b/ape/oct1.hoon similarity index 100% rename from base/ape/oct1.hoon rename to ape/oct1.hoon diff --git a/base/ape/oct2.hoon b/ape/oct2.hoon similarity index 100% rename from base/ape/oct2.hoon rename to ape/oct2.hoon diff --git a/base/ape/oct3.hoon b/ape/oct3.hoon similarity index 100% rename from base/ape/oct3.hoon rename to ape/oct3.hoon diff --git a/base/ape/oct4.hoon b/ape/oct4.hoon similarity index 100% rename from base/ape/oct4.hoon rename to ape/oct4.hoon diff --git a/base/ape/talk.hoon b/ape/talk.hoon similarity index 100% rename from base/ape/talk.hoon rename to ape/talk.hoon diff --git a/base/ape/twif.hoon b/ape/twif.hoon similarity index 100% rename from base/ape/twif.hoon rename to ape/twif.hoon diff --git a/base/ape/twit.hoon b/ape/twit.hoon similarity index 100% rename from base/ape/twit.hoon rename to ape/twit.hoon diff --git a/base/arvo/ames.hoon b/arvo/ames.hoon similarity index 100% rename from base/arvo/ames.hoon rename to arvo/ames.hoon diff --git a/base/arvo/clay.hoon b/arvo/clay.hoon similarity index 100% rename from base/arvo/clay.hoon rename to arvo/clay.hoon diff --git a/base/arvo/dill.hoon b/arvo/dill.hoon similarity index 100% rename from base/arvo/dill.hoon rename to arvo/dill.hoon diff --git a/base/arvo/eyre.hoon b/arvo/eyre.hoon similarity index 100% rename from base/arvo/eyre.hoon rename to arvo/eyre.hoon diff --git a/base/arvo/ford.hoon b/arvo/ford.hoon similarity index 100% rename from base/arvo/ford.hoon rename to arvo/ford.hoon diff --git a/base/arvo/gall.hoon b/arvo/gall.hoon similarity index 100% rename from base/arvo/gall.hoon rename to arvo/gall.hoon diff --git a/base/arvo/hoon.hoon b/arvo/hoon.hoon similarity index 100% rename from base/arvo/hoon.hoon rename to arvo/hoon.hoon diff --git a/base/arvo/jael.hoon b/arvo/jael.hoon similarity index 100% rename from base/arvo/jael.hoon rename to arvo/jael.hoon diff --git a/base/arvo/kahn.hoon b/arvo/kahn.hoon similarity index 100% rename from base/arvo/kahn.hoon rename to arvo/kahn.hoon diff --git a/base/arvo/lunt.hoon b/arvo/lunt.hoon similarity index 100% rename from base/arvo/lunt.hoon rename to arvo/lunt.hoon diff --git a/base/arvo/musk.hoon b/arvo/musk.hoon similarity index 100% rename from base/arvo/musk.hoon rename to arvo/musk.hoon diff --git a/base/arvo/time.hoon b/arvo/time.hoon similarity index 100% rename from base/arvo/time.hoon rename to arvo/time.hoon diff --git a/base/arvo/zuse.hoon b/arvo/zuse.hoon similarity index 100% rename from base/arvo/zuse.hoon rename to arvo/zuse.hoon diff --git a/base/cat/bit/act.hoon b/cat/bit/act.hoon similarity index 100% rename from base/cat/bit/act.hoon rename to cat/bit/act.hoon diff --git a/base/cat/bit/address-contact.hoon b/cat/bit/address-contact.hoon similarity index 100% rename from base/cat/bit/address-contact.hoon rename to cat/bit/address-contact.hoon diff --git a/base/cat/bit/auth.hoon b/cat/bit/auth.hoon similarity index 100% rename from base/cat/bit/auth.hoon rename to cat/bit/auth.hoon diff --git a/base/cat/bit/buy.hoon b/cat/bit/buy.hoon similarity index 100% rename from base/cat/bit/buy.hoon rename to cat/bit/buy.hoon diff --git a/base/cat/bit/contact-address.hoon b/cat/bit/contact-address.hoon similarity index 100% rename from base/cat/bit/contact-address.hoon rename to cat/bit/contact-address.hoon diff --git a/base/cat/bit/list.hoon b/cat/bit/list.hoon similarity index 100% rename from base/cat/bit/list.hoon rename to cat/bit/list.hoon diff --git a/base/cat/bit/sell.hoon b/cat/bit/sell.hoon similarity index 100% rename from base/cat/bit/sell.hoon rename to cat/bit/sell.hoon diff --git a/base/cat/bit/send.hoon b/cat/bit/send.hoon similarity index 100% rename from base/cat/bit/send.hoon rename to cat/bit/send.hoon diff --git a/base/cat/cat.hoon b/cat/cat.hoon similarity index 100% rename from base/cat/cat.hoon rename to cat/cat.hoon diff --git a/base/cat/cat/pretty.hoon b/cat/cat/pretty.hoon similarity index 100% rename from base/cat/cat/pretty.hoon rename to cat/cat/pretty.hoon diff --git a/base/cat/coin/keys.hoon b/cat/coin/keys.hoon similarity index 100% rename from base/cat/coin/keys.hoon rename to cat/coin/keys.hoon diff --git a/base/cat/curl/url.hoon b/cat/curl/url.hoon similarity index 100% rename from base/cat/curl/url.hoon rename to cat/curl/url.hoon diff --git a/base/cat/hello.hoon b/cat/hello.hoon similarity index 100% rename from base/cat/hello.hoon rename to cat/hello.hoon diff --git a/base/cat/hood/breload.hoon b/cat/hood/breload.hoon similarity index 100% rename from base/cat/hood/breload.hoon rename to cat/hood/breload.hoon diff --git a/base/cat/hood/cp.hoon b/cat/hood/cp.hoon similarity index 100% rename from base/cat/hood/cp.hoon rename to cat/hood/cp.hoon diff --git a/base/cat/hood/hi.hoon b/cat/hood/hi.hoon similarity index 100% rename from base/cat/hood/hi.hoon rename to cat/hood/hi.hoon diff --git a/base/cat/hood/init.hoon b/cat/hood/init.hoon similarity index 100% rename from base/cat/hood/init.hoon rename to cat/hood/init.hoon diff --git a/base/cat/hood/invite.hoon b/cat/hood/invite.hoon similarity index 100% rename from base/cat/hood/invite.hoon rename to cat/hood/invite.hoon diff --git a/base/cat/hood/link.hoon b/cat/hood/link.hoon similarity index 100% rename from base/cat/hood/link.hoon rename to cat/hood/link.hoon diff --git a/base/cat/hood/mass.hoon b/cat/hood/mass.hoon similarity index 100% rename from base/cat/hood/mass.hoon rename to cat/hood/mass.hoon diff --git a/base/cat/hood/merge.hoon b/cat/hood/merge.hoon similarity index 100% rename from base/cat/hood/merge.hoon rename to cat/hood/merge.hoon diff --git a/base/cat/hood/mount.hoon b/cat/hood/mount.hoon similarity index 100% rename from base/cat/hood/mount.hoon rename to cat/hood/mount.hoon diff --git a/base/cat/hood/mv.hoon b/cat/hood/mv.hoon similarity index 100% rename from base/cat/hood/mv.hoon rename to cat/hood/mv.hoon diff --git a/base/cat/hood/reload-desk.hoon b/cat/hood/reload-desk.hoon similarity index 100% rename from base/cat/hood/reload-desk.hoon rename to cat/hood/reload-desk.hoon diff --git a/base/cat/hood/reload.hoon b/cat/hood/reload.hoon similarity index 100% rename from base/cat/hood/reload.hoon rename to cat/hood/reload.hoon diff --git a/base/cat/hood/reset.hoon b/cat/hood/reset.hoon similarity index 100% rename from base/cat/hood/reset.hoon rename to cat/hood/reset.hoon diff --git a/base/cat/hood/rm.hoon b/cat/hood/rm.hoon similarity index 100% rename from base/cat/hood/rm.hoon rename to cat/hood/rm.hoon diff --git a/base/cat/hood/schedule.hoon b/cat/hood/schedule.hoon similarity index 100% rename from base/cat/hood/schedule.hoon rename to cat/hood/schedule.hoon diff --git a/base/cat/hood/start.hoon b/cat/hood/start.hoon similarity index 100% rename from base/cat/hood/start.hoon rename to cat/hood/start.hoon diff --git a/base/cat/hood/sync.hoon b/cat/hood/sync.hoon similarity index 100% rename from base/cat/hood/sync.hoon rename to cat/hood/sync.hoon diff --git a/base/cat/hood/unix.hoon b/cat/hood/unix.hoon similarity index 100% rename from base/cat/hood/unix.hoon rename to cat/hood/unix.hoon diff --git a/base/cat/hood/unmount.hoon b/cat/hood/unmount.hoon similarity index 100% rename from base/cat/hood/unmount.hoon rename to cat/hood/unmount.hoon diff --git a/base/cat/hood/verb.hoon b/cat/hood/verb.hoon similarity index 100% rename from base/cat/hood/verb.hoon rename to cat/hood/verb.hoon diff --git a/base/cat/ls.hoon b/cat/ls.hoon similarity index 100% rename from base/cat/ls.hoon rename to cat/ls.hoon diff --git a/base/cat/ls/subdir.hoon b/cat/ls/subdir.hoon similarity index 100% rename from base/cat/ls/subdir.hoon rename to cat/ls/subdir.hoon diff --git a/base/cat/solid.hoon b/cat/solid.hoon similarity index 100% rename from base/cat/solid.hoon rename to cat/solid.hoon diff --git a/base/cat/ticket.hoon b/cat/ticket.hoon similarity index 100% rename from base/cat/ticket.hoon rename to cat/ticket.hoon diff --git a/base/cat/tree.hoon b/cat/tree.hoon similarity index 100% rename from base/cat/tree.hoon rename to cat/tree.hoon diff --git a/base/cat/twit/as.hoon b/cat/twit/as.hoon similarity index 100% rename from base/cat/twit/as.hoon rename to cat/twit/as.hoon diff --git a/base/cat/twit/tweet.hoon b/cat/twit/tweet.hoon similarity index 100% rename from base/cat/twit/tweet.hoon rename to cat/twit/tweet.hoon diff --git a/base/cat/twit/twitter-feed.hoon b/cat/twit/twitter-feed.hoon similarity index 100% rename from base/cat/twit/twitter-feed.hoon rename to cat/twit/twitter-feed.hoon diff --git a/base/dog/hood/begin.hoon b/dog/hood/begin.hoon similarity index 100% rename from base/dog/hood/begin.hoon rename to dog/hood/begin.hoon diff --git a/base/dog/twit/auth.hoon b/dog/twit/auth.hoon similarity index 100% rename from base/dog/twit/auth.hoon rename to dog/twit/auth.hoon diff --git a/base/dog/twit/auth/hoontap-keys.txt b/dog/twit/auth/hoontap-keys.txt similarity index 100% rename from base/dog/twit/auth/hoontap-keys.txt rename to dog/twit/auth/hoontap-keys.txt diff --git a/base/elem.hook b/elem.hook similarity index 100% rename from base/elem.hook rename to elem.hook diff --git a/base/lib/base.css b/lib/base.css similarity index 100% rename from base/lib/base.css rename to lib/base.css diff --git a/base/lib/drum.hoon b/lib/drum.hoon similarity index 100% rename from base/lib/drum.hoon rename to lib/drum.hoon diff --git a/base/lib/helm.hoon b/lib/helm.hoon similarity index 100% rename from base/lib/helm.hoon rename to lib/helm.hoon diff --git a/base/lib/http.hoon b/lib/http.hoon similarity index 100% rename from base/lib/http.hoon rename to lib/http.hoon diff --git a/base/lib/kiln.hoon b/lib/kiln.hoon similarity index 100% rename from base/lib/kiln.hoon rename to lib/kiln.hoon diff --git a/base/lib/oct1.hoon b/lib/oct1.hoon similarity index 100% rename from base/lib/oct1.hoon rename to lib/oct1.hoon diff --git a/base/lib/oct2.hoon b/lib/oct2.hoon similarity index 100% rename from base/lib/oct2.hoon rename to lib/oct2.hoon diff --git a/base/lib/oct3.hoon b/lib/oct3.hoon similarity index 100% rename from base/lib/oct3.hoon rename to lib/oct3.hoon diff --git a/base/lib/oct4.hoon b/lib/oct4.hoon similarity index 100% rename from base/lib/oct4.hoon rename to lib/oct4.hoon diff --git a/base/lib/react.hoon b/lib/react.hoon similarity index 100% rename from base/lib/react.hoon rename to lib/react.hoon diff --git a/base/lib/sh-utils.hoon b/lib/sh-utils.hoon similarity index 100% rename from base/lib/sh-utils.hoon rename to lib/sh-utils.hoon diff --git a/base/lib/shu.hoon b/lib/shu.hoon similarity index 100% rename from base/lib/shu.hoon rename to lib/shu.hoon diff --git a/base/lib/sole.hoon b/lib/sole.hoon similarity index 100% rename from base/lib/sole.hoon rename to lib/sole.hoon diff --git a/base/lib/syntax/codemirror.css b/lib/syntax/codemirror.css similarity index 100% rename from base/lib/syntax/codemirror.css rename to lib/syntax/codemirror.css diff --git a/base/lib/syntax/hoon.js b/lib/syntax/hoon.js similarity index 100% rename from base/lib/syntax/hoon.js rename to lib/syntax/hoon.js diff --git a/base/lib/talk.hoon b/lib/talk.hoon similarity index 100% rename from base/lib/talk.hoon rename to lib/talk.hoon diff --git a/base/lib/twitter.hoon b/lib/twitter.hoon similarity index 100% rename from base/lib/twitter.hoon rename to lib/twitter.hoon diff --git a/base/lib/urb.js b/lib/urb.js similarity index 100% rename from base/lib/urb.js rename to lib/urb.js diff --git a/base/mar/acto-game.hoon b/mar/acto-game.hoon similarity index 100% rename from base/mar/acto-game.hoon rename to mar/acto-game.hoon diff --git a/base/mar/atom.hoon b/mar/atom.hoon similarity index 100% rename from base/mar/atom.hoon rename to mar/atom.hoon diff --git a/base/mar/bit-accounts.hoon b/mar/bit-accounts.hoon similarity index 100% rename from base/mar/bit-accounts.hoon rename to mar/bit-accounts.hoon diff --git a/base/mar/bit-addr-made.hoon b/mar/bit-addr-made.hoon similarity index 100% rename from base/mar/bit-addr-made.hoon rename to mar/bit-addr-made.hoon diff --git a/base/mar/bit-addr-request.hoon b/mar/bit-addr-request.hoon similarity index 100% rename from base/mar/bit-addr-request.hoon rename to mar/bit-addr-request.hoon diff --git a/base/mar/bit-api-call.hoon b/mar/bit-api-call.hoon similarity index 100% rename from base/mar/bit-api-call.hoon rename to mar/bit-api-call.hoon diff --git a/base/mar/bit-get-token.hoon b/mar/bit-get-token.hoon similarity index 100% rename from base/mar/bit-get-token.hoon rename to mar/bit-get-token.hoon diff --git a/base/mar/bit-transaction.hoon b/mar/bit-transaction.hoon similarity index 100% rename from base/mar/bit-transaction.hoon rename to mar/bit-transaction.hoon diff --git a/base/mar/client-secret.hoon b/mar/client-secret.hoon similarity index 100% rename from base/mar/client-secret.hoon rename to mar/client-secret.hoon diff --git a/base/mar/cloud-auth.hoon b/mar/cloud-auth.hoon similarity index 100% rename from base/mar/cloud-auth.hoon rename to mar/cloud-auth.hoon diff --git a/base/mar/cloud-auth/door.hook b/mar/cloud-auth/door.hook similarity index 100% rename from base/mar/cloud-auth/door.hook rename to mar/cloud-auth/door.hook diff --git a/base/mar/cloud-secret.hoon b/mar/cloud-secret.hoon similarity index 100% rename from base/mar/cloud-secret.hoon rename to mar/cloud-secret.hoon diff --git a/base/mar/cloud-secret/door.hook b/mar/cloud-secret/door.hook similarity index 100% rename from base/mar/cloud-secret/door.hook rename to mar/cloud-secret/door.hook diff --git a/base/mar/coffee.hoon b/mar/coffee.hoon similarity index 100% rename from base/mar/coffee.hoon rename to mar/coffee.hoon diff --git a/base/mar/css.hoon b/mar/css.hoon similarity index 100% rename from base/mar/css.hoon rename to mar/css.hoon diff --git a/base/mar/dill-belt.hoon b/mar/dill-belt.hoon similarity index 100% rename from base/mar/dill-belt.hoon rename to mar/dill-belt.hoon diff --git a/base/mar/dill-blit.hoon b/mar/dill-blit.hoon similarity index 100% rename from base/mar/dill-blit.hoon rename to mar/dill-blit.hoon diff --git a/base/mar/down.hoon b/mar/down.hoon similarity index 100% rename from base/mar/down.hoon rename to mar/down.hoon diff --git a/base/mar/down/html5-entities.json b/mar/down/html5-entities.json similarity index 100% rename from base/mar/down/html5-entities.json rename to mar/down/html5-entities.json diff --git a/base/mar/down/parse.hoon b/mar/down/parse.hoon similarity index 100% rename from base/mar/down/parse.hoon rename to mar/down/parse.hoon diff --git a/base/mar/down/rend.hoon b/mar/down/rend.hoon similarity index 100% rename from base/mar/down/rend.hoon rename to mar/down/rend.hoon diff --git a/base/mar/elem.hoon b/mar/elem.hoon similarity index 100% rename from base/mar/elem.hoon rename to mar/elem.hoon diff --git a/base/mar/eot.hoon b/mar/eot.hoon similarity index 100% rename from base/mar/eot.hoon rename to mar/eot.hoon diff --git a/base/mar/helm-hi.hoon b/mar/helm-hi.hoon similarity index 100% rename from base/mar/helm-hi.hoon rename to mar/helm-hi.hoon diff --git a/base/mar/hiss.hoon b/mar/hiss.hoon similarity index 100% rename from base/mar/hiss.hoon rename to mar/hiss.hoon diff --git a/base/mar/hook.hoon b/mar/hook.hoon similarity index 100% rename from base/mar/hook.hoon rename to mar/hook.hoon diff --git a/base/mar/hoon.hoon b/mar/hoon.hoon similarity index 100% rename from base/mar/hoon.hoon rename to mar/hoon.hoon diff --git a/base/mar/html.hoon b/mar/html.hoon similarity index 100% rename from base/mar/html.hoon rename to mar/html.hoon diff --git a/base/mar/httpreq.hoon b/mar/httpreq.hoon similarity index 100% rename from base/mar/httpreq.hoon rename to mar/httpreq.hoon diff --git a/base/mar/httr.hoon b/mar/httr.hoon similarity index 100% rename from base/mar/httr.hoon rename to mar/httr.hoon diff --git a/base/mar/hymn.hoon b/mar/hymn.hoon similarity index 100% rename from base/mar/hymn.hoon rename to mar/hymn.hoon diff --git a/base/mar/js.hoon b/mar/js.hoon similarity index 100% rename from base/mar/js.hoon rename to mar/js.hoon diff --git a/base/mar/json.hoon b/mar/json.hoon similarity index 100% rename from base/mar/json.hoon rename to mar/json.hoon diff --git a/base/mar/markdown.hoon b/mar/markdown.hoon similarity index 100% rename from base/mar/markdown.hoon rename to mar/markdown.hoon diff --git a/base/mar/md.hoon b/mar/md.hoon similarity index 100% rename from base/mar/md.hoon rename to mar/md.hoon diff --git a/base/mar/mess.hoon b/mar/mess.hoon similarity index 100% rename from base/mar/mess.hoon rename to mar/mess.hoon diff --git a/base/mar/mime.hoon b/mar/mime.hoon similarity index 100% rename from base/mar/mime.hoon rename to mar/mime.hoon diff --git a/base/mar/oauth-tokens.hoon b/mar/oauth-tokens.hoon similarity index 100% rename from base/mar/oauth-tokens.hoon rename to mar/oauth-tokens.hoon diff --git a/base/mar/oauth2-code.hoon b/mar/oauth2-code.hoon similarity index 100% rename from base/mar/oauth2-code.hoon rename to mar/oauth2-code.hoon diff --git a/base/mar/oct3-move.hoon b/mar/oct3-move.hoon similarity index 100% rename from base/mar/oct3-move.hoon rename to mar/oct3-move.hoon diff --git a/base/mar/oct3-update.hoon b/mar/oct3-update.hoon similarity index 100% rename from base/mar/oct3-update.hoon rename to mar/oct3-update.hoon diff --git a/base/mar/oct4-move.hoon b/mar/oct4-move.hoon similarity index 100% rename from base/mar/oct4-move.hoon rename to mar/oct4-move.hoon diff --git a/base/mar/oct4-update.hoon b/mar/oct4-update.hoon similarity index 100% rename from base/mar/oct4-update.hoon rename to mar/oct4-update.hoon diff --git a/base/mar/otf.hoon b/mar/otf.hoon similarity index 100% rename from base/mar/otf.hoon rename to mar/otf.hoon diff --git a/base/mar/purl.hoon b/mar/purl.hoon similarity index 100% rename from base/mar/purl.hoon rename to mar/purl.hoon diff --git a/base/mar/react-snip.hoon b/mar/react-snip.hoon similarity index 100% rename from base/mar/react-snip.hoon rename to mar/react-snip.hoon diff --git a/base/mar/react.hoon b/mar/react.hoon similarity index 100% rename from base/mar/react.hoon rename to mar/react.hoon diff --git a/base/mar/sched.hoon b/mar/sched.hoon similarity index 100% rename from base/mar/sched.hoon rename to mar/sched.hoon diff --git a/base/mar/snip.hoon b/mar/snip.hoon similarity index 100% rename from base/mar/snip.hoon rename to mar/snip.hoon diff --git a/base/mar/sole-action.hoon b/mar/sole-action.hoon similarity index 100% rename from base/mar/sole-action.hoon rename to mar/sole-action.hoon diff --git a/base/mar/sole-effect.hoon b/mar/sole-effect.hoon similarity index 100% rename from base/mar/sole-effect.hoon rename to mar/sole-effect.hoon diff --git a/base/mar/styl.hoon b/mar/styl.hoon similarity index 100% rename from base/mar/styl.hoon rename to mar/styl.hoon diff --git a/base/mar/talk-command.hoon b/mar/talk-command.hoon similarity index 100% rename from base/mar/talk-command.hoon rename to mar/talk-command.hoon diff --git a/base/mar/talk-report.hoon b/mar/talk-report.hoon similarity index 100% rename from base/mar/talk-report.hoon rename to mar/talk-report.hoon diff --git a/base/mar/tang.hoon b/mar/tang.hoon similarity index 100% rename from base/mar/tang.hoon rename to mar/tang.hoon diff --git a/base/mar/txt-diff.hoon b/mar/txt-diff.hoon similarity index 100% rename from base/mar/txt-diff.hoon rename to mar/txt-diff.hoon diff --git a/base/mar/txt.hoon b/mar/txt.hoon similarity index 100% rename from base/mar/txt.hoon rename to mar/txt.hoon diff --git a/base/mar/urb.hoon b/mar/urb.hoon similarity index 100% rename from base/mar/urb.hoon rename to mar/urb.hoon diff --git a/base/mar/user.hoon b/mar/user.hoon similarity index 100% rename from base/mar/user.hoon rename to mar/user.hoon diff --git a/base/mar/users.hoon b/mar/users.hoon similarity index 100% rename from base/mar/users.hoon rename to mar/users.hoon diff --git a/base/mar/will.hoon b/mar/will.hoon similarity index 100% rename from base/mar/will.hoon rename to mar/will.hoon diff --git a/base/mar/woff.hoon b/mar/woff.hoon similarity index 100% rename from base/mar/woff.hoon rename to mar/woff.hoon diff --git a/base/pub/bit/fab/hymn.hook b/pub/bit/fab/hymn.hook similarity index 100% rename from base/pub/bit/fab/hymn.hook rename to pub/bit/fab/hymn.hook diff --git a/base/pub/cloud/fab/hymn.hook b/pub/cloud/fab/hymn.hook similarity index 100% rename from base/pub/cloud/fab/hymn.hook rename to pub/cloud/fab/hymn.hook diff --git a/base/pub/cloud/src/main.css b/pub/cloud/src/main.css similarity index 100% rename from base/pub/cloud/src/main.css rename to pub/cloud/src/main.css diff --git a/base/pub/cloud/src/main.js b/pub/cloud/src/main.js similarity index 100% rename from base/pub/cloud/src/main.js rename to pub/cloud/src/main.js diff --git a/base/pub/coin/fab/hymn.hook b/pub/coin/fab/hymn.hook similarity index 100% rename from base/pub/coin/fab/hymn.hook rename to pub/coin/fab/hymn.hook diff --git a/base/pub/doc.md b/pub/doc.md similarity index 100% rename from base/pub/doc.md rename to pub/doc.md diff --git a/base/pub/doc/arvo.md b/pub/doc/arvo.md similarity index 100% rename from base/pub/doc/arvo.md rename to pub/doc/arvo.md diff --git a/base/pub/doc/arvo/ames.md b/pub/doc/arvo/ames.md similarity index 100% rename from base/pub/doc/arvo/ames.md rename to pub/doc/arvo/ames.md diff --git a/base/pub/doc/arvo/ames/commentary.md b/pub/doc/arvo/ames/commentary.md similarity index 100% rename from base/pub/doc/arvo/ames/commentary.md rename to pub/doc/arvo/ames/commentary.md diff --git a/base/pub/doc/arvo/arvo.md b/pub/doc/arvo/arvo.md similarity index 100% rename from base/pub/doc/arvo/arvo.md rename to pub/doc/arvo/arvo.md diff --git a/base/pub/doc/arvo/arvo/commentary.md b/pub/doc/arvo/arvo/commentary.md similarity index 100% rename from base/pub/doc/arvo/arvo/commentary.md rename to pub/doc/arvo/arvo/commentary.md diff --git a/base/pub/doc/arvo/clay.md b/pub/doc/arvo/clay.md similarity index 100% rename from base/pub/doc/arvo/clay.md rename to pub/doc/arvo/clay.md diff --git a/base/pub/doc/arvo/clay/commentary.md b/pub/doc/arvo/clay/commentary.md similarity index 100% rename from base/pub/doc/arvo/clay/commentary.md rename to pub/doc/arvo/clay/commentary.md diff --git a/base/pub/doc/arvo/dill.md b/pub/doc/arvo/dill.md similarity index 100% rename from base/pub/doc/arvo/dill.md rename to pub/doc/arvo/dill.md diff --git a/base/pub/doc/arvo/dill/commentary.md b/pub/doc/arvo/dill/commentary.md similarity index 100% rename from base/pub/doc/arvo/dill/commentary.md rename to pub/doc/arvo/dill/commentary.md diff --git a/base/pub/doc/arvo/eyre.md b/pub/doc/arvo/eyre.md similarity index 100% rename from base/pub/doc/arvo/eyre.md rename to pub/doc/arvo/eyre.md diff --git a/base/pub/doc/arvo/eyre/commentary.md b/pub/doc/arvo/eyre/commentary.md similarity index 100% rename from base/pub/doc/arvo/eyre/commentary.md rename to pub/doc/arvo/eyre/commentary.md diff --git a/base/pub/doc/arvo/ford.md b/pub/doc/arvo/ford.md similarity index 100% rename from base/pub/doc/arvo/ford.md rename to pub/doc/arvo/ford.md diff --git a/base/pub/doc/arvo/ford/commentary.md b/pub/doc/arvo/ford/commentary.md similarity index 100% rename from base/pub/doc/arvo/ford/commentary.md rename to pub/doc/arvo/ford/commentary.md diff --git a/base/pub/doc/arvo/gall.md b/pub/doc/arvo/gall.md similarity index 100% rename from base/pub/doc/arvo/gall.md rename to pub/doc/arvo/gall.md diff --git a/base/pub/doc/arvo/gall/gall.md b/pub/doc/arvo/gall/gall.md similarity index 100% rename from base/pub/doc/arvo/gall/gall.md rename to pub/doc/arvo/gall/gall.md diff --git a/base/pub/doc/arvo/ives.md b/pub/doc/arvo/ives.md similarity index 100% rename from base/pub/doc/arvo/ives.md rename to pub/doc/arvo/ives.md diff --git a/base/pub/doc/arvo/ives/ives.md b/pub/doc/arvo/ives/ives.md similarity index 100% rename from base/pub/doc/arvo/ives/ives.md rename to pub/doc/arvo/ives/ives.md diff --git a/base/pub/doc/arvo/jael.md b/pub/doc/arvo/jael.md similarity index 100% rename from base/pub/doc/arvo/jael.md rename to pub/doc/arvo/jael.md diff --git a/base/pub/doc/arvo/jael/jael.md b/pub/doc/arvo/jael/jael.md similarity index 100% rename from base/pub/doc/arvo/jael/jael.md rename to pub/doc/arvo/jael/jael.md diff --git a/base/pub/doc/arvo/kahn.md b/pub/doc/arvo/kahn.md similarity index 100% rename from base/pub/doc/arvo/kahn.md rename to pub/doc/arvo/kahn.md diff --git a/base/pub/doc/arvo/kahn/kahn.md b/pub/doc/arvo/kahn/kahn.md similarity index 100% rename from base/pub/doc/arvo/kahn/kahn.md rename to pub/doc/arvo/kahn/kahn.md diff --git a/base/pub/doc/arvo/lunt.md b/pub/doc/arvo/lunt.md similarity index 100% rename from base/pub/doc/arvo/lunt.md rename to pub/doc/arvo/lunt.md diff --git a/base/pub/doc/arvo/lunt/lunt.md b/pub/doc/arvo/lunt/lunt.md similarity index 100% rename from base/pub/doc/arvo/lunt/lunt.md rename to pub/doc/arvo/lunt/lunt.md diff --git a/base/pub/doc/arvo/time.md b/pub/doc/arvo/time.md similarity index 100% rename from base/pub/doc/arvo/time.md rename to pub/doc/arvo/time.md diff --git a/base/pub/doc/arvo/util.md b/pub/doc/arvo/util.md similarity index 100% rename from base/pub/doc/arvo/util.md rename to pub/doc/arvo/util.md diff --git a/base/pub/doc/guide.md b/pub/doc/guide.md similarity index 100% rename from base/pub/doc/guide.md rename to pub/doc/guide.md diff --git a/base/pub/doc/guide/a-ford.md b/pub/doc/guide/a-ford.md similarity index 100% rename from base/pub/doc/guide/a-ford.md rename to pub/doc/guide/a-ford.md diff --git a/base/pub/doc/guide/b-cli.md b/pub/doc/guide/b-cli.md similarity index 100% rename from base/pub/doc/guide/b-cli.md rename to pub/doc/guide/b-cli.md diff --git a/base/pub/doc/guide/c-gall.md b/pub/doc/guide/c-gall.md similarity index 100% rename from base/pub/doc/guide/c-gall.md rename to pub/doc/guide/c-gall.md diff --git a/base/pub/doc/guide/d-app.md b/pub/doc/guide/d-app.md similarity index 100% rename from base/pub/doc/guide/d-app.md rename to pub/doc/guide/d-app.md diff --git a/base/pub/doc/guide/e-dev.md b/pub/doc/guide/e-dev.md similarity index 100% rename from base/pub/doc/guide/e-dev.md rename to pub/doc/guide/e-dev.md diff --git a/base/pub/doc/hoon.md b/pub/doc/hoon.md similarity index 100% rename from base/pub/doc/hoon.md rename to pub/doc/hoon.md diff --git a/base/pub/doc/hoon/library.md b/pub/doc/hoon/library.md similarity index 100% rename from base/pub/doc/hoon/library.md rename to pub/doc/hoon/library.md diff --git a/base/pub/doc/hoon/library/0.md b/pub/doc/hoon/library/0.md similarity index 100% rename from base/pub/doc/hoon/library/0.md rename to pub/doc/hoon/library/0.md diff --git a/base/pub/doc/hoon/library/1.md b/pub/doc/hoon/library/1.md similarity index 100% rename from base/pub/doc/hoon/library/1.md rename to pub/doc/hoon/library/1.md diff --git a/base/pub/doc/hoon/library/2a.md b/pub/doc/hoon/library/2a.md similarity index 100% rename from base/pub/doc/hoon/library/2a.md rename to pub/doc/hoon/library/2a.md diff --git a/base/pub/doc/hoon/library/2b.md b/pub/doc/hoon/library/2b.md similarity index 100% rename from base/pub/doc/hoon/library/2b.md rename to pub/doc/hoon/library/2b.md diff --git a/base/pub/doc/hoon/library/2c.md b/pub/doc/hoon/library/2c.md similarity index 100% rename from base/pub/doc/hoon/library/2c.md rename to pub/doc/hoon/library/2c.md diff --git a/base/pub/doc/hoon/library/2da.md b/pub/doc/hoon/library/2da.md similarity index 100% rename from base/pub/doc/hoon/library/2da.md rename to pub/doc/hoon/library/2da.md diff --git a/base/pub/doc/hoon/library/2db.md b/pub/doc/hoon/library/2db.md similarity index 100% rename from base/pub/doc/hoon/library/2db.md rename to pub/doc/hoon/library/2db.md diff --git a/base/pub/doc/hoon/library/2dc.md b/pub/doc/hoon/library/2dc.md similarity index 100% rename from base/pub/doc/hoon/library/2dc.md rename to pub/doc/hoon/library/2dc.md diff --git a/base/pub/doc/hoon/library/2dd.md b/pub/doc/hoon/library/2dd.md similarity index 100% rename from base/pub/doc/hoon/library/2dd.md rename to pub/doc/hoon/library/2dd.md diff --git a/base/pub/doc/hoon/library/2ea.md b/pub/doc/hoon/library/2ea.md similarity index 100% rename from base/pub/doc/hoon/library/2ea.md rename to pub/doc/hoon/library/2ea.md diff --git a/base/pub/doc/hoon/library/2eb.md b/pub/doc/hoon/library/2eb.md similarity index 100% rename from base/pub/doc/hoon/library/2eb.md rename to pub/doc/hoon/library/2eb.md diff --git a/base/pub/doc/hoon/library/2ec.md b/pub/doc/hoon/library/2ec.md similarity index 100% rename from base/pub/doc/hoon/library/2ec.md rename to pub/doc/hoon/library/2ec.md diff --git a/base/pub/doc/hoon/library/2ed.md b/pub/doc/hoon/library/2ed.md similarity index 100% rename from base/pub/doc/hoon/library/2ed.md rename to pub/doc/hoon/library/2ed.md diff --git a/base/pub/doc/hoon/library/2ee.md b/pub/doc/hoon/library/2ee.md similarity index 100% rename from base/pub/doc/hoon/library/2ee.md rename to pub/doc/hoon/library/2ee.md diff --git a/base/pub/doc/hoon/library/2ef.md b/pub/doc/hoon/library/2ef.md similarity index 100% rename from base/pub/doc/hoon/library/2ef.md rename to pub/doc/hoon/library/2ef.md diff --git a/base/pub/doc/hoon/library/2eg.md b/pub/doc/hoon/library/2eg.md similarity index 100% rename from base/pub/doc/hoon/library/2eg.md rename to pub/doc/hoon/library/2eg.md diff --git a/base/pub/doc/hoon/library/2eh.md b/pub/doc/hoon/library/2eh.md similarity index 100% rename from base/pub/doc/hoon/library/2eh.md rename to pub/doc/hoon/library/2eh.md diff --git a/base/pub/doc/hoon/library/2ei.md b/pub/doc/hoon/library/2ei.md similarity index 100% rename from base/pub/doc/hoon/library/2ei.md rename to pub/doc/hoon/library/2ei.md diff --git a/base/pub/doc/hoon/library/2ej.md b/pub/doc/hoon/library/2ej.md similarity index 100% rename from base/pub/doc/hoon/library/2ej.md rename to pub/doc/hoon/library/2ej.md diff --git a/base/pub/doc/hoon/library/2ek.md b/pub/doc/hoon/library/2ek.md similarity index 100% rename from base/pub/doc/hoon/library/2ek.md rename to pub/doc/hoon/library/2ek.md diff --git a/base/pub/doc/hoon/library/2el.md b/pub/doc/hoon/library/2el.md similarity index 100% rename from base/pub/doc/hoon/library/2el.md rename to pub/doc/hoon/library/2el.md diff --git a/base/pub/doc/hoon/library/2em.md b/pub/doc/hoon/library/2em.md similarity index 100% rename from base/pub/doc/hoon/library/2em.md rename to pub/doc/hoon/library/2em.md diff --git a/base/pub/doc/hoon/library/2en.md b/pub/doc/hoon/library/2en.md similarity index 100% rename from base/pub/doc/hoon/library/2en.md rename to pub/doc/hoon/library/2en.md diff --git a/base/pub/doc/hoon/library/2eo.md b/pub/doc/hoon/library/2eo.md similarity index 100% rename from base/pub/doc/hoon/library/2eo.md rename to pub/doc/hoon/library/2eo.md diff --git a/base/pub/doc/hoon/library/2ep.md b/pub/doc/hoon/library/2ep.md similarity index 100% rename from base/pub/doc/hoon/library/2ep.md rename to pub/doc/hoon/library/2ep.md diff --git a/base/pub/doc/hoon/library/2ew.md b/pub/doc/hoon/library/2ew.md similarity index 100% rename from base/pub/doc/hoon/library/2ew.md rename to pub/doc/hoon/library/2ew.md diff --git a/base/pub/doc/hoon/library/2ex.md b/pub/doc/hoon/library/2ex.md similarity index 100% rename from base/pub/doc/hoon/library/2ex.md rename to pub/doc/hoon/library/2ex.md diff --git a/base/pub/doc/hoon/library/2ey.md b/pub/doc/hoon/library/2ey.md similarity index 100% rename from base/pub/doc/hoon/library/2ey.md rename to pub/doc/hoon/library/2ey.md diff --git a/base/pub/doc/hoon/library/2ez.md b/pub/doc/hoon/library/2ez.md similarity index 100% rename from base/pub/doc/hoon/library/2ez.md rename to pub/doc/hoon/library/2ez.md diff --git a/base/pub/doc/hoon/library/3ba.md b/pub/doc/hoon/library/3ba.md similarity index 100% rename from base/pub/doc/hoon/library/3ba.md rename to pub/doc/hoon/library/3ba.md diff --git a/base/pub/doc/hoon/library/3bb.md b/pub/doc/hoon/library/3bb.md similarity index 100% rename from base/pub/doc/hoon/library/3bb.md rename to pub/doc/hoon/library/3bb.md diff --git a/base/pub/doc/hoon/library/3bc.md b/pub/doc/hoon/library/3bc.md similarity index 100% rename from base/pub/doc/hoon/library/3bc.md rename to pub/doc/hoon/library/3bc.md diff --git a/base/pub/doc/hoon/library/3bd.md b/pub/doc/hoon/library/3bd.md similarity index 100% rename from base/pub/doc/hoon/library/3bd.md rename to pub/doc/hoon/library/3bd.md diff --git a/base/pub/doc/hoon/library/3be.md b/pub/doc/hoon/library/3be.md similarity index 100% rename from base/pub/doc/hoon/library/3be.md rename to pub/doc/hoon/library/3be.md diff --git a/base/pub/doc/hoon/library/3bf.md b/pub/doc/hoon/library/3bf.md similarity index 100% rename from base/pub/doc/hoon/library/3bf.md rename to pub/doc/hoon/library/3bf.md diff --git a/base/pub/doc/hoon/library/3bg.md b/pub/doc/hoon/library/3bg.md similarity index 100% rename from base/pub/doc/hoon/library/3bg.md rename to pub/doc/hoon/library/3bg.md diff --git a/base/pub/doc/hoon/library/3bh.md b/pub/doc/hoon/library/3bh.md similarity index 100% rename from base/pub/doc/hoon/library/3bh.md rename to pub/doc/hoon/library/3bh.md diff --git a/base/pub/doc/hoon/library/3bi.md b/pub/doc/hoon/library/3bi.md similarity index 100% rename from base/pub/doc/hoon/library/3bi.md rename to pub/doc/hoon/library/3bi.md diff --git a/base/pub/doc/hoon/reference.md b/pub/doc/hoon/reference.md similarity index 100% rename from base/pub/doc/hoon/reference.md rename to pub/doc/hoon/reference.md diff --git a/base/pub/doc/hoon/reference/odors.md b/pub/doc/hoon/reference/odors.md similarity index 100% rename from base/pub/doc/hoon/reference/odors.md rename to pub/doc/hoon/reference/odors.md diff --git a/base/pub/doc/hoon/runes.md b/pub/doc/hoon/runes.md similarity index 100% rename from base/pub/doc/hoon/runes.md rename to pub/doc/hoon/runes.md diff --git a/base/pub/doc/hoon/runes/bc.md b/pub/doc/hoon/runes/bc.md similarity index 100% rename from base/pub/doc/hoon/runes/bc.md rename to pub/doc/hoon/runes/bc.md diff --git a/base/pub/doc/hoon/runes/bc/bcbr.md b/pub/doc/hoon/runes/bc/bcbr.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bcbr.md rename to pub/doc/hoon/runes/bc/bcbr.md diff --git a/base/pub/doc/hoon/runes/bc/bccb.md b/pub/doc/hoon/runes/bc/bccb.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bccb.md rename to pub/doc/hoon/runes/bc/bccb.md diff --git a/base/pub/doc/hoon/runes/bc/bccl.md b/pub/doc/hoon/runes/bc/bccl.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bccl.md rename to pub/doc/hoon/runes/bc/bccl.md diff --git a/base/pub/doc/hoon/runes/bc/bccm.md b/pub/doc/hoon/runes/bc/bccm.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bccm.md rename to pub/doc/hoon/runes/bc/bccm.md diff --git a/base/pub/doc/hoon/runes/bc/bccn.md b/pub/doc/hoon/runes/bc/bccn.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bccn.md rename to pub/doc/hoon/runes/bc/bccn.md diff --git a/base/pub/doc/hoon/runes/bc/bckt.md b/pub/doc/hoon/runes/bc/bckt.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bckt.md rename to pub/doc/hoon/runes/bc/bckt.md diff --git a/base/pub/doc/hoon/runes/bc/bcls.md b/pub/doc/hoon/runes/bc/bcls.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bcls.md rename to pub/doc/hoon/runes/bc/bcls.md diff --git a/base/pub/doc/hoon/runes/bc/bcpm.md b/pub/doc/hoon/runes/bc/bcpm.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bcpm.md rename to pub/doc/hoon/runes/bc/bcpm.md diff --git a/base/pub/doc/hoon/runes/bc/bcpt.md b/pub/doc/hoon/runes/bc/bcpt.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bcpt.md rename to pub/doc/hoon/runes/bc/bcpt.md diff --git a/base/pub/doc/hoon/runes/bc/bctr.md b/pub/doc/hoon/runes/bc/bctr.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bctr.md rename to pub/doc/hoon/runes/bc/bctr.md diff --git a/base/pub/doc/hoon/runes/bc/bcts.md b/pub/doc/hoon/runes/bc/bcts.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bcts.md rename to pub/doc/hoon/runes/bc/bcts.md diff --git a/base/pub/doc/hoon/runes/bc/bcwt.md b/pub/doc/hoon/runes/bc/bcwt.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bcwt.md rename to pub/doc/hoon/runes/bc/bcwt.md diff --git a/base/pub/doc/hoon/runes/bc/bczp.md b/pub/doc/hoon/runes/bc/bczp.md similarity index 100% rename from base/pub/doc/hoon/runes/bc/bczp.md rename to pub/doc/hoon/runes/bc/bczp.md diff --git a/base/pub/doc/hoon/runes/br.md b/pub/doc/hoon/runes/br.md similarity index 100% rename from base/pub/doc/hoon/runes/br.md rename to pub/doc/hoon/runes/br.md diff --git a/base/pub/doc/hoon/runes/br/brcb.md b/pub/doc/hoon/runes/br/brcb.md similarity index 100% rename from base/pub/doc/hoon/runes/br/brcb.md rename to pub/doc/hoon/runes/br/brcb.md diff --git a/base/pub/doc/hoon/runes/br/brcn.md b/pub/doc/hoon/runes/br/brcn.md similarity index 100% rename from base/pub/doc/hoon/runes/br/brcn.md rename to pub/doc/hoon/runes/br/brcn.md diff --git a/base/pub/doc/hoon/runes/br/brdt.md b/pub/doc/hoon/runes/br/brdt.md similarity index 100% rename from base/pub/doc/hoon/runes/br/brdt.md rename to pub/doc/hoon/runes/br/brdt.md diff --git a/base/pub/doc/hoon/runes/br/brfs.md b/pub/doc/hoon/runes/br/brfs.md similarity index 100% rename from base/pub/doc/hoon/runes/br/brfs.md rename to pub/doc/hoon/runes/br/brfs.md diff --git a/base/pub/doc/hoon/runes/br/brhp.md b/pub/doc/hoon/runes/br/brhp.md similarity index 100% rename from base/pub/doc/hoon/runes/br/brhp.md rename to pub/doc/hoon/runes/br/brhp.md diff --git a/base/pub/doc/hoon/runes/br/brkt.md b/pub/doc/hoon/runes/br/brkt.md similarity index 100% rename from base/pub/doc/hoon/runes/br/brkt.md rename to pub/doc/hoon/runes/br/brkt.md diff --git a/base/pub/doc/hoon/runes/br/brls.md b/pub/doc/hoon/runes/br/brls.md similarity index 100% rename from base/pub/doc/hoon/runes/br/brls.md rename to pub/doc/hoon/runes/br/brls.md diff --git a/base/pub/doc/hoon/runes/br/brtr.md b/pub/doc/hoon/runes/br/brtr.md similarity index 100% rename from base/pub/doc/hoon/runes/br/brtr.md rename to pub/doc/hoon/runes/br/brtr.md diff --git a/base/pub/doc/hoon/runes/br/brts.md b/pub/doc/hoon/runes/br/brts.md similarity index 100% rename from base/pub/doc/hoon/runes/br/brts.md rename to pub/doc/hoon/runes/br/brts.md diff --git a/base/pub/doc/hoon/runes/br/brwt.md b/pub/doc/hoon/runes/br/brwt.md similarity index 100% rename from base/pub/doc/hoon/runes/br/brwt.md rename to pub/doc/hoon/runes/br/brwt.md diff --git a/base/pub/doc/hoon/runes/cl.md b/pub/doc/hoon/runes/cl.md similarity index 100% rename from base/pub/doc/hoon/runes/cl.md rename to pub/doc/hoon/runes/cl.md diff --git a/base/pub/doc/hoon/runes/cl/clcb.md b/pub/doc/hoon/runes/cl/clcb.md similarity index 100% rename from base/pub/doc/hoon/runes/cl/clcb.md rename to pub/doc/hoon/runes/cl/clcb.md diff --git a/base/pub/doc/hoon/runes/cl/clfs.md b/pub/doc/hoon/runes/cl/clfs.md similarity index 100% rename from base/pub/doc/hoon/runes/cl/clfs.md rename to pub/doc/hoon/runes/cl/clfs.md diff --git a/base/pub/doc/hoon/runes/cl/clhp.md b/pub/doc/hoon/runes/cl/clhp.md similarity index 100% rename from base/pub/doc/hoon/runes/cl/clhp.md rename to pub/doc/hoon/runes/cl/clhp.md diff --git a/base/pub/doc/hoon/runes/cl/clkt.md b/pub/doc/hoon/runes/cl/clkt.md similarity index 100% rename from base/pub/doc/hoon/runes/cl/clkt.md rename to pub/doc/hoon/runes/cl/clkt.md diff --git a/base/pub/doc/hoon/runes/cl/clls.md b/pub/doc/hoon/runes/cl/clls.md similarity index 100% rename from base/pub/doc/hoon/runes/cl/clls.md rename to pub/doc/hoon/runes/cl/clls.md diff --git a/base/pub/doc/hoon/runes/cl/clsg.md b/pub/doc/hoon/runes/cl/clsg.md similarity index 100% rename from base/pub/doc/hoon/runes/cl/clsg.md rename to pub/doc/hoon/runes/cl/clsg.md diff --git a/base/pub/doc/hoon/runes/cl/cltr.md b/pub/doc/hoon/runes/cl/cltr.md similarity index 100% rename from base/pub/doc/hoon/runes/cl/cltr.md rename to pub/doc/hoon/runes/cl/cltr.md diff --git a/base/pub/doc/hoon/runes/cn.md b/pub/doc/hoon/runes/cn.md similarity index 100% rename from base/pub/doc/hoon/runes/cn.md rename to pub/doc/hoon/runes/cn.md diff --git a/base/pub/doc/hoon/runes/cn/cncb.md b/pub/doc/hoon/runes/cn/cncb.md similarity index 100% rename from base/pub/doc/hoon/runes/cn/cncb.md rename to pub/doc/hoon/runes/cn/cncb.md diff --git a/base/pub/doc/hoon/runes/cn/cncl.md b/pub/doc/hoon/runes/cn/cncl.md similarity index 100% rename from base/pub/doc/hoon/runes/cn/cncl.md rename to pub/doc/hoon/runes/cn/cncl.md diff --git a/base/pub/doc/hoon/runes/cn/cndt.md b/pub/doc/hoon/runes/cn/cndt.md similarity index 100% rename from base/pub/doc/hoon/runes/cn/cndt.md rename to pub/doc/hoon/runes/cn/cndt.md diff --git a/base/pub/doc/hoon/runes/cn/cnhp.md b/pub/doc/hoon/runes/cn/cnhp.md similarity index 100% rename from base/pub/doc/hoon/runes/cn/cnhp.md rename to pub/doc/hoon/runes/cn/cnhp.md diff --git a/base/pub/doc/hoon/runes/cn/cnkt.md b/pub/doc/hoon/runes/cn/cnkt.md similarity index 100% rename from base/pub/doc/hoon/runes/cn/cnkt.md rename to pub/doc/hoon/runes/cn/cnkt.md diff --git a/base/pub/doc/hoon/runes/cn/cnls.md b/pub/doc/hoon/runes/cn/cnls.md similarity index 100% rename from base/pub/doc/hoon/runes/cn/cnls.md rename to pub/doc/hoon/runes/cn/cnls.md diff --git a/base/pub/doc/hoon/runes/cn/cnsg.md b/pub/doc/hoon/runes/cn/cnsg.md similarity index 100% rename from base/pub/doc/hoon/runes/cn/cnsg.md rename to pub/doc/hoon/runes/cn/cnsg.md diff --git a/base/pub/doc/hoon/runes/cn/cntr.md b/pub/doc/hoon/runes/cn/cntr.md similarity index 100% rename from base/pub/doc/hoon/runes/cn/cntr.md rename to pub/doc/hoon/runes/cn/cntr.md diff --git a/base/pub/doc/hoon/runes/cn/cnts.md b/pub/doc/hoon/runes/cn/cnts.md similarity index 100% rename from base/pub/doc/hoon/runes/cn/cnts.md rename to pub/doc/hoon/runes/cn/cnts.md diff --git a/base/pub/doc/hoon/runes/cn/cnzy.md b/pub/doc/hoon/runes/cn/cnzy.md similarity index 100% rename from base/pub/doc/hoon/runes/cn/cnzy.md rename to pub/doc/hoon/runes/cn/cnzy.md diff --git a/base/pub/doc/hoon/runes/cn/cnzz.md b/pub/doc/hoon/runes/cn/cnzz.md similarity index 100% rename from base/pub/doc/hoon/runes/cn/cnzz.md rename to pub/doc/hoon/runes/cn/cnzz.md diff --git a/base/pub/doc/hoon/runes/dt.md b/pub/doc/hoon/runes/dt.md similarity index 100% rename from base/pub/doc/hoon/runes/dt.md rename to pub/doc/hoon/runes/dt.md diff --git a/base/pub/doc/hoon/runes/dt/dtkt.md b/pub/doc/hoon/runes/dt/dtkt.md similarity index 100% rename from base/pub/doc/hoon/runes/dt/dtkt.md rename to pub/doc/hoon/runes/dt/dtkt.md diff --git a/base/pub/doc/hoon/runes/dt/dtls.md b/pub/doc/hoon/runes/dt/dtls.md similarity index 100% rename from base/pub/doc/hoon/runes/dt/dtls.md rename to pub/doc/hoon/runes/dt/dtls.md diff --git a/base/pub/doc/hoon/runes/dt/dttr.md b/pub/doc/hoon/runes/dt/dttr.md similarity index 100% rename from base/pub/doc/hoon/runes/dt/dttr.md rename to pub/doc/hoon/runes/dt/dttr.md diff --git a/base/pub/doc/hoon/runes/dt/dtts.md b/pub/doc/hoon/runes/dt/dtts.md similarity index 100% rename from base/pub/doc/hoon/runes/dt/dtts.md rename to pub/doc/hoon/runes/dt/dtts.md diff --git a/base/pub/doc/hoon/runes/dt/dtwt.md b/pub/doc/hoon/runes/dt/dtwt.md similarity index 100% rename from base/pub/doc/hoon/runes/dt/dtwt.md rename to pub/doc/hoon/runes/dt/dtwt.md diff --git a/base/pub/doc/hoon/runes/dt/dtzy.md b/pub/doc/hoon/runes/dt/dtzy.md similarity index 100% rename from base/pub/doc/hoon/runes/dt/dtzy.md rename to pub/doc/hoon/runes/dt/dtzy.md diff --git a/base/pub/doc/hoon/runes/dt/dtzz.md b/pub/doc/hoon/runes/dt/dtzz.md similarity index 100% rename from base/pub/doc/hoon/runes/dt/dtzz.md rename to pub/doc/hoon/runes/dt/dtzz.md diff --git a/base/pub/doc/hoon/runes/hx.md b/pub/doc/hoon/runes/hx.md similarity index 100% rename from base/pub/doc/hoon/runes/hx.md rename to pub/doc/hoon/runes/hx.md diff --git a/base/pub/doc/hoon/runes/hx/hxgl.md b/pub/doc/hoon/runes/hx/hxgl.md similarity index 100% rename from base/pub/doc/hoon/runes/hx/hxgl.md rename to pub/doc/hoon/runes/hx/hxgl.md diff --git a/base/pub/doc/hoon/runes/hx/hxgr.md b/pub/doc/hoon/runes/hx/hxgr.md similarity index 100% rename from base/pub/doc/hoon/runes/hx/hxgr.md rename to pub/doc/hoon/runes/hx/hxgr.md diff --git a/base/pub/doc/hoon/runes/kt.md b/pub/doc/hoon/runes/kt.md similarity index 100% rename from base/pub/doc/hoon/runes/kt.md rename to pub/doc/hoon/runes/kt.md diff --git a/base/pub/doc/hoon/runes/kt/ktbr.md b/pub/doc/hoon/runes/kt/ktbr.md similarity index 100% rename from base/pub/doc/hoon/runes/kt/ktbr.md rename to pub/doc/hoon/runes/kt/ktbr.md diff --git a/base/pub/doc/hoon/runes/kt/ktdt.md b/pub/doc/hoon/runes/kt/ktdt.md similarity index 100% rename from base/pub/doc/hoon/runes/kt/ktdt.md rename to pub/doc/hoon/runes/kt/ktdt.md diff --git a/base/pub/doc/hoon/runes/kt/kthp.md b/pub/doc/hoon/runes/kt/kthp.md similarity index 100% rename from base/pub/doc/hoon/runes/kt/kthp.md rename to pub/doc/hoon/runes/kt/kthp.md diff --git a/base/pub/doc/hoon/runes/kt/ktls.md b/pub/doc/hoon/runes/kt/ktls.md similarity index 100% rename from base/pub/doc/hoon/runes/kt/ktls.md rename to pub/doc/hoon/runes/kt/ktls.md diff --git a/base/pub/doc/hoon/runes/kt/ktpm.md b/pub/doc/hoon/runes/kt/ktpm.md similarity index 100% rename from base/pub/doc/hoon/runes/kt/ktpm.md rename to pub/doc/hoon/runes/kt/ktpm.md diff --git a/base/pub/doc/hoon/runes/kt/ktsg.md b/pub/doc/hoon/runes/kt/ktsg.md similarity index 100% rename from base/pub/doc/hoon/runes/kt/ktsg.md rename to pub/doc/hoon/runes/kt/ktsg.md diff --git a/base/pub/doc/hoon/runes/kt/ktts.md b/pub/doc/hoon/runes/kt/ktts.md similarity index 100% rename from base/pub/doc/hoon/runes/kt/ktts.md rename to pub/doc/hoon/runes/kt/ktts.md diff --git a/base/pub/doc/hoon/runes/kt/ktwt.md b/pub/doc/hoon/runes/kt/ktwt.md similarity index 100% rename from base/pub/doc/hoon/runes/kt/ktwt.md rename to pub/doc/hoon/runes/kt/ktwt.md diff --git a/base/pub/doc/hoon/runes/sg.md b/pub/doc/hoon/runes/sg.md similarity index 100% rename from base/pub/doc/hoon/runes/sg.md rename to pub/doc/hoon/runes/sg.md diff --git a/base/pub/doc/hoon/runes/sg/sgbc.md b/pub/doc/hoon/runes/sg/sgbc.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sgbc.md rename to pub/doc/hoon/runes/sg/sgbc.md diff --git a/base/pub/doc/hoon/runes/sg/sgbr.md b/pub/doc/hoon/runes/sg/sgbr.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sgbr.md rename to pub/doc/hoon/runes/sg/sgbr.md diff --git a/base/pub/doc/hoon/runes/sg/sgcb.md b/pub/doc/hoon/runes/sg/sgcb.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sgcb.md rename to pub/doc/hoon/runes/sg/sgcb.md diff --git a/base/pub/doc/hoon/runes/sg/sgcn.md b/pub/doc/hoon/runes/sg/sgcn.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sgcn.md rename to pub/doc/hoon/runes/sg/sgcn.md diff --git a/base/pub/doc/hoon/runes/sg/sgfs.md b/pub/doc/hoon/runes/sg/sgfs.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sgfs.md rename to pub/doc/hoon/runes/sg/sgfs.md diff --git a/base/pub/doc/hoon/runes/sg/sggl.md b/pub/doc/hoon/runes/sg/sggl.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sggl.md rename to pub/doc/hoon/runes/sg/sggl.md diff --git a/base/pub/doc/hoon/runes/sg/sggr.md b/pub/doc/hoon/runes/sg/sggr.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sggr.md rename to pub/doc/hoon/runes/sg/sggr.md diff --git a/base/pub/doc/hoon/runes/sg/sgls.md b/pub/doc/hoon/runes/sg/sgls.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sgls.md rename to pub/doc/hoon/runes/sg/sgls.md diff --git a/base/pub/doc/hoon/runes/sg/sgpm.md b/pub/doc/hoon/runes/sg/sgpm.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sgpm.md rename to pub/doc/hoon/runes/sg/sgpm.md diff --git a/base/pub/doc/hoon/runes/sg/sgts.md b/pub/doc/hoon/runes/sg/sgts.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sgts.md rename to pub/doc/hoon/runes/sg/sgts.md diff --git a/base/pub/doc/hoon/runes/sg/sgwt.md b/pub/doc/hoon/runes/sg/sgwt.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sgwt.md rename to pub/doc/hoon/runes/sg/sgwt.md diff --git a/base/pub/doc/hoon/runes/sg/sgzp.md b/pub/doc/hoon/runes/sg/sgzp.md similarity index 100% rename from base/pub/doc/hoon/runes/sg/sgzp.md rename to pub/doc/hoon/runes/sg/sgzp.md diff --git a/base/pub/doc/hoon/runes/sm.md b/pub/doc/hoon/runes/sm.md similarity index 100% rename from base/pub/doc/hoon/runes/sm.md rename to pub/doc/hoon/runes/sm.md diff --git a/base/pub/doc/hoon/runes/sm/smcl.md b/pub/doc/hoon/runes/sm/smcl.md similarity index 100% rename from base/pub/doc/hoon/runes/sm/smcl.md rename to pub/doc/hoon/runes/sm/smcl.md diff --git a/base/pub/doc/hoon/runes/sm/smcn.md b/pub/doc/hoon/runes/sm/smcn.md similarity index 100% rename from base/pub/doc/hoon/runes/sm/smcn.md rename to pub/doc/hoon/runes/sm/smcn.md diff --git a/base/pub/doc/hoon/runes/sm/smdq.md b/pub/doc/hoon/runes/sm/smdq.md similarity index 100% rename from base/pub/doc/hoon/runes/sm/smdq.md rename to pub/doc/hoon/runes/sm/smdq.md diff --git a/base/pub/doc/hoon/runes/sm/smhp.md b/pub/doc/hoon/runes/sm/smhp.md similarity index 100% rename from base/pub/doc/hoon/runes/sm/smhp.md rename to pub/doc/hoon/runes/sm/smhp.md diff --git a/base/pub/doc/hoon/runes/sm/smls.md b/pub/doc/hoon/runes/sm/smls.md similarity index 100% rename from base/pub/doc/hoon/runes/sm/smls.md rename to pub/doc/hoon/runes/sm/smls.md diff --git a/base/pub/doc/hoon/runes/sm/smsg.md b/pub/doc/hoon/runes/sm/smsg.md similarity index 100% rename from base/pub/doc/hoon/runes/sm/smsg.md rename to pub/doc/hoon/runes/sm/smsg.md diff --git a/base/pub/doc/hoon/runes/sm/smsm.md b/pub/doc/hoon/runes/sm/smsm.md similarity index 100% rename from base/pub/doc/hoon/runes/sm/smsm.md rename to pub/doc/hoon/runes/sm/smsm.md diff --git a/base/pub/doc/hoon/runes/sm/smtr.md b/pub/doc/hoon/runes/sm/smtr.md similarity index 100% rename from base/pub/doc/hoon/runes/sm/smtr.md rename to pub/doc/hoon/runes/sm/smtr.md diff --git a/base/pub/doc/hoon/runes/sm/smzz.md b/pub/doc/hoon/runes/sm/smzz.md similarity index 100% rename from base/pub/doc/hoon/runes/sm/smzz.md rename to pub/doc/hoon/runes/sm/smzz.md diff --git a/base/pub/doc/hoon/runes/ts.md b/pub/doc/hoon/runes/ts.md similarity index 100% rename from base/pub/doc/hoon/runes/ts.md rename to pub/doc/hoon/runes/ts.md diff --git a/base/pub/doc/hoon/runes/ts/tsbr.md b/pub/doc/hoon/runes/ts/tsbr.md similarity index 100% rename from base/pub/doc/hoon/runes/ts/tsbr.md rename to pub/doc/hoon/runes/ts/tsbr.md diff --git a/base/pub/doc/hoon/runes/ts/tscl.md b/pub/doc/hoon/runes/ts/tscl.md similarity index 100% rename from base/pub/doc/hoon/runes/ts/tscl.md rename to pub/doc/hoon/runes/ts/tscl.md diff --git a/base/pub/doc/hoon/runes/ts/tsdt.md b/pub/doc/hoon/runes/ts/tsdt.md similarity index 100% rename from base/pub/doc/hoon/runes/ts/tsdt.md rename to pub/doc/hoon/runes/ts/tsdt.md diff --git a/base/pub/doc/hoon/runes/ts/tsgl.md b/pub/doc/hoon/runes/ts/tsgl.md similarity index 100% rename from base/pub/doc/hoon/runes/ts/tsgl.md rename to pub/doc/hoon/runes/ts/tsgl.md diff --git a/base/pub/doc/hoon/runes/ts/tsgr.md b/pub/doc/hoon/runes/ts/tsgr.md similarity index 100% rename from base/pub/doc/hoon/runes/ts/tsgr.md rename to pub/doc/hoon/runes/ts/tsgr.md diff --git a/base/pub/doc/hoon/runes/ts/tshp.md b/pub/doc/hoon/runes/ts/tshp.md similarity index 100% rename from base/pub/doc/hoon/runes/ts/tshp.md rename to pub/doc/hoon/runes/ts/tshp.md diff --git a/base/pub/doc/hoon/runes/ts/tskt.md b/pub/doc/hoon/runes/ts/tskt.md similarity index 100% rename from base/pub/doc/hoon/runes/ts/tskt.md rename to pub/doc/hoon/runes/ts/tskt.md diff --git a/base/pub/doc/hoon/runes/ts/tsls.md b/pub/doc/hoon/runes/ts/tsls.md similarity index 100% rename from base/pub/doc/hoon/runes/ts/tsls.md rename to pub/doc/hoon/runes/ts/tsls.md diff --git a/base/pub/doc/hoon/runes/ts/tssg.md b/pub/doc/hoon/runes/ts/tssg.md similarity index 100% rename from base/pub/doc/hoon/runes/ts/tssg.md rename to pub/doc/hoon/runes/ts/tssg.md diff --git a/base/pub/doc/hoon/runes/ts/tstr.md b/pub/doc/hoon/runes/ts/tstr.md similarity index 100% rename from base/pub/doc/hoon/runes/ts/tstr.md rename to pub/doc/hoon/runes/ts/tstr.md diff --git a/base/pub/doc/hoon/runes/wt.md b/pub/doc/hoon/runes/wt.md similarity index 100% rename from base/pub/doc/hoon/runes/wt.md rename to pub/doc/hoon/runes/wt.md diff --git a/base/pub/doc/hoon/runes/wt/wtbr.md b/pub/doc/hoon/runes/wt/wtbr.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtbr.md rename to pub/doc/hoon/runes/wt/wtbr.md diff --git a/base/pub/doc/hoon/runes/wt/wtcl.md b/pub/doc/hoon/runes/wt/wtcl.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtcl.md rename to pub/doc/hoon/runes/wt/wtcl.md diff --git a/base/pub/doc/hoon/runes/wt/wtdt.md b/pub/doc/hoon/runes/wt/wtdt.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtdt.md rename to pub/doc/hoon/runes/wt/wtdt.md diff --git a/base/pub/doc/hoon/runes/wt/wtgl.md b/pub/doc/hoon/runes/wt/wtgl.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtgl.md rename to pub/doc/hoon/runes/wt/wtgl.md diff --git a/base/pub/doc/hoon/runes/wt/wtgr.md b/pub/doc/hoon/runes/wt/wtgr.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtgr.md rename to pub/doc/hoon/runes/wt/wtgr.md diff --git a/base/pub/doc/hoon/runes/wt/wthp.md b/pub/doc/hoon/runes/wt/wthp.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wthp.md rename to pub/doc/hoon/runes/wt/wthp.md diff --git a/base/pub/doc/hoon/runes/wt/wthz.md b/pub/doc/hoon/runes/wt/wthz.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wthz.md rename to pub/doc/hoon/runes/wt/wthz.md diff --git a/base/pub/doc/hoon/runes/wt/wtkt.md b/pub/doc/hoon/runes/wt/wtkt.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtkt.md rename to pub/doc/hoon/runes/wt/wtkt.md diff --git a/base/pub/doc/hoon/runes/wt/wtkz.md b/pub/doc/hoon/runes/wt/wtkz.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtkz.md rename to pub/doc/hoon/runes/wt/wtkz.md diff --git a/base/pub/doc/hoon/runes/wt/wtls.md b/pub/doc/hoon/runes/wt/wtls.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtls.md rename to pub/doc/hoon/runes/wt/wtls.md diff --git a/base/pub/doc/hoon/runes/wt/wtlz.md b/pub/doc/hoon/runes/wt/wtlz.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtlz.md rename to pub/doc/hoon/runes/wt/wtlz.md diff --git a/base/pub/doc/hoon/runes/wt/wtpm.md b/pub/doc/hoon/runes/wt/wtpm.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtpm.md rename to pub/doc/hoon/runes/wt/wtpm.md diff --git a/base/pub/doc/hoon/runes/wt/wtpt.md b/pub/doc/hoon/runes/wt/wtpt.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtpt.md rename to pub/doc/hoon/runes/wt/wtpt.md diff --git a/base/pub/doc/hoon/runes/wt/wtpz.md b/pub/doc/hoon/runes/wt/wtpz.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtpz.md rename to pub/doc/hoon/runes/wt/wtpz.md diff --git a/base/pub/doc/hoon/runes/wt/wtsg.md b/pub/doc/hoon/runes/wt/wtsg.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtsg.md rename to pub/doc/hoon/runes/wt/wtsg.md diff --git a/base/pub/doc/hoon/runes/wt/wtsz.md b/pub/doc/hoon/runes/wt/wtsz.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtsz.md rename to pub/doc/hoon/runes/wt/wtsz.md diff --git a/base/pub/doc/hoon/runes/wt/wtts.md b/pub/doc/hoon/runes/wt/wtts.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtts.md rename to pub/doc/hoon/runes/wt/wtts.md diff --git a/base/pub/doc/hoon/runes/wt/wttz.md b/pub/doc/hoon/runes/wt/wttz.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wttz.md rename to pub/doc/hoon/runes/wt/wttz.md diff --git a/base/pub/doc/hoon/runes/wt/wtzp.md b/pub/doc/hoon/runes/wt/wtzp.md similarity index 100% rename from base/pub/doc/hoon/runes/wt/wtzp.md rename to pub/doc/hoon/runes/wt/wtzp.md diff --git a/base/pub/doc/hoon/runes/zp.md b/pub/doc/hoon/runes/zp.md similarity index 100% rename from base/pub/doc/hoon/runes/zp.md rename to pub/doc/hoon/runes/zp.md diff --git a/base/pub/doc/hoon/runes/zp/zpcb.md b/pub/doc/hoon/runes/zp/zpcb.md similarity index 100% rename from base/pub/doc/hoon/runes/zp/zpcb.md rename to pub/doc/hoon/runes/zp/zpcb.md diff --git a/base/pub/doc/hoon/runes/zp/zpcm.md b/pub/doc/hoon/runes/zp/zpcm.md similarity index 100% rename from base/pub/doc/hoon/runes/zp/zpcm.md rename to pub/doc/hoon/runes/zp/zpcm.md diff --git a/base/pub/doc/hoon/runes/zp/zpfs.md b/pub/doc/hoon/runes/zp/zpfs.md similarity index 100% rename from base/pub/doc/hoon/runes/zp/zpfs.md rename to pub/doc/hoon/runes/zp/zpfs.md diff --git a/base/pub/doc/hoon/runes/zp/zpgr.md b/pub/doc/hoon/runes/zp/zpgr.md similarity index 100% rename from base/pub/doc/hoon/runes/zp/zpgr.md rename to pub/doc/hoon/runes/zp/zpgr.md diff --git a/base/pub/doc/hoon/runes/zp/zpsm.md b/pub/doc/hoon/runes/zp/zpsm.md similarity index 100% rename from base/pub/doc/hoon/runes/zp/zpsm.md rename to pub/doc/hoon/runes/zp/zpsm.md diff --git a/base/pub/doc/hoon/runes/zp/zpts.md b/pub/doc/hoon/runes/zp/zpts.md similarity index 100% rename from base/pub/doc/hoon/runes/zp/zpts.md rename to pub/doc/hoon/runes/zp/zpts.md diff --git a/base/pub/doc/hoon/runes/zp/zpwt.md b/pub/doc/hoon/runes/zp/zpwt.md similarity index 100% rename from base/pub/doc/hoon/runes/zp/zpwt.md rename to pub/doc/hoon/runes/zp/zpwt.md diff --git a/base/pub/doc/hoon/runes/zp/zpzp.md b/pub/doc/hoon/runes/zp/zpzp.md similarity index 100% rename from base/pub/doc/hoon/runes/zp/zpzp.md rename to pub/doc/hoon/runes/zp/zpzp.md diff --git a/base/pub/doc/nock.md b/pub/doc/nock.md similarity index 100% rename from base/pub/doc/nock.md rename to pub/doc/nock.md diff --git a/base/pub/doc/nock/reference.md b/pub/doc/nock/reference.md similarity index 100% rename from base/pub/doc/nock/reference.md rename to pub/doc/nock/reference.md diff --git a/base/pub/doc/reference.md b/pub/doc/reference.md similarity index 100% rename from base/pub/doc/reference.md rename to pub/doc/reference.md diff --git a/base/pub/doc/reference/glossary.md b/pub/doc/reference/glossary.md similarity index 100% rename from base/pub/doc/reference/glossary.md rename to pub/doc/reference/glossary.md diff --git a/base/pub/doc/reference/u3.md b/pub/doc/reference/u3.md similarity index 100% rename from base/pub/doc/reference/u3.md rename to pub/doc/reference/u3.md diff --git a/base/pub/doc/reference/vere.md b/pub/doc/reference/vere.md similarity index 100% rename from base/pub/doc/reference/vere.md rename to pub/doc/reference/vere.md diff --git a/base/pub/doc/talk.md b/pub/doc/talk.md similarity index 100% rename from base/pub/doc/talk.md rename to pub/doc/talk.md diff --git a/base/pub/doc/talk/help.txt b/pub/doc/talk/help.txt similarity index 100% rename from base/pub/doc/talk/help.txt rename to pub/doc/talk/help.txt diff --git a/base/pub/fab/readme.md b/pub/fab/readme.md similarity index 100% rename from base/pub/fab/readme.md rename to pub/fab/readme.md diff --git a/base/pub/match/hymn.hook b/pub/match/hymn.hook similarity index 100% rename from base/pub/match/hymn.hook rename to pub/match/hymn.hook diff --git a/base/pub/oct3/fab/hymn.hook b/pub/oct3/fab/hymn.hook similarity index 100% rename from base/pub/oct3/fab/hymn.hook rename to pub/oct3/fab/hymn.hook diff --git a/base/pub/oct3/src/main.css b/pub/oct3/src/main.css similarity index 100% rename from base/pub/oct3/src/main.css rename to pub/oct3/src/main.css diff --git a/base/pub/oct3/src/main.js b/pub/oct3/src/main.js similarity index 100% rename from base/pub/oct3/src/main.js rename to pub/oct3/src/main.js diff --git a/base/pub/sole/fab/hymn.hook b/pub/sole/fab/hymn.hook similarity index 100% rename from base/pub/sole/fab/hymn.hook rename to pub/sole/fab/hymn.hook diff --git a/base/pub/sole/src/main.coffee b/pub/sole/src/main.coffee similarity index 100% rename from base/pub/sole/src/main.coffee rename to pub/sole/src/main.coffee diff --git a/base/pub/sole/src/share.coffee b/pub/sole/src/share.coffee similarity index 100% rename from base/pub/sole/src/share.coffee rename to pub/sole/src/share.coffee diff --git a/base/pub/src/readme.md b/pub/src/readme.md similarity index 100% rename from base/pub/src/readme.md rename to pub/src/readme.md diff --git a/base/pub/talk/fab/hymn.hook b/pub/talk/fab/hymn.hook similarity index 100% rename from base/pub/talk/fab/hymn.hook rename to pub/talk/fab/hymn.hook diff --git a/base/pub/talk/src/css/fonts.styl b/pub/talk/src/css/fonts.styl similarity index 100% rename from base/pub/talk/src/css/fonts.styl rename to pub/talk/src/css/fonts.styl diff --git a/base/pub/talk/src/css/main.css b/pub/talk/src/css/main.css similarity index 100% rename from base/pub/talk/src/css/main.css rename to pub/talk/src/css/main.css diff --git a/base/pub/talk/src/css/main.styl b/pub/talk/src/css/main.styl similarity index 100% rename from base/pub/talk/src/css/main.styl rename to pub/talk/src/css/main.styl diff --git a/base/pub/talk/src/css/mobile.styl b/pub/talk/src/css/mobile.styl similarity index 100% rename from base/pub/talk/src/css/mobile.styl rename to pub/talk/src/css/mobile.styl diff --git a/base/pub/talk/src/js/.main.js b/pub/talk/src/js/.main.js similarity index 100% rename from base/pub/talk/src/js/.main.js rename to pub/talk/src/js/.main.js diff --git a/base/pub/talk/src/js/actions/MessageActions.coffee b/pub/talk/src/js/actions/MessageActions.coffee similarity index 100% rename from base/pub/talk/src/js/actions/MessageActions.coffee rename to pub/talk/src/js/actions/MessageActions.coffee diff --git a/base/pub/talk/src/js/actions/StationActions.coffee b/pub/talk/src/js/actions/StationActions.coffee similarity index 100% rename from base/pub/talk/src/js/actions/StationActions.coffee rename to pub/talk/src/js/actions/StationActions.coffee diff --git a/base/pub/talk/src/js/components/MemberComponent.coffee b/pub/talk/src/js/components/MemberComponent.coffee similarity index 100% rename from base/pub/talk/src/js/components/MemberComponent.coffee rename to pub/talk/src/js/components/MemberComponent.coffee diff --git a/base/pub/talk/src/js/components/MessagesComponent.coffee b/pub/talk/src/js/components/MessagesComponent.coffee similarity index 100% rename from base/pub/talk/src/js/components/MessagesComponent.coffee rename to pub/talk/src/js/components/MessagesComponent.coffee diff --git a/base/pub/talk/src/js/components/StationComponent.coffee b/pub/talk/src/js/components/StationComponent.coffee similarity index 100% rename from base/pub/talk/src/js/components/StationComponent.coffee rename to pub/talk/src/js/components/StationComponent.coffee diff --git a/base/pub/talk/src/js/components/StationsComponent.coffee b/pub/talk/src/js/components/StationsComponent.coffee similarity index 100% rename from base/pub/talk/src/js/components/StationsComponent.coffee rename to pub/talk/src/js/components/StationsComponent.coffee diff --git a/base/pub/talk/src/js/components/TalkComponent.coffee b/pub/talk/src/js/components/TalkComponent.coffee similarity index 100% rename from base/pub/talk/src/js/components/TalkComponent.coffee rename to pub/talk/src/js/components/TalkComponent.coffee diff --git a/base/pub/talk/src/js/components/WritingComponent.coffee b/pub/talk/src/js/components/WritingComponent.coffee similarity index 100% rename from base/pub/talk/src/js/components/WritingComponent.coffee rename to pub/talk/src/js/components/WritingComponent.coffee diff --git a/base/pub/talk/src/js/dep/director.js b/pub/talk/src/js/dep/director.js similarity index 100% rename from base/pub/talk/src/js/dep/director.js rename to pub/talk/src/js/dep/director.js diff --git a/base/pub/talk/src/js/dispatcher/Dispatcher.coffee b/pub/talk/src/js/dispatcher/Dispatcher.coffee similarity index 100% rename from base/pub/talk/src/js/dispatcher/Dispatcher.coffee rename to pub/talk/src/js/dispatcher/Dispatcher.coffee diff --git a/base/pub/talk/src/js/main.coffee b/pub/talk/src/js/main.coffee similarity index 100% rename from base/pub/talk/src/js/main.coffee rename to pub/talk/src/js/main.coffee diff --git a/base/pub/talk/src/js/main.js b/pub/talk/src/js/main.js similarity index 100% rename from base/pub/talk/src/js/main.js rename to pub/talk/src/js/main.js diff --git a/base/pub/talk/src/js/module.coffee b/pub/talk/src/js/module.coffee similarity index 100% rename from base/pub/talk/src/js/module.coffee rename to pub/talk/src/js/module.coffee diff --git a/base/pub/talk/src/js/module.js b/pub/talk/src/js/module.js similarity index 100% rename from base/pub/talk/src/js/module.js rename to pub/talk/src/js/module.js diff --git a/base/pub/talk/src/js/move.coffee b/pub/talk/src/js/move.coffee similarity index 100% rename from base/pub/talk/src/js/move.coffee rename to pub/talk/src/js/move.coffee diff --git a/base/pub/talk/src/js/package.json b/pub/talk/src/js/package.json similarity index 100% rename from base/pub/talk/src/js/package.json rename to pub/talk/src/js/package.json diff --git a/base/pub/talk/src/js/persistence/MessagePersistence.coffee b/pub/talk/src/js/persistence/MessagePersistence.coffee similarity index 100% rename from base/pub/talk/src/js/persistence/MessagePersistence.coffee rename to pub/talk/src/js/persistence/MessagePersistence.coffee diff --git a/base/pub/talk/src/js/persistence/StationPersistence.coffee b/pub/talk/src/js/persistence/StationPersistence.coffee similarity index 100% rename from base/pub/talk/src/js/persistence/StationPersistence.coffee rename to pub/talk/src/js/persistence/StationPersistence.coffee diff --git a/base/pub/talk/src/js/stores/MessageStore.coffee b/pub/talk/src/js/stores/MessageStore.coffee similarity index 100% rename from base/pub/talk/src/js/stores/MessageStore.coffee rename to pub/talk/src/js/stores/MessageStore.coffee diff --git a/base/pub/talk/src/js/stores/StationStore.coffee b/pub/talk/src/js/stores/StationStore.coffee similarity index 100% rename from base/pub/talk/src/js/stores/StationStore.coffee rename to pub/talk/src/js/stores/StationStore.coffee diff --git a/base/pub/talk/src/js/test.js b/pub/talk/src/js/test.js similarity index 100% rename from base/pub/talk/src/js/test.js rename to pub/talk/src/js/test.js diff --git a/base/pub/talk/src/js/util.coffee b/pub/talk/src/js/util.coffee similarity index 100% rename from base/pub/talk/src/js/util.coffee rename to pub/talk/src/js/util.coffee diff --git a/base/pub/test.sched b/pub/test.sched similarity index 100% rename from base/pub/test.sched rename to pub/test.sched diff --git a/base/pub/tree/src/css/fonts.styl b/pub/tree/src/css/fonts.styl similarity index 100% rename from base/pub/tree/src/css/fonts.styl rename to pub/tree/src/css/fonts.styl diff --git a/base/pub/tree/src/css/main.css b/pub/tree/src/css/main.css similarity index 100% rename from base/pub/tree/src/css/main.css rename to pub/tree/src/css/main.css diff --git a/base/pub/tree/src/css/main.styl b/pub/tree/src/css/main.styl similarity index 100% rename from base/pub/tree/src/css/main.styl rename to pub/tree/src/css/main.styl diff --git a/base/pub/tree/src/css/mobile.styl b/pub/tree/src/css/mobile.styl similarity index 100% rename from base/pub/tree/src/css/mobile.styl rename to pub/tree/src/css/mobile.styl diff --git a/base/pub/tree/src/js/actions/TreeActions.coffee b/pub/tree/src/js/actions/TreeActions.coffee similarity index 100% rename from base/pub/tree/src/js/actions/TreeActions.coffee rename to pub/tree/src/js/actions/TreeActions.coffee diff --git a/base/pub/tree/src/js/components/AnchorComponent.coffee b/pub/tree/src/js/components/AnchorComponent.coffee similarity index 100% rename from base/pub/tree/src/js/components/AnchorComponent.coffee rename to pub/tree/src/js/components/AnchorComponent.coffee diff --git a/base/pub/tree/src/js/components/BodyComponent.coffee b/pub/tree/src/js/components/BodyComponent.coffee similarity index 100% rename from base/pub/tree/src/js/components/BodyComponent.coffee rename to pub/tree/src/js/components/BodyComponent.coffee diff --git a/base/pub/tree/src/js/components/CodeMirror.coffee b/pub/tree/src/js/components/CodeMirror.coffee similarity index 100% rename from base/pub/tree/src/js/components/CodeMirror.coffee rename to pub/tree/src/js/components/CodeMirror.coffee diff --git a/base/pub/tree/src/js/components/KidsComponent.coffee b/pub/tree/src/js/components/KidsComponent.coffee similarity index 100% rename from base/pub/tree/src/js/components/KidsComponent.coffee rename to pub/tree/src/js/components/KidsComponent.coffee diff --git a/base/pub/tree/src/js/components/ListComponent.coffee b/pub/tree/src/js/components/ListComponent.coffee similarity index 100% rename from base/pub/tree/src/js/components/ListComponent.coffee rename to pub/tree/src/js/components/ListComponent.coffee diff --git a/base/pub/tree/src/js/components/LoadComponent.coffee b/pub/tree/src/js/components/LoadComponent.coffee similarity index 100% rename from base/pub/tree/src/js/components/LoadComponent.coffee rename to pub/tree/src/js/components/LoadComponent.coffee diff --git a/base/pub/tree/src/js/dispatcher/Dispatcher.coffee b/pub/tree/src/js/dispatcher/Dispatcher.coffee similarity index 100% rename from base/pub/tree/src/js/dispatcher/Dispatcher.coffee rename to pub/tree/src/js/dispatcher/Dispatcher.coffee diff --git a/base/pub/tree/src/js/main.coffee b/pub/tree/src/js/main.coffee similarity index 100% rename from base/pub/tree/src/js/main.coffee rename to pub/tree/src/js/main.coffee diff --git a/base/pub/tree/src/js/main.js b/pub/tree/src/js/main.js similarity index 100% rename from base/pub/tree/src/js/main.js rename to pub/tree/src/js/main.js diff --git a/base/pub/tree/src/js/package.json b/pub/tree/src/js/package.json similarity index 100% rename from base/pub/tree/src/js/package.json rename to pub/tree/src/js/package.json diff --git a/base/pub/tree/src/js/persistence/TreePersistence.coffee b/pub/tree/src/js/persistence/TreePersistence.coffee similarity index 100% rename from base/pub/tree/src/js/persistence/TreePersistence.coffee rename to pub/tree/src/js/persistence/TreePersistence.coffee diff --git a/base/pub/tree/src/js/stores/TreeStore.coffee b/pub/tree/src/js/stores/TreeStore.coffee similarity index 100% rename from base/pub/tree/src/js/stores/TreeStore.coffee rename to pub/tree/src/js/stores/TreeStore.coffee diff --git a/base/pub/tree/src/readme.md b/pub/tree/src/readme.md similarity index 100% rename from base/pub/tree/src/readme.md rename to pub/tree/src/readme.md diff --git a/base/spec/nock/5.txt b/spec/nock/5.txt similarity index 100% rename from base/spec/nock/5.txt rename to spec/nock/5.txt diff --git a/base/sur/bang-args.hoon b/sur/bang-args.hoon similarity index 100% rename from base/sur/bang-args.hoon rename to sur/bang-args.hoon diff --git a/base/sur/bit-api.hoon b/sur/bit-api.hoon similarity index 100% rename from base/sur/bit-api.hoon rename to sur/bit-api.hoon diff --git a/base/sur/cp-args.hoon b/sur/cp-args.hoon similarity index 100% rename from base/sur/cp-args.hoon rename to sur/cp-args.hoon diff --git a/base/sur/demo-args.hoon b/sur/demo-args.hoon similarity index 100% rename from base/sur/demo-args.hoon rename to sur/demo-args.hoon diff --git a/base/sur/down.hoon b/sur/down.hoon similarity index 100% rename from base/sur/down.hoon rename to sur/down.hoon diff --git a/base/sur/foobar.hoon b/sur/foobar.hoon similarity index 100% rename from base/sur/foobar.hoon rename to sur/foobar.hoon diff --git a/base/sur/helm.hoon b/sur/helm.hoon similarity index 100% rename from base/sur/helm.hoon rename to sur/helm.hoon diff --git a/base/sur/hi-args.hoon b/sur/hi-args.hoon similarity index 100% rename from base/sur/hi-args.hoon rename to sur/hi-args.hoon diff --git a/base/sur/hood.hoon b/sur/hood.hoon similarity index 100% rename from base/sur/hood.hoon rename to sur/hood.hoon diff --git a/base/sur/into-args.hoon b/sur/into-args.hoon similarity index 100% rename from base/sur/into-args.hoon rename to sur/into-args.hoon diff --git a/base/sur/kyev.hoon b/sur/kyev.hoon similarity index 100% rename from base/sur/kyev.hoon rename to sur/kyev.hoon diff --git a/base/sur/markdown.hoon b/sur/markdown.hoon similarity index 100% rename from base/sur/markdown.hoon rename to sur/markdown.hoon diff --git a/base/sur/mess.hoon b/sur/mess.hoon similarity index 100% rename from base/sur/mess.hoon rename to sur/mess.hoon diff --git a/base/sur/mv-args.hoon b/sur/mv-args.hoon similarity index 100% rename from base/sur/mv-args.hoon rename to sur/mv-args.hoon diff --git a/base/sur/oct1.hoon b/sur/oct1.hoon similarity index 100% rename from base/sur/oct1.hoon rename to sur/oct1.hoon diff --git a/base/sur/oct2.hoon b/sur/oct2.hoon similarity index 100% rename from base/sur/oct2.hoon rename to sur/oct2.hoon diff --git a/base/sur/oct3.hoon b/sur/oct3.hoon similarity index 100% rename from base/sur/oct3.hoon rename to sur/oct3.hoon diff --git a/base/sur/oct4.hoon b/sur/oct4.hoon similarity index 100% rename from base/sur/oct4.hoon rename to sur/oct4.hoon diff --git a/base/sur/reload-args.hoon b/sur/reload-args.hoon similarity index 100% rename from base/sur/reload-args.hoon rename to sur/reload-args.hoon diff --git a/base/sur/rm-args.hoon b/sur/rm-args.hoon similarity index 100% rename from base/sur/rm-args.hoon rename to sur/rm-args.hoon diff --git a/base/sur/sole.hoon b/sur/sole.hoon similarity index 100% rename from base/sur/sole.hoon rename to sur/sole.hoon diff --git a/base/sur/sync-args.hoon b/sur/sync-args.hoon similarity index 100% rename from base/sur/sync-args.hoon rename to sur/sync-args.hoon diff --git a/base/sur/talk.hoon b/sur/talk.hoon similarity index 100% rename from base/sur/talk.hoon rename to sur/talk.hoon diff --git a/base/sur/term-ctrl.hoon b/sur/term-ctrl.hoon similarity index 100% rename from base/sur/term-ctrl.hoon rename to sur/term-ctrl.hoon diff --git a/base/sur/term-in.hoon b/sur/term-in.hoon similarity index 100% rename from base/sur/term-in.hoon rename to sur/term-in.hoon diff --git a/base/sur/term-line.hoon b/sur/term-line.hoon similarity index 100% rename from base/sur/term-line.hoon rename to sur/term-line.hoon diff --git a/base/sur/ticket-args.hoon b/sur/ticket-args.hoon similarity index 100% rename from base/sur/ticket-args.hoon rename to sur/ticket-args.hoon diff --git a/base/sur/twitter.hoon b/sur/twitter.hoon similarity index 100% rename from base/sur/twitter.hoon rename to sur/twitter.hoon diff --git a/base/sur/unsync-args.hoon b/sur/unsync-args.hoon similarity index 100% rename from base/sur/unsync-args.hoon rename to sur/unsync-args.hoon diff --git a/base/sur/user.hoon b/sur/user.hoon similarity index 100% rename from base/sur/user.hoon rename to sur/user.hoon diff --git a/base/sur/users.hoon b/sur/users.hoon similarity index 100% rename from base/sur/users.hoon rename to sur/users.hoon diff --git a/base/sur/verb-args.hoon b/sur/verb-args.hoon similarity index 100% rename from base/sur/verb-args.hoon rename to sur/verb-args.hoon diff --git a/base/sur/wand.hoon b/sur/wand.hoon similarity index 100% rename from base/sur/wand.hoon rename to sur/wand.hoon diff --git a/base/sur/zing.hoon b/sur/zing.hoon similarity index 100% rename from base/sur/zing.hoon rename to sur/zing.hoon diff --git a/base/sur/zong.hoon b/sur/zong.hoon similarity index 100% rename from base/sur/zong.hoon rename to sur/zong.hoon diff --git a/base/sur/zung.hoon b/sur/zung.hoon similarity index 100% rename from base/sur/zung.hoon rename to sur/zung.hoon diff --git a/base/tree/hymn.hook b/tree/hymn.hook similarity index 100% rename from base/tree/hymn.hook rename to tree/hymn.hook diff --git a/base/tree/json.hook b/tree/json.hook similarity index 100% rename from base/tree/json.hook rename to tree/json.hook diff --git a/base/tree/util.hoon b/tree/util.hoon similarity index 100% rename from base/tree/util.hoon rename to tree/util.hoon diff --git a/base/try/readme.md b/try/readme.md similarity index 100% rename from base/try/readme.md rename to try/readme.md From 97c773c3a2b498936140246d64d08d817ac1afbd Mon Sep 17 00:00:00 2001 From: ault011 Date: Fri, 19 Jun 2015 14:22:15 -0700 Subject: [PATCH 15/34] fix cenhep doc --- pub/doc/hoon/runes/cn/cnhp.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pub/doc/hoon/runes/cn/cnhp.md b/pub/doc/hoon/runes/cn/cnhp.md index d0dc8b66e..586c9f0c6 100644 --- a/pub/doc/hoon/runes/cn/cnhp.md +++ b/pub/doc/hoon/runes/cn/cnhp.md @@ -3,10 +3,9 @@ Slam, n-arguments -`%-` is a synthetic rune that that [pull]()s [`$`]() from the [door]() -`p` with its sample set to `[%cltr q]`. `%-` in the most common case -simply [slam]()s `p` with the list of arguments in `q`. `%-` is similar -to a function call, and is most familiar in its irregular form `(p q)`. +Slam, 1 (or n) argument(s) + +%- is a synthetic rune that that pulls $ from the door p with its sample set to [%cltr q]. %- in both its tall and wide forms is like a function call with one argument. However, %-is most commonly used in its irregular form, where p and q are enclosed within () where q is a list of n arguments. Produces -------- From 63a94bc415050f1430549f94ac7e6578cf568bfb Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Fri, 19 Jun 2015 18:08:57 -0400 Subject: [PATCH 16/34] fix no-sync-duct bug --- arvo/clay.hoon | 1 + 1 file changed, 1 insertion(+) diff --git a/arvo/clay.hoon b/arvo/clay.hoon index 12acd7e6b..0879f5894 100644 --- a/arvo/clay.hoon +++ b/arvo/clay.hoon @@ -2493,6 +2493,7 @@ [mos ..^$] :: %mont + =. hez.ruf ?^(hez.ruf hez.ruf `[[%$ %sync ~] ~]) =+ pot=(~(get by mon.ruf) p.q.hic) ?^ pot ~& [%already-mounted pot] From 51d93691d88575b0e3dd0bf20f64b80e750701da Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Fri, 19 Jun 2015 18:14:19 -0400 Subject: [PATCH 17/34] put back in autosync succeded message --- lib/kiln.hoon | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/kiln.hoon b/lib/kiln.hoon index bb5e55645..f7ab5cfe0 100644 --- a/lib/kiln.hoon +++ b/lib/kiln.hoon @@ -234,8 +234,7 @@ =. +>.$ %- spam ?: ?=(%& -.mes) - ~ - :: [leaf/"sync succeeded from {} on {} to {}" ~] + [leaf/"sync succeeded from {} on {} to {}" ~] ?+ p.p.mes :* leaf/"sync failed from {} on {} to {}" leaf/"please manually merge the desks with" From 9e80712633f6e04ff1d8692410529ff1b4c56688 Mon Sep 17 00:00:00 2001 From: Max G Date: Sat, 20 Jun 2015 06:01:09 +0300 Subject: [PATCH 18/34] fixed indentation, better salsa20 columnround --- arvo/hoon.hoon | 341 ++++++++++++++++++++++++------------------------- 1 file changed, 169 insertions(+), 172 deletions(-) diff --git a/arvo/hoon.hoon b/arvo/hoon.hoon index 2363ffda7..b583532c1 100644 --- a/arvo/hoon.hoon +++ b/arvo/hoon.hoon @@ -4918,7 +4918,7 @@ -- ~% %ed + ~ |% - ++ puck :: public key + ++ puck :: public key ~/ %puck |= sk=@I ^- @ ?: (gth (met 3 sk) 32) !! @@ -4929,12 +4929,12 @@ (lsh 0 3 (cut 0 [3 (sub b 5)] h)) =+ aa=(scam bb a) (etch aa) - ++ suck :: keypair from seed + ++ suck :: keypair from seed |= se=@I ^- @uJ =+ pu=(puck se) (can 0 ~[[b se] [b pu]]) :: - ++ sign :: certify + ++ sign :: certify ~/ %sign |= [m=@ se=@] ^- @ =+ sk=(suck se) @@ -4964,7 +4964,7 @@ (~(sit fo l) (add r (mul (shaz ha) a))) (can 0 ~[[b (etch rr)] [b ss]]) :: - ++ veri :: validate + ++ veri :: validate ~/ %veri |= [s=@ m=@ pk=@] ^- ? ?: (gth (div b 4) (met 3 s)) | @@ -4984,189 +4984,186 @@ ++ scr :: scrypt ~% %scr + ~ |% - ++ sal |= [x=@ r=@] :: salsa20 hash - ?> =((mod r 2) 0) :: with r rounds - =+ few==>(fe .(a 5)) - =+ ^= rot - |= [a=@ b=@] - (mix (end 5 1 (lsh 0 a b)) (rsh 0 (sub 32 a) b)) - =+ ^= lea - |= [a=@ b=@] - (net:few (sum:few (net:few a) (net:few b))) - => |% ++ qr :: quarterround - |= y=[@ @ @ @ ~] - =+ zb=(mix &2.y (rot 7 (sum:few &1.y &4.y))) - =+ zc=(mix &3.y (rot 9 (sum:few zb &1.y))) - =+ zd=(mix &4.y (rot 13 (sum:few zc zb))) - =+ za=(mix &1.y (rot 18 (sum:few zd zc))) - ~[za zb zc zd] - ++ rr :: rowround - |= [y=(list ,@)] - =+ za=(qr ~[&1.y &2.y &3.y &4.y]) - =+ zb=(qr ~[&6.y &7.y &8.y &5.y]) - =+ zc=(qr ~[&11.y &12.y &9.y &10.y]) - =+ zd=(qr ~[&16.y &13.y &14.y &15.y]) - ^- (list ,@) :~ - &1.za &2.za &3.za &4.za - &4.zb &1.zb &2.zb &3.zb - &3.zc &4.zc &1.zc &2.zc - &2.zd &3.zd &4.zd &1.zd - == - ++ cr :: columnround - |= [x=(list ,@)] - =+ ^= y %- rr ^- (list ,@) :~ - &1.x &5.x &9.x &13.x - &2.x &6.x &10.x &14.x - &3.x &7.x &11.x &15.x - &4.x &8.x &12.x &16.x - == - ^- (list ,@) :~ - &1.y &5.y &9.y &13.y - &2.y &6.y &10.y &14.y - &3.y &7.y &11.y &15.y - &4.y &8.y &12.y &16.y - == - ++ dr :: doubleround - |= [x=(list ,@)] - (rr (cr x)) - ++ al :: add two lists - |= [a=(list ,@) b=(list ,@)] - |- ^- (list ,@) - ?~ a ~ ?~ b ~ - [i=(sum:few -.a -.b) t=$(a +.a, b +.b)] - -- - =+ xw=(rpp 5 16 x) - =+ ^= ow |- ^- (list ,@) - ?~ r xw - $(xw (dr xw), r (sub r 2)) - (rep 5 (al xw ow)) + ++ sal + |= [x=@ r=@] :: salsa20 hash + ?> =((mod r 2) 0) :: with r rounds + =+ few==>(fe .(a 5)) + =+ ^= rot + |= [a=@ b=@] + (mix (end 5 1 (lsh 0 a b)) (rsh 0 (sub 32 a) b)) + =+ ^= lea + |= [a=@ b=@] + (net:few (sum:few (net:few a) (net:few b))) + => |% + ++ qr :: quarterround + |= y=[@ @ @ @ ~] + =+ zb=(mix &2.y (rot 7 (sum:few &1.y &4.y))) + =+ zc=(mix &3.y (rot 9 (sum:few zb &1.y))) + =+ zd=(mix &4.y (rot 13 (sum:few zc zb))) + =+ za=(mix &1.y (rot 18 (sum:few zd zc))) + ~[za zb zc zd] + ++ rr :: rowround + |= [y=(list ,@)] + =+ za=(qr ~[&1.y &2.y &3.y &4.y]) + =+ zb=(qr ~[&6.y &7.y &8.y &5.y]) + =+ zc=(qr ~[&11.y &12.y &9.y &10.y]) + =+ zd=(qr ~[&16.y &13.y &14.y &15.y]) + ^- (list ,@) :~ + &1.za &2.za &3.za &4.za + &4.zb &1.zb &2.zb &3.zb + &3.zc &4.zc &1.zc &2.zc + &2.zd &3.zd &4.zd &1.zd == + ++ cr :: columnround + |= [x=(list ,@)] + =+ ya=(qr ~[&1.x &5.x &9.x &13.x]) + =+ yb=(qr ~[&6.x &10.x &14.x &2.x]) + =+ yc=(qr ~[&11.x &15.x &3.x &7.x]) + =+ yd=(qr ~[&16.x &4.x &8.x &12.x]) + ^- (list ,@) :~ + &1.ya &4.yb &3.yc &2.yd + &2.ya &1.yb &4.yc &3.yd + &3.ya &2.yb &1.yc &4.yd + &4.ya &3.yb &2.yc &1.yd == + ++ dr :: doubleround + |= [x=(list ,@)] + (rr (cr x)) + ++ al :: add two lists + |= [a=(list ,@) b=(list ,@)] + |- ^- (list ,@) + ?~ a ~ ?~ b ~ + [i=(sum:few -.a -.b) t=$(a +.a, b +.b)] + -- + =+ xw=(rpp 5 16 x) + =+ ^= ow |- ^- (list ,@) + ?~ r xw + $(xw (dr xw), r (sub r 2)) + (rep 5 (al xw ow)) :: - ++ rpp |= [a=bloq b=@ c=@] :: rip w/filler blocks - =+ q=(rip a c) - =+ w=(lent q) - ?. =(w b) - ?. (lth w b) (slag (sub w b) q) - ^+ q (weld q (reap (sub b (lent q)) 0)) - q + ++ rpp + |= [a=bloq b=@ c=@] :: rip w/filler blocks + =+ q=(rip a c) + =+ w=(lent q) + ?. =(w b) + ?. (lth w b) (slag (sub w b) q) + ^+ q (weld q (reap (sub b (lent q)) 0)) + q :: - ++ xrl |= [a=(list ,@) b=(list ,@)] :: xor lists - |- ^- (list ,@) - ?~ a b ?~ b a - [i=(mix -.a -.b) t=$(a +.a, b +.b)] + ++ bls + |= [a=@ b=(list ,@)] :: split to sublists + ?> =((mod (lent b) a) 0) + |- ^- (list (list ,@)) + ?~ b ~ + [i=(scag a `(list ,@)`b) t=$(b (slag a `(list ,@)`b))] :: - ++ xrm |= [a=(list (list ,@)) b=(list (list ,@))] - |- ^- (list (list ,@)) - ?~ a b ?~ b a - [i=(xrl -.a -.b) t=$(a +.a, b +.b)] + ++ slb + |= [a=(list (list ,@))] + |- ^- (list ,@) + ?~ a ~ + (weld `(list ,@)`-.a $(a +.a)) :: - ++ bls |= [a=@ b=(list ,@)] :: split to sublists - ?> =((mod (lent b) a) 0) - |- ^- (list (list ,@)) - ?~ b ~ - [i=(scag a `(list ,@)`b) t=$(b (slag a `(list ,@)`b))] + ++ sbm + |= [r=@ b=(list ,@)] :: scryptBlockMix + ?> =((lent b) (mul 2 r)) + =+ [x=(snag (dec (mul 2 r)) b) c=0] + =| [ya=(list ,@) yb=(list ,@)] + |- ^- (list ,@) + ?~ b (flop (weld yb ya)) + =. x (sal (mix x -.b) 8) + ?~ (mod c 2) + $(c +(c), b +.b, ya [i=x t=ya]) + $(c +(c), b +.b, yb [i=x t=yb]) :: - ++ slb |= [a=(list (list ,@))] - |- ^- (list ,@) - ?~ a ~ - (weld `(list ,@)`-.a $(a +.a)) + ++ srm + |= [r=@ b=(list ,@) n=@] :: scryptROMix + ?> ?& + =((lent b) (mul 2 r)) + =(n (bex (dec (xeb n)))) + (lth n (bex (mul r 16))) + == + =+ [v=*(list (list ,@)) c=0] + =. v + |- ^- (list (list ,@)) + =+ w=(sbm r b) + ?: =(c n) (flop v) + $(c +(c), v [i=[b] t=v], b w) + =+ x=(sbm r (snag (dec n) v)) + |- ^- (list ,@) + ?: =(c n) x + =+ q=(snag (dec (mul r 2)) x) + =+ z=`(list ,@)`(snag (mod q n) v) + =+ ^= w |- ^- (list ,@) + ?~ x ~ ?~ z ~ + [i=(mix -.x -.z) t=$(x +.x, z +.z)] + $(x (sbm r w), c +(c)) :: - ++ sbm |= [r=@ b=(list ,@)] :: scryptBlockMix - ?> =((lent b) (mul 2 r)) - =+ [x=(snag (dec (mul 2 r)) b) c=0] - =| [ya=(list ,@) yb=(list ,@)] - |- ^- (list ,@) - ?~ b (flop (weld yb ya)) - =. x (sal (mix x -.b) 8) - ?~ (mod c 2) - $(c +(c), b +.b, ya [i=x t=ya]) - $(c +(c), b +.b, yb [i=x t=yb]) + ++ hmc + |= [k=@ t=@] :: HMAC-SHA-256 + (hml k (met 3 k) t (met 3 t)) :: - ++ srm |= [r=@ b=(list ,@) n=@] :: scryptROMix - ?> ?& - =((lent b) (mul 2 r)) - =(n (bex (dec (xeb n)))) - (lth n (bex (mul r 16))) - == - =| v=(list (list ,@)) - =+ c=0 - =. v - |- ^- (list (list ,@)) - =+ w=(sbm r b) - ?: =(c n) (flop v) - $(c +(c), v [i=[b] t=v], b w) - =+ x=(sbm r (snag (dec n) v)) - |- ^- (list ,@) - ?: =(c n) x - =+ q=(snag (dec (mul r 2)) x) - $(x (sbm r (xrl x (snag (mod q n) v))), c +(c)) - :: - ++ hmc |= [k=@ t=@] :: HMAC-SHA-256 - (hml k (met 3 k) t (met 3 t)) - :: - ++ hml |= [k=@ kl=@ t=@ tl=@] :: w/length - =. k (end 3 kl k) =. t (end 3 tl t) - =+ b=64 - =. k ?. (gth kl b) k (shay kl k) - =+ ^= q %+ shay (add b tl) - (add (lsh 3 b t) (mix k (fil 3 b 0x36))) - %+ shay (add b 32) - (add (lsh 3 b q) (mix k (fil 3 b 0x5c))) + ++ hml + |= [k=@ kl=@ t=@ tl=@] :: w/length + => .(k (end 3 kl k), t (end 3 tl t)) + =+ b=64 + =. k ?. (gth kl b) k (shay kl k) + =+ ^= q %+ shay (add b tl) + (add (lsh 3 b t) (mix k (fil 3 b 0x36))) + %+ shay (add b 32) + (add (lsh 3 b q) (mix k (fil 3 b 0x5c))) :: ++ pbk ~/ %pbk :: PBKDF2-HMAC-SHA256 - |= [p=@ s=@ c=@ d=@] - (pbl p (met 3 p) s (met 3 s) c d) + |= [p=@ s=@ c=@ d=@] + (pbl p (met 3 p) s (met 3 s) c d) :: ++ pbl ~/ %pbl :: w/length - |= [p=@ pl=@ s=@ sl=@ c=@ d=@] - =. p (end 3 pl p) =. s (end 3 sl s) - =+ h=32 - ?> ?& (lte d (bex 30)) :: max key length 1GB - (lte c (bex 28)) :: max iterations 2^28 - !=(c 0) - == - =+ ^= l ?~ (mod d h) - (div d h) - +((div d h)) - =+ r=(sub d (mul h (dec l))) - =+ [t=0 j=1 k=1] - =. t |- ^- @ - ?: (gth j l) t - =+ u=(add s (lsh 3 sl (rep 3 (flop (rpp 3 4 j))))) - =+ f=0 =. f |- ^- @ - ?: (gth k c) f - =+ q=(hml p pl u ?:(=(k 1) (add sl 4) h)) - $(u q, f (mix f q), k +(k)) - $(t (add t (lsh 3 (mul (dec j) h) f)), j +(j)) - (end 3 d t) + |= [p=@ pl=@ s=@ sl=@ c=@ d=@] + => .(p (end 3 pl p), s (end 3 sl s)) + =+ h=32 + ?> ?& (lte d (bex 30)) :: max key length 1GB + (lte c (bex 28)) :: max iterations 2^28 + !=(c 0) + == + =+ ^= l ?~ (mod d h) + (div d h) + +((div d h)) + =+ r=(sub d (mul h (dec l))) + =+ [t=0 j=1 k=1] + =. t |- ^- @ + ?: (gth j l) t + =+ u=(add s (lsh 3 sl (rep 3 (flop (rpp 3 4 j))))) + =+ f=0 =. f |- ^- @ + ?: (gth k c) f + =+ q=(hml p pl u ?:(=(k 1) (add sl 4) h)) + $(u q, f (mix f q), k +(k)) + $(t (add t (lsh 3 (mul (dec j) h) f)), j +(j)) + (end 3 d t) :: ++ hsh ~/ %hsh :: scrypt - |= [p=@ s=@ n=@ r=@ z=@ d=@] - (hsl p (met 3 p) s (met 3 s) n r z d) + |= [p=@ s=@ n=@ r=@ z=@ d=@] + (hsl p (met 3 p) s (met 3 s) n r z d) :: ++ hsl ~/ %hsl :: w/length - |= [p=@ pl=@ s=@ sl=@ n=@ r=@ z=@ d=@] - =| v=(list (list ,@)) - =. p (end 3 pl p) =. s (end 3 sl s) - =+ u=(mul (mul 128 r) z) - ?> ?& =(n (bex (dec (xeb n)))) :: n is power of 2 - !=(r 0) !=(z 0) - %+ lte :: max 1GB memory - (mul (mul 128 r) (dec (add n z))) - (bex 30) - (lth pl (bex 31)) - (lth sl (bex 31)) - == - =+ ^= b =+ %^ rpp 3 u - (pbl p pl s sl 1 u) - %+ turn (bls (mul 128 r) -) - |=(a=(list ,@) (rpp 9 (mul 2 r) (rep 3 a))) - ?> =((lent b) z) - =+ ^= q - =+ |- ?~ b (flop v) - $(b +.b, v [i=(srm r -.b n) t=v]) - %+ turn `(list (list ,@))`- - |=(a=(list ,@) (rpp 3 (mul 128 r) (rep 9 a))) - (pbl p pl (rep 3 (slb q)) u 1 d) + |= [p=@ pl=@ s=@ sl=@ n=@ r=@ z=@ d=@] + =| v=(list (list ,@)) + => .(p (end 3 pl p), s (end 3 sl s)) + =+ u=(mul (mul 128 r) z) + ?> ?& =(n (bex (dec (xeb n)))) :: n is power of 2 + !=(r 0) !=(z 0) + %+ lte :: max 1GB memory + (mul (mul 128 r) (dec (add n z))) + (bex 30) + (lth pl (bex 31)) + (lth sl (bex 31)) + == + =+ ^= b =+ (rpp 3 u (pbl p pl s sl 1 u)) + %+ turn (bls (mul 128 r) -) + |=(a=(list ,@) (rpp 9 (mul 2 r) (rep 3 a))) + ?> =((lent b) z) + =+ ^= q + =+ |- ?~ b (flop v) + $(b +.b, v [i=(srm r -.b n) t=v]) + %+ turn `(list (list ,@))`- + |=(a=(list ,@) (rpp 3 (mul 128 r) (rep 9 a))) + (pbl p pl (rep 3 (slb q)) u 1 d) -- :::::::::::::::::::::::::::::::::::::::::::::::::::::::::: :: section 2eY, SHA-256 (move me) :: From 431d6e6c3d1f72094c10d538b9a3a801a9283e4c Mon Sep 17 00:00:00 2001 From: ault011 Date: Mon, 22 Jun 2015 11:59:29 -0700 Subject: [PATCH 19/34] add nock11 reference --- pub/doc/nock/reference.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/pub/doc/nock/reference.md b/pub/doc/nock/reference.md index 0d1f4977a..5e9ecac67 100644 --- a/pub/doc/nock/reference.md +++ b/pub/doc/nock/reference.md @@ -710,6 +710,13 @@ variants of `10` as equivalent.) ------------------------------------------------------------------------ +Op 11: Lookup +----------- + +**Lookup and retrieve data from global namespace from path** + +nock 11 is an additional nock operation provided by arvo to provide access to the global namespace. It's provided by arvo, so even though it's not technically a part of the nock, any code that arvo runs has access to it. When nock running on top of arvo hits nock 11, it either produces a value or blocks. The most common usage is with clay, where ^(%cx /path/to/file) will produce the referred-to-file. + Crash default ------------- From 26be153a63c85f38e68da90f924c756090e7e0ae Mon Sep 17 00:00:00 2001 From: ault011 Date: Mon, 22 Jun 2015 12:02:41 -0700 Subject: [PATCH 20/34] update nock 11 reference --- pub/doc/nock/reference.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/pub/doc/nock/reference.md b/pub/doc/nock/reference.md index 5e9ecac67..1550b9273 100644 --- a/pub/doc/nock/reference.md +++ b/pub/doc/nock/reference.md @@ -710,10 +710,10 @@ variants of `10` as equivalent.) ------------------------------------------------------------------------ -Op 11: Lookup +Op 11: Retrieve ----------- -**Lookup and retrieve data from global namespace from path** +**operator 11** retrieves data from the global namespace at the path it is given. nock 11 is an additional nock operation provided by arvo to provide access to the global namespace. It's provided by arvo, so even though it's not technically a part of the nock, any code that arvo runs has access to it. When nock running on top of arvo hits nock 11, it either produces a value or blocks. The most common usage is with clay, where ^(%cx /path/to/file) will produce the referred-to-file. From e8d25d78f159d30332f1994a484bd12d42ee9ab8 Mon Sep 17 00:00:00 2001 From: Anton Dyudin Date: Mon, 22 Jun 2015 18:27:57 -0700 Subject: [PATCH 21/34] fix base64 parser: closes #329 --- base/arvo/ford.hoon | 2 +- base/arvo/zuse.hoon | 9 +++++---- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/base/arvo/ford.hoon b/base/arvo/ford.hoon index fa7c31e08..662693c45 100644 --- a/base/arvo/ford.hoon +++ b/base/arvo/ford.hoon @@ -1684,7 +1684,7 @@ :: ++ load :: highly forgiving |= old=axle - =. pol.old (~(run by pol.old) |=(baby +<(jav ~))) + ::=. pol.old (~(run by pol.old) |=(baby +<(jav ~))) ..^$(+>- old) ::=. old :: ?. ?=([%0 *] old) old :: remove at 1 diff --git a/base/arvo/zuse.hoon b/base/arvo/zuse.hoon index fc983b617..9b10d40c2 100644 --- a/base/arvo/zuse.hoon +++ b/base/arvo/zuse.hoon @@ -1161,12 +1161,13 @@ :: ++ ofis :: XX broken =- |=(a=cord (rash a fel)) - =- fel=;~(sfix (boss 64 (plus siw)) (stun 0^2 tis)) + =< fel=(cook |=(a=@ `@t`(swap 3 a)) (bass 64 .)) + =- (cook welp ;~(plug (plus siw) (stun 0^2 (cold %0 tis)))) ^= siw ;~ pose - dit - (cook |=(a=@ (sub a (sub 'A' 10))) (shim 'A' 'Z')) - (cook |=(a=@ (sub a (sub 'a' 36))) (shim 'a' 'z')) + (cook |=(a=@ (sub a 'A')) (shim 'A' 'Z')) + (cook |=(a=@ (sub a 'G')) (shim 'a' 'z')) + (cook |=(a=@ (add a 4)) (shim '0' '9')) (cold 62 (just '+')) (cold 63 (just '/')) == From 3f9b8942da6c38e22fbce9a6081b545aa50219e3 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Tue, 23 Jun 2015 18:22:26 -0400 Subject: [PATCH 22/34] respond to subscription even if "nothing changed" fixes #320 --- arvo/clay.hoon | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/arvo/clay.hoon b/arvo/clay.hoon index 0879f5894..9e01db46e 100644 --- a/arvo/clay.hoon +++ b/arvo/clay.hoon @@ -381,7 +381,6 @@ =+ sar=(lobes-at-path:ze u.nab r.q.rav) =+ ear=(lobes-at-path:ze top r.q.rav) =. +>.$ - ?: =(sar ear) +>.$ (bleb hen u.nab ?:(p.rav ~ `[u.nab top])) ?^ huy (blub hen) @@ -868,7 +867,8 @@ =+ let=let =+ hut=(~(uni by hut.ran) nut) =+ lat=(~(uni by lat.ran) nat) - =+ =+ yon=`aeon`1 :: sanity check + =+ ?: =(0 let) ~ + =+ yon=`aeon`1 :: sanity check |- ~| yon=yon =+ tak=(~(got by hit) yon) @@ -1453,6 +1453,8 @@ ^- nako :+ hit.dom let.dom + ?~ =(0 b) + [~ ~] (data-twixt-takos (~(get by hit.dom) a) (aeon-to-tako b)) :: ++ query :: query:ze @@ -2493,7 +2495,6 @@ [mos ..^$] :: %mont - =. hez.ruf ?^(hez.ruf hez.ruf `[[%$ %sync ~] ~]) =+ pot=(~(get by mon.ruf) p.q.hic) ?^ pot ~& [%already-mounted pot] From 9279f22d3248f098af62225d8f5721704f9255f8 Mon Sep 17 00:00:00 2001 From: Anton Dyudin Date: Tue, 23 Jun 2015 15:49:13 -0700 Subject: [PATCH 23/34] clean old doors --- base/mar/cloud-auth/door.hook | 16 ---------------- base/mar/cloud-secret/door.hook | 9 --------- 2 files changed, 25 deletions(-) delete mode 100644 base/mar/cloud-auth/door.hook delete mode 100644 base/mar/cloud-secret/door.hook diff --git a/base/mar/cloud-auth/door.hook b/base/mar/cloud-auth/door.hook deleted file mode 100644 index 695a9b6b1..000000000 --- a/base/mar/cloud-auth/door.hook +++ /dev/null @@ -1,16 +0,0 @@ -:: this mark is used to receive incoming oauth2 tokens that we use to poke our %gall server -:: -:::: /hook/door/do-auth/mar - :: -/? 310 -!: -|_ cod=cord -:: -++ grab :: converter arm - |% - ++ noun ,@t :: clam from noun - ++ json (cork (ot authcode/so platform/so ~):jo need) :: (need (so:jo jon)) - -- --- - - diff --git a/base/mar/cloud-secret/door.hook b/base/mar/cloud-secret/door.hook deleted file mode 100644 index 3cdf63110..000000000 --- a/base/mar/cloud-secret/door.hook +++ /dev/null @@ -1,9 +0,0 @@ -!: -|_ cod=cord -:: -++ grab :: converter am - |% - ++ noun ,@t :: clam from noun - ++ json (cork (ot secret/so platform/so ~):jo need) :: (need (so:jo jon)) - -- --- From cc0ed78d67e7f7c7225bdbf86e4d0fdee1be4689 Mon Sep 17 00:00:00 2001 From: Anton Dyudin Date: Tue, 23 Jun 2015 15:59:48 -0700 Subject: [PATCH 24/34] recursively build cores, marks --- base/ape/bit.hoon | 2 +- base/arvo/ford.hoon | 87 ++++++++++++++----- base/arvo/gall.hoon | 8 +- .../{bit-accounts.hoon => bit/accounts.hoon} | 0 .../addr-made.hoon} | 0 .../addr-request.hoon} | 0 .../{bit-api-call.hoon => bit/api-call.hoon} | 0 .../get-token.hoon} | 0 .../transaction.hoon} | 0 base/mar/{cloud-auth.hoon => cloud/auth.hoon} | 0 .../{cloud-secret.hoon => cloud/secret.hoon} | 0 base/mar/{dill-belt.hoon => dill/belt.hoon} | 0 base/mar/{dill-blit.hoon => dill/blit.hoon} | 0 base/mar/{oct3-move.hoon => oct3/move.hoon} | 0 .../{oct3-update.hoon => oct3/update.hoon} | 0 base/mar/{oct4-move.hoon => oct4/move.hoon} | 0 .../{oct4-update.hoon => oct4/update.hoon} | 0 .../{sole-action.hoon => sole/action.hoon} | 0 .../{sole-effect.hoon => sole/effect.hoon} | 0 .../{talk-command.hoon => talk/command.hoon} | 0 .../{talk-report.hoon => talk/report.hoon} | 0 21 files changed, 73 insertions(+), 24 deletions(-) rename base/mar/{bit-accounts.hoon => bit/accounts.hoon} (100%) rename base/mar/{bit-addr-made.hoon => bit/addr-made.hoon} (100%) rename base/mar/{bit-addr-request.hoon => bit/addr-request.hoon} (100%) rename base/mar/{bit-api-call.hoon => bit/api-call.hoon} (100%) rename base/mar/{bit-get-token.hoon => bit/get-token.hoon} (100%) rename base/mar/{bit-transaction.hoon => bit/transaction.hoon} (100%) rename base/mar/{cloud-auth.hoon => cloud/auth.hoon} (100%) rename base/mar/{cloud-secret.hoon => cloud/secret.hoon} (100%) rename base/mar/{dill-belt.hoon => dill/belt.hoon} (100%) rename base/mar/{dill-blit.hoon => dill/blit.hoon} (100%) rename base/mar/{oct3-move.hoon => oct3/move.hoon} (100%) rename base/mar/{oct3-update.hoon => oct3/update.hoon} (100%) rename base/mar/{oct4-move.hoon => oct4/move.hoon} (100%) rename base/mar/{oct4-update.hoon => oct4/update.hoon} (100%) rename base/mar/{sole-action.hoon => sole/action.hoon} (100%) rename base/mar/{sole-effect.hoon => sole/effect.hoon} (100%) rename base/mar/{talk-command.hoon => talk/command.hoon} (100%) rename base/mar/{talk-report.hoon => talk/report.hoon} (100%) diff --git a/base/ape/bit.hoon b/base/ape/bit.hoon index 45983dce4..2771356c2 100644 --- a/base/ape/bit.hoon +++ b/base/ape/bit.hoon @@ -4,7 +4,7 @@ :: /? 314 /- *talk, *bit-api -/+ talk, sole, http, mean +/+ talk, sole, http !: :::: sivtyv-barnel :: be sure to have oauth2-code markk diff --git a/base/arvo/ford.hoon b/base/arvo/ford.hoon index 662693c45..9b43a27d6 100644 --- a/base/arvo/ford.hoon +++ b/base/arvo/ford.hoon @@ -156,6 +156,14 @@ =+ gib=(wox p.n.r.arc) ?~(gib rac [[u.gib p.n.r.arc] rac]) :: +++ tack :: fold path to term + |= a=[i=term t=(list term)] ^- term + (rap 3 |-([i.a ?~(t.a ~ ['-' $(a t.a)])])) +:: +++ tear :: split term + =- |=(a=term (rush a (most hep sym))) + sym=(cook crip ;~(plug low (star ;~(pose low nud)))) +:: ++ norm :: normalize beam rev |= [ska=sled bem=beam] %_ bem @@ -368,9 +376,9 @@ == :: ++ cool :: error caption - |* [cyt=trap hoc=(bolt)] + |* [cyt=$|(term trap) hoc=(bolt)] ?. ?=(%2 -.q.hoc) hoc - [p.hoc [%2 p.q.hoc *cyt q.q.hoc]] + [p.hoc [%2 p.q.hoc ?^(cyt *cyt [>`@tas`cyt<]~) q.q.hoc]] :: ++ cope :: bolt along |* [hoc=(bolt) fun=(burg)] @@ -386,6 +394,21 @@ %0 [%0 p=(grom `_p.q.nuf`p.q.hoc p.q.nuf) q=q.q.nuf] == == :: + ++ coop :: bolt alter + |* [hoc=(bolt) fun=(burg)] + ?- -.q.hoc + %1 hoc + %0 hoc + %2 =+ nuf=(fun(+<- p.hoc)) + :- p=p.nuf + ^= q + ?- -.q.nuf + %1 q.nuf + %0 [%0 p=(grom `_p.q.nuf`p.q.hoc p.q.nuf) q=q.q.nuf] + %2 =. q.q.nuf (welp q.q.nuf q.q.hoc) + [%2 p=(grom `_p.q.nuf`p.q.hoc p.q.nuf) q=q.q.nuf] + == == + :: ++ coup :: toon to bolt |= cof=cafe |* [ton=toon fun=$+(* *)] @@ -951,23 +974,35 @@ ^- (burg beak (jug mark mark)) |= [cof=cafe bek=beak] =. ^bek bek - %+ cope (lend cof [bek /mar]) - |= [cof=cafe arc=arch] - :: =- =+((cope - |=([cafe lil=(jug mark mark)] ~&(lil=lil (flue cof)))) +<) - =+ all=(~(tap by r.arc)) - |- ^- (bolt (jug mark mark)) - ?~ all (flue cof) - %+ cope $(cof cof, all t.all) - |= [cof=cafe lil=(jug mark mark)] - =* for p.i.all - =+ raf=(fang cof for) - ?: ?=(%2 -.q.raf) - =. q.q.raf :_(q.q.raf leaf/"! {<`mark`for>} build failed, ignoring.") - ((slog 0 (flop q.q.raf)) (fine cof lil)) - %+ cope `(bolt vase)`raf - |= [cof=cafe vax=vase] + %+ cope + =| sup=path + |- ^- (bolt (list ,[mark vase])) + %+ cope (lend cof [bek (welp sup /mar)]) + |= [cof=cafe arc=arch] + =+ all=(skim (turn (~(tap by r.arc)) head) (sane %tas)) + |- ^- (bolt (list ,[mark vase])) + ?~ all (fine cof ~) + %+ cope $(all t.all) + |= [cof=cafe dep=(list ,[mark vase])] + %+ cope ^^^$(cof cof, sup [i.all sup]) + |= [cof=cafe wid=(list ,[mark vase])] ^- (bolt (list ,[mark vase])) + =+ [res=(weld wid dep) pax=(flop sup)] + ?~ pax (fine cof res) + ?. (~(has by r.arc) %hoon) (fine cof res) + =+ :- sil=[%core (norm ska bek (welp sup /mar))] + for=(rap 3 |-([i.pax ?~(t.pax ~ ['-' $(pax t.pax)])])) + =+ raf=(;~(cope make furl feel) cof sil) + ?: ?=(%2 -.q.raf) + =- ((slog 0 (flop `tang`-)) (fine cof res)) + ?^ t.pax ~ :: error on top-level marks + :_(q.q.raf leaf/"! {<`mark`for>} build failed, ignoring.") + (cope `(bolt vase)`raf (flux |=(vax=vase [[for vax] res]))) + |= [cof=cafe all=(list ,[mark vase])] ^- (bolt (jug mark mark)) %+ fine cof - %- ~(gas ju lil) + |- ^- (jug mark mark) + ?~ all ~ + %- ~(gas ju $(all t.all)) + =+ [for vax]=i.all ~| weg=(jam 3 p.vax) %+ weld ^- (list ,[mark mark]) @@ -1171,8 +1206,19 @@ :: %core %+ cool |.(leaf/"ford: core {<(tope p.kas)>}") - %+ cope (cope (fade cof %hoon p.kas) abut:(meow p.kas ~)) - (flux |=(cor=vase [%& %core cor])) + %- cope :_ (flux |=(cor=vase [%& %core cor])) + =+ bem=p.kas + ?~ s.bem (cope (fade cof %hoon bem) abut:(meow bem ~)) + =+ opt=`(list term)`(fall (tear i.s.bem) ~) + ?~ opt (cope (fade cof %hoon bem) abut:(meow bem ~)) + |- ^- (bolt vase) + =. i.s.bem (tack opt) + %+ coop (cope (fade cof %hoon bem) abut:(meow bem ~)) + |= [cof=cafe ~] ^- (bolt vase) + ?~ t.opt (flaw cof ~) + %+ coop ^$(cof cof, opt t.opt, t.s.bem :_(t.s.bem i.opt)) + |= [cof=cafe ~] ^- (bolt vase) + ^$(cof cof, opt :_(t.t.opt (tack i.opt i.t.opt ~))) :: %diff %+ cool |.(leaf/"ford: diff {<`@p`(mug p.kas)>} {<`@p`(mug q.kas)>}") @@ -1454,6 +1500,7 @@ %see =. r.p.hon ?:(?=([%ud 0] r.p.hon) r.how r.p.hon) $(hon q.hon, how p.hon) + :: %saw %+ cope $(hon q.hon) |= [cof=cafe sam=vase] diff --git a/base/arvo/gall.hoon b/base/arvo/gall.hoon index 7d3811502..00de64880 100644 --- a/base/arvo/gall.hoon +++ b/base/arvo/gall.hoon @@ -437,7 +437,7 @@ %& ap-abet:(ap-pout:pap t.t.t.pax %diff +.q.+>.q.hin) %| =+ why=p.q.+>.q.hin =. why (turn why |=(a=tank rose/[~ "! " ~]^[a]~)) - ~> %slog.`%*(. >[%wh %y]< +> [>%mo-cook-fail< (flop why)]) + ~> %slog.`rose/[" " "[" "]"]^[>%mo-cook-fail< (flop why)] ~& [him=q.q.pry our=our pax=pax] :: :: here we should crash because the right thing @@ -923,13 +923,15 @@ =+ cug=(ap-find /lame) ?~ cug =. why [>%ap-lame dap wut< (turn why |=(a=tank rose/[~ "! " ~]^[a]~))] - ~> %slog.`%*(. >[%wh %y]< +> (flop why)) + ~> %slog.`rose/[" " "[" "]"]^(flop why) +>.$ =^ cam +>.$ %+ ap-call q.u.cug !>([wut why]) ?^ cam - ~&([%ap-lame-lame u.cam] +>.$) + =. why [>%ap-lame-lame< (turn u.cam |=(a=tank rose/[~ "! " ~]^[a]~))] + ~> %slog.`rose/[" " "[" "]"]^(welp (flop why) leaf/"." (flop u.cam)) + +>.$ +>.$ :: ++ ap-pour :: generic take diff --git a/base/mar/bit-accounts.hoon b/base/mar/bit/accounts.hoon similarity index 100% rename from base/mar/bit-accounts.hoon rename to base/mar/bit/accounts.hoon diff --git a/base/mar/bit-addr-made.hoon b/base/mar/bit/addr-made.hoon similarity index 100% rename from base/mar/bit-addr-made.hoon rename to base/mar/bit/addr-made.hoon diff --git a/base/mar/bit-addr-request.hoon b/base/mar/bit/addr-request.hoon similarity index 100% rename from base/mar/bit-addr-request.hoon rename to base/mar/bit/addr-request.hoon diff --git a/base/mar/bit-api-call.hoon b/base/mar/bit/api-call.hoon similarity index 100% rename from base/mar/bit-api-call.hoon rename to base/mar/bit/api-call.hoon diff --git a/base/mar/bit-get-token.hoon b/base/mar/bit/get-token.hoon similarity index 100% rename from base/mar/bit-get-token.hoon rename to base/mar/bit/get-token.hoon diff --git a/base/mar/bit-transaction.hoon b/base/mar/bit/transaction.hoon similarity index 100% rename from base/mar/bit-transaction.hoon rename to base/mar/bit/transaction.hoon diff --git a/base/mar/cloud-auth.hoon b/base/mar/cloud/auth.hoon similarity index 100% rename from base/mar/cloud-auth.hoon rename to base/mar/cloud/auth.hoon diff --git a/base/mar/cloud-secret.hoon b/base/mar/cloud/secret.hoon similarity index 100% rename from base/mar/cloud-secret.hoon rename to base/mar/cloud/secret.hoon diff --git a/base/mar/dill-belt.hoon b/base/mar/dill/belt.hoon similarity index 100% rename from base/mar/dill-belt.hoon rename to base/mar/dill/belt.hoon diff --git a/base/mar/dill-blit.hoon b/base/mar/dill/blit.hoon similarity index 100% rename from base/mar/dill-blit.hoon rename to base/mar/dill/blit.hoon diff --git a/base/mar/oct3-move.hoon b/base/mar/oct3/move.hoon similarity index 100% rename from base/mar/oct3-move.hoon rename to base/mar/oct3/move.hoon diff --git a/base/mar/oct3-update.hoon b/base/mar/oct3/update.hoon similarity index 100% rename from base/mar/oct3-update.hoon rename to base/mar/oct3/update.hoon diff --git a/base/mar/oct4-move.hoon b/base/mar/oct4/move.hoon similarity index 100% rename from base/mar/oct4-move.hoon rename to base/mar/oct4/move.hoon diff --git a/base/mar/oct4-update.hoon b/base/mar/oct4/update.hoon similarity index 100% rename from base/mar/oct4-update.hoon rename to base/mar/oct4/update.hoon diff --git a/base/mar/sole-action.hoon b/base/mar/sole/action.hoon similarity index 100% rename from base/mar/sole-action.hoon rename to base/mar/sole/action.hoon diff --git a/base/mar/sole-effect.hoon b/base/mar/sole/effect.hoon similarity index 100% rename from base/mar/sole-effect.hoon rename to base/mar/sole/effect.hoon diff --git a/base/mar/talk-command.hoon b/base/mar/talk/command.hoon similarity index 100% rename from base/mar/talk-command.hoon rename to base/mar/talk/command.hoon diff --git a/base/mar/talk-report.hoon b/base/mar/talk/report.hoon similarity index 100% rename from base/mar/talk-report.hoon rename to base/mar/talk/report.hoon From 9b670320d1df1f64fbd97dc65530d788b1cbc9b8 Mon Sep 17 00:00:00 2001 From: Anton Dyudin Date: Wed, 24 Jun 2015 11:01:25 -0700 Subject: [PATCH 25/34] minor renaming --- ape/hood.hoon | 52 +++++++++++++++++++-------------------- cat/hood/breload.hoon | 2 +- cat/hood/invite.hoon | 2 +- cat/hood/link.hoon | 2 +- cat/hood/mass.hoon | 2 +- cat/hood/merge.hoon | 2 +- cat/hood/mount.hoon | 2 +- cat/hood/reload-desk.hoon | 2 +- cat/hood/reload.hoon | 2 +- cat/hood/reset.hoon | 2 +- cat/hood/start.hoon | 2 +- cat/hood/sync.hoon | 2 +- cat/hood/unmount.hoon | 2 +- cat/hood/verb.hoon | 2 +- dog/hood/begin.hoon | 8 +++--- 15 files changed, 43 insertions(+), 43 deletions(-) diff --git a/ape/hood.hoon b/ape/hood.hoon index 009909764..89ac0af11 100644 --- a/ape/hood.hoon +++ b/ape/hood.hoon @@ -71,38 +71,38 @@ ++ from-helm (from-lib %helm [..$ ,_abet]:(helm-work)) ++ from-kiln (from-lib %kiln [..$ ,_abet]:(kiln-work)) :: -++ poke-dill-belt (wrap poke-dill-belt):from-drum -++ poke-helm-init (wrap poke-init):from-helm -++ poke-helm-verb (wrap poke-verb):from-helm -++ poke-helm-send-hi (wrap poke-send-hi):from-helm -++ poke-helm-hi (wrap poke-hi):from-helm -++ poke-hood-link (wrap poke-link):from-drum -++ poke-hood-mass (wrap poke-mass):from-helm -++ poke-hood-mount (wrap poke-mount):from-kiln -++ poke-hood-unmount (wrap poke-unmount):from-kiln -++ poke-hood-sync (wrap poke-sync):from-kiln -++ poke-hood-unsync (wrap poke-unsync):from-kiln -++ poke-hood-begin (wrap poke-begin):from-helm -++ poke-hood-invite (wrap poke-invite):from-helm -++ poke-hood-merge (wrap poke-merge):from-kiln -++ poke-hood-reload (wrap poke-reload):from-helm -++ poke-hood-reset (wrap poke-reset):from-helm -++ poke-hood-start (wrap poke-start):from-drum -++ poke-hood-reload-desk (wrap poke-reload-desk):from-helm -++ poke-kiln-cp (wrap poke-cp):from-kiln -++ poke-kiln-rm (wrap poke-rm):from-kiln -++ poke-kiln-mv (wrap poke-mv):from-kiln -++ poke-kiln-schedule (wrap poke-schedule):from-kiln -++ poke-will (wrap poke-will):from-helm +++ init-helm |=([way=wire *] [~ +>]) +++ made-kiln (wrap take-made):from-kiln ++ mere-kiln (wrap take-mere):from-kiln ++ mere-kiln-sync (wrap take-mere-sync):from-kiln -++ made-kiln (wrap take-made):from-kiln -++ init-helm |=([way=wire *] [~ +>]) ++ note-helm (wrap take-note):from-helm -++ reap-drum-phat (wrap reap-phat):from-drum ++ onto-drum (wrap take-onto):from-drum ++ peer-drum (wrap peer):from-drum +++ poke-dill-belt (wrap poke-dill-belt):from-drum +++ poke-drum-link (wrap poke-link):from-drum +++ poke-drum-start (wrap poke-start):from-drum +++ poke-helm-begin (wrap poke-begin):from-helm +++ poke-helm-hi (wrap poke-hi):from-helm +++ poke-helm-init (wrap poke-init):from-helm +++ poke-helm-invite (wrap poke-invite):from-helm +++ poke-helm-mass (wrap poke-mass):from-helm +++ poke-helm-reload (wrap poke-reload):from-helm +++ poke-helm-reload-desk (wrap poke-reload-desk):from-helm +++ poke-helm-reset (wrap poke-reset):from-helm +++ poke-helm-send-hi (wrap poke-send-hi):from-helm +++ poke-helm-verb (wrap poke-verb):from-helm +++ poke-kiln-cp (wrap poke-cp):from-kiln +++ poke-kiln-merge (wrap poke-merge):from-kiln +++ poke-kiln-mount (wrap poke-mount):from-kiln +++ poke-kiln-mv (wrap poke-mv):from-kiln +++ poke-kiln-rm (wrap poke-rm):from-kiln +++ poke-kiln-schedule (wrap poke-schedule):from-kiln +++ poke-kiln-sync (wrap poke-sync):from-kiln +++ poke-kiln-unmount (wrap poke-unmount):from-kiln +++ poke-kiln-unsync (wrap poke-unsync):from-kiln +++ poke-will (wrap poke-will):from-helm ++ quit-drum-phat (wrap quit-phat):from-drum +++ reap-drum-phat (wrap reap-phat):from-drum ++ went-helm (wrap take-went):from-helm ++ writ-kiln-sync (wrap take-writ):from-kiln -- diff --git a/cat/hood/breload.hoon b/cat/hood/breload.hoon index 254a5b452..fe532c236 100644 --- a/cat/hood/breload.hoon +++ b/cat/hood/breload.hoon @@ -8,5 +8,5 @@ |= $: [now=@da eny=@uvI bec=beak] [arg=(list term) ~] == -:+ %hood-reload-desk %base +:+ %helm-reload-desk %base arg diff --git a/cat/hood/invite.hoon b/cat/hood/invite.hoon index 19653c4e4..156cdab21 100644 --- a/cat/hood/invite.hoon +++ b/cat/hood/invite.hoon @@ -8,4 +8,4 @@ |= $: [now=@da eny=@uvI bec=beak] [[who=@p myl=@t ~] ~] == -[%hood-invite who myl] +[%helm-invite who myl] diff --git a/cat/hood/link.hoon b/cat/hood/link.hoon index 80ddd6c4f..dc70d442b 100644 --- a/cat/hood/link.hoon +++ b/cat/hood/link.hoon @@ -8,7 +8,7 @@ |= $: [now=@da eny=@uvI byk=beak] [arg=$?([dap=term ~] [who=ship dap=term ~]) ~] == -:- %hood-link +:- %drum-link ?~ +.arg [p.byk dap.arg] [who.arg dap.arg] diff --git a/cat/hood/mass.hoon b/cat/hood/mass.hoon index 2e02919c9..30deb428d 100644 --- a/cat/hood/mass.hoon +++ b/cat/hood/mass.hoon @@ -8,4 +8,4 @@ |= $: [now=@da eny=@uvI bec=beak] [arg=~ ~] == -[%hood-mass ~] +[%helm-mass ~] diff --git a/cat/hood/merge.hoon b/cat/hood/merge.hoon index d57fdb9fe..667100284 100644 --- a/cat/hood/merge.hoon +++ b/cat/hood/merge.hoon @@ -8,5 +8,5 @@ |= $: [now=@da eny=@uvI bec=beak] [[syd=@tas her=@p sud=@tas gem=?([?(%auto germ) ~] ~)] ~] == -:- %hood-merge +:- %kiln-merge [syd her sud ?~(gem %auto -.gem)] diff --git a/cat/hood/mount.hoon b/cat/hood/mount.hoon index b3dc3c7b5..485dfb97d 100644 --- a/cat/hood/mount.hoon +++ b/cat/hood/mount.hoon @@ -8,5 +8,5 @@ |= $: [now=@da eny=@uvI bec=beak] [arg=[pax=path pot=@tas ~] ~] == -:- %hood-mount +:- %kiln-mount [pax pot]:arg diff --git a/cat/hood/reload-desk.hoon b/cat/hood/reload-desk.hoon index fcd49767f..71e60de30 100644 --- a/cat/hood/reload-desk.hoon +++ b/cat/hood/reload-desk.hoon @@ -8,5 +8,5 @@ |= $: [now=@da eny=@uvI bec=beak] [arg=[desk (list term)] ~] == -:- %hood-reload-desk +:- %helm-reload-desk arg diff --git a/cat/hood/reload.hoon b/cat/hood/reload.hoon index f25d28966..99d74a06e 100644 --- a/cat/hood/reload.hoon +++ b/cat/hood/reload.hoon @@ -8,5 +8,5 @@ |= $: [now=@da eny=@uvI bec=beak] [arg=(list term) ~] == -:- %hood-reload +:- %helm-reload arg diff --git a/cat/hood/reset.hoon b/cat/hood/reset.hoon index 2bcc37fec..6974c7ae6 100644 --- a/cat/hood/reset.hoon +++ b/cat/hood/reset.hoon @@ -8,4 +8,4 @@ |= $: [now=@da eny=@uvI bec=beak] [arg=~ ~] == -[%hood-reset ~] +[%helm-reset ~] diff --git a/cat/hood/start.hoon b/cat/hood/start.hoon index 098a9b709..077c92e92 100644 --- a/cat/hood/start.hoon +++ b/cat/hood/start.hoon @@ -8,7 +8,7 @@ |= $: [now=@da eny=@uvI bec=beak] [arg=[@ $|(~ [@ ~])] ~] == -:- %hood-start +:- %drum-start ?> ((sane %tas) -.arg) ?@ +.arg [%home -.arg] ?> ((sane %tas) +<.arg) diff --git a/cat/hood/sync.hoon b/cat/hood/sync.hoon index 887a0be59..97ac1bbc4 100644 --- a/cat/hood/sync.hoon +++ b/cat/hood/sync.hoon @@ -8,5 +8,5 @@ |= $: [now=@da eny=@uvI bec=beak] [arg=[syd=@tas her=@p sud=@tas ~] ~] == -:- %hood-sync +:- %kiln-sync [syd her sud]:arg diff --git a/cat/hood/unmount.hoon b/cat/hood/unmount.hoon index 9cec0679c..73806b55c 100644 --- a/cat/hood/unmount.hoon +++ b/cat/hood/unmount.hoon @@ -8,5 +8,5 @@ |= $: [now=@da eny=@uvI bec=beak] [[mon=$|(term [span path]) ~] ~] == -:- %hood-unmount +:- %kiln-unmount mon diff --git a/cat/hood/verb.hoon b/cat/hood/verb.hoon index 57576b81f..dddf9babe 100644 --- a/cat/hood/verb.hoon +++ b/cat/hood/verb.hoon @@ -9,5 +9,5 @@ |= $: [now=@da eny=@ bec=beak] [~ ~] == -~& %hood-verb +~& %helm-verb [%helm-verb ~] diff --git a/dog/hood/begin.hoon b/dog/hood/begin.hoon index d82acd68b..0a98967a1 100644 --- a/dog/hood/begin.hoon +++ b/dog/hood/begin.hoon @@ -14,20 +14,20 @@ == ^- (sole-result (cask begs)) %+ sole-lo - [%& %hood-begin "your ship: ~"] + [%& %helm-begin "your ship: ~"] %+ sole-go fed:ag |= his=@p %+ sole-lo - [%& %hood-ticket "your ticket: ~"] + [%& %helm-ticket "your ticket: ~"] %+ sole-go fed:ag |= tic=@p %+ sole-lo - [%& %hood-entropy "some entropy: "] + [%& %helm-entropy "some entropy: "] %+ sole-go (boss 256 (more gon qit)) |= yen=@t =+ ney=(shax yen) %+ sole-yo `tank`[%leaf "entropy check: {(scow %p `@p`(mug ney))}"] -%+ sole-so %hood-begin +%+ sole-so %helm-begin :* his tic ney From e7b7a80a7fc967a50d62cbf802ab1d60e8ac15cf Mon Sep 17 00:00:00 2001 From: Anton Dyudin Date: Wed, 24 Jun 2015 11:30:28 -0700 Subject: [PATCH 26/34] added |label, don't disconnect from dojo when blocked --- ape/dojo.hoon | 4 +++- ape/hood.hoon | 1 + cat/hood/label.hoon | 12 ++++++++++++ lib/kiln.hoon | 5 +++++ 4 files changed, 21 insertions(+), 1 deletion(-) create mode 100644 cat/hood/label.hoon diff --git a/ape/dojo.hoon b/ape/dojo.hoon index 7eea9b7e2..ff14a5e44 100644 --- a/ape/dojo.hoon +++ b/ape/dojo.hoon @@ -369,7 +369,9 @@ :: ++ dy-done :: dialog submit |= txt=tape - ?> ?=(^ pro) + ?. ?=(^ pro) + ~& %dy-no-prompt + (dy-diff %bel ~) (dy-slam /dial u.pro !>(txt)) :: ++ dy-over :: finish construction diff --git a/ape/hood.hoon b/ape/hood.hoon index 89ac0af11..2936711ef 100644 --- a/ape/hood.hoon +++ b/ape/hood.hoon @@ -92,6 +92,7 @@ ++ poke-helm-send-hi (wrap poke-send-hi):from-helm ++ poke-helm-verb (wrap poke-verb):from-helm ++ poke-kiln-cp (wrap poke-cp):from-kiln +++ poke-kiln-label (wrap poke-label):from-kiln ++ poke-kiln-merge (wrap poke-merge):from-kiln ++ poke-kiln-mount (wrap poke-mount):from-kiln ++ poke-kiln-mv (wrap poke-mv):from-kiln diff --git a/cat/hood/label.hoon b/cat/hood/label.hoon new file mode 100644 index 000000000..9b4113620 --- /dev/null +++ b/cat/hood/label.hoon @@ -0,0 +1,12 @@ +:: +:::: /hoon/label/hood/cat + :: +/? 314 +:: +:::: + !: +|= $: [now=@da eny=@uvI bec=beak] + [arg=[syd=desk lab=@tas ~] ~] + == +:- %kiln-label +[syd lab]:arg diff --git a/lib/kiln.hoon b/lib/kiln.hoon index f7ab5cfe0..59fa1f61e 100644 --- a/lib/kiln.hoon +++ b/lib/kiln.hoon @@ -135,6 +135,11 @@ %+ furl (fray output) (foal output -:(flop input) %noun .^(%cx input)) :: + ++ poke-label + |= [syd=desk lab=@tas] + =+ pax=/(scot %p our)/[syd]/[lab] + (do-info "labeled {(spud pax)}" [syd %| lab]) + :: ++ poke-schedule |= [where=path tym=@da eve=@t] =. where (welp where /sched) From 2eab6ad42aeeee1bb3617a809c7b19b315712115 Mon Sep 17 00:00:00 2001 From: Anton Dyudin Date: Wed, 24 Jun 2015 12:50:30 -0700 Subject: [PATCH 27/34] Rename %time to %behn, tym to now; closes #334 --- ape/dojo.hoon | 2 +- ape/talk.hoon | 2 +- arvo/{time.hoon => behn.hoon} | 10 +++++----- arvo/eyre.hoon | 18 +++++++++--------- arvo/gall.hoon | 2 +- arvo/jael.hoon | 2 +- arvo/zuse.hoon | 34 +++++++++++++++++----------------- cat/solid.hoon | 2 +- lib/helm.hoon | 2 +- 9 files changed, 37 insertions(+), 37 deletions(-) rename arvo/{time.hoon => behn.hoon} (97%) diff --git a/ape/dojo.hoon b/ape/dojo.hoon index ff14a5e44..6d7adac7d 100644 --- a/ape/dojo.hoon +++ b/ape/dojo.hoon @@ -454,7 +454,7 @@ :: ++ dy-twig-head :: dynamic state ^- vase - :(slop !>(`our=@p`our.hid) !>(`tym=@da`now.hid) !>(`eny=@uvI`eny.hid)) + :(slop !>(`our=@p`our.hid) !>(`now=@da`now.hid) !>(`eny=@uvI`eny.hid)) :: ++ dy-made-dial :: dialog product |= cag=cage diff --git a/ape/talk.hoon b/ape/talk.hoon index a9475dac8..3ad191455 100644 --- a/ape/talk.hoon +++ b/ape/talk.hoon @@ -782,7 +782,7 @@ %_(+> coz [cod coz]) :: ++ sh-twig-head ^- vase :: eval data - :(slop !>(`our=@p`our.hid) !>(`tym=@da`now.hid) !>(`eny=@uvI`eny.hid)) + :(slop !>(`our=@p`our.hid) !>(`now=@da`now.hid) !>(`eny=@uvI`eny.hid)) :: ++ sh-work :: do work |= job=work diff --git a/arvo/time.hoon b/arvo/behn.hoon similarity index 97% rename from arvo/time.hoon rename to arvo/behn.hoon index a9b0453dc..f281bd481 100644 --- a/arvo/time.hoon +++ b/arvo/behn.hoon @@ -1,4 +1,4 @@ -:: :: %time, just a timer +:: :: %behn, just a timer !? 164 !::: |= pit=vase @@ -12,7 +12,7 @@ == :: ++ broq |* [a=_,* b=_,*] :: brodal skew qeu (list (sqeu a b)) :: -++ gift gift-time :: out result <-$ +++ gift gift-behn :: out result <-$ ++ kiss :: in request ->$ $% [%rest p=@da] :: cancel alarm [%wait p=@da] :: set alarm @@ -161,10 +161,10 @@ q.hic ^- kiss ?: ?=(%soft -.q.hic) - :: ~& [%time-call-soft (,@tas `*`-.p.q.hic)] + :: ~& [%behn-call-soft (,@tas `*`-.p.q.hic)] ((hard kiss) p.q.hic) ?: (~(nest ut -:!>(*kiss)) | p.hic) q.hic - ~& [%time-call-flub (,@tas `*`-.q.hic)] + ~& [%behn-call-flub (,@tas `*`-.q.hic)] ((hard kiss) q.hic) == =^ mof tym @@ -193,7 +193,7 @@ %wegh :_ tym :_ ~ :^ hen %give %mass - :- %time + :- %behn :- %| :~ tym/`tym == diff --git a/arvo/eyre.hoon b/arvo/eyre.hoon index 933bb3af5..d9a4c2741 100644 --- a/arvo/eyre.hoon +++ b/arvo/eyre.hoon @@ -10,6 +10,10 @@ ++ note :: out request $-> $% $: %a :: to %ames $% [%wont p=sock q=[path *]] :: + == == :: + $: %b :: to %behn + $% [%wait p=@da] :: + [%rest p=@da] :: == == :: $: %d :: to %dill $% [%flog p=[%crud p=@tas q=(list tank)]] :: @@ -24,14 +28,13 @@ == == :: $: %g :: to %gall $% [%deal p=sock q=cush] :: full transmission - == == :: - $: %t :: to %temp - $% [%wait p=@da] :: - [%rest p=@da] :: == == == :: ++ sign :: in result $<- $? $: %a :: by %ames $% [%woot p=ship q=coop] :: + == == :: + $: %b :: by %behn + $% [%wake ~] :: timer activate == == :: $: %g :: by %gall $% [%unto p=cuft] :: within agent @@ -42,9 +45,6 @@ $: %f :: by %ford $% [%made p=@uvH q=gage] :: [%news ~] :: - == == :: - $: %t :: by %time - $% [%wake ~] :: timer activate == == :: $: @tas :: by any $% [%crud p=@tas q=(list tank)] :: @@ -1399,7 +1399,7 @@ =< abet ?~ ude done =. hen p.u.ude - =. ..ix (pass-note of//[ire] [%t %rest era]) + =. ..ix (pass-note of//[ire] [%b %rest era]) (give-even(ude ~) q.u.ude num ven) :: ++ give-even @@ -1428,7 +1428,7 @@ ?: =(a p.eve) ?^ ude ~&(e/ix/wait/replaced=p.u.ude abet(u.ude [hen &])) =. era (add ~s30 now) - (pass-note:abet(ude [~ hen &]) of//[ire] [%t %wait era]) + (pass-note:abet(ude [~ hen &]) of//[ire] [%b %wait era]) ?: (gth a p.eve) ~|(seq-high/cur=p.eve !!) =+ ven=~|(seq-low/cur=p.eve (~(got by q.eve) a)) abet:(give-even & a ven) diff --git a/arvo/gall.hoon b/arvo/gall.hoon index 00de64880..59b8e2dac 100644 --- a/arvo/gall.hoon +++ b/arvo/gall.hoon @@ -1115,7 +1115,7 @@ %mont `%c %ogre `%c %them `%e - %wait `%t + %wait `%b %want `%a %warp `%c == diff --git a/arvo/jael.hoon b/arvo/jael.hoon index 622038b25..adc2e52b4 100644 --- a/arvo/jael.hoon +++ b/arvo/jael.hoon @@ -42,7 +42,7 @@ == :: ++ move ,[p=duct q=(mold note gift)] :: typed move ++ note :: out request $-> - $% $: %t :: to %time + $% $: %b :: to %behn $% [%wait p=@da] :: [%rest p=@da] :: == == == :: diff --git a/arvo/zuse.hoon b/arvo/zuse.hoon index 9b10d40c2..6cdd24cd7 100644 --- a/arvo/zuse.hoon +++ b/arvo/zuse.hoon @@ -2321,6 +2321,19 @@ [%wont p=sock q=path r=*] :: e2e send message == :: :: +:::: %behn + :: +++ gift-behn :: out result <-$ + $% [%mass p=mass] :: memory usage + [%wake ~] :: wakey-wakey + == :: +++ kiss-behn :: in request ->$ + $% [%rest p=@da] :: cancel alarm + [%wait p=@da] :: set alarm + [%wake ~] :: timer activate + [%wegh ~] :: report memory + == :: +:: :::: %clay :: ++ khan :: @@ -2590,19 +2603,6 @@ [%mack p=(unit tang)] :: message ack == :: :: -:::: %time - :: -++ gift-time :: out result <-$ - $% [%mass p=mass] :: memory usage - [%wake ~] :: wakey-wakey - == :: -++ kiss-time :: in request ->$ - $% [%rest p=@da] :: cancel alarm - [%wait p=@da] :: set alarm - [%wake ~] :: timer activate - [%wegh ~] :: report memory - == :: -:: :::: %arvo :: ++ gift-arvo :: out result <-$ @@ -2612,7 +2612,7 @@ gift-eyre gift-ford gift-gall - gift-time + gift-behn == ++ kiss-arvo :: in request ->$ $? kiss-ames @@ -2621,25 +2621,25 @@ kiss-eyre kiss-ford kiss-gall - kiss-time + kiss-behn == ++ note-arvo :: out request $-> $? [@tas %meta vase] $% [%a kiss-ames] + [%b kiss-behn] [%c kiss-clay] [%d kiss-dill] [%e kiss-eyre] [%f kiss-ford] [%g kiss-gall] - [%t kiss-time] == == ++ sign-arvo :: in result $<- $% [%a gift-ames] + [%b gift-behn] [%c gift-clay] [%d gift-dill] [%e gift-eyre] [%f gift-ford] [%g gift-gall] - [%t gift-time] == -- diff --git a/cat/solid.hoon b/cat/solid.hoon index 52eb26273..bfc641385 100644 --- a/cat/solid.hoon +++ b/cat/solid.hoon @@ -23,10 +23,10 @@ [%g %gall] [%f %ford] [%a %ames] + [%b %behn] [%c %clay] [%d %dill] [%e %eyre] - [%t %time] == |- ^+ all ?~ vay all diff --git a/lib/helm.hoon b/lib/helm.hoon index 55b4fb2b7..bd79f331b 100644 --- a/lib/helm.hoon +++ b/lib/helm.hoon @@ -131,12 +131,12 @@ ^- (list ,[p=@tas q=@tas]) :~ [%$ %zuse] [%a %ames] + [%b %behn] [%c %clay] [%d %dill] [%e %eyre] [%f %ford] [%g %gall] - [%t %time] == |= [p=@tas q=@tas] =+ way=`path`(welp top /[q]) From 06c76f7fb71c68823d447529215128385b380362 Mon Sep 17 00:00:00 2001 From: Anton Dyudin Date: Wed, 24 Jun 2015 13:42:50 -0700 Subject: [PATCH 28/34] talk robustness --- ape/talk.hoon | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ape/talk.hoon b/ape/talk.hoon index 3ad191455..76514010a 100644 --- a/ape/talk.hoon +++ b/ape/talk.hoon @@ -1659,6 +1659,7 @@ ?+ -.sep ~&(tr-lost/sep "") %fat =+ rem=$(sep q.sep) + ?: (gth (lent rem) 60) (trim 62 rem) =- "{rem} {(trim (sub 60 (lent rem)) -)}" ?+ -.p.sep "..." %tank ~(ram re %rose [" " `~] +.p.sep) @@ -1686,7 +1687,7 @@ :: ~& [%talk-peer src ost pax] ?: ?=([%sole *] pax) ?> =(our.hid src.hid) - ?< (~(has by shells) ost.hid) + ~? (~(has by shells) ost.hid) [%talk-peer-replaced ost.hid pax] ra-abet:(~(ra-console ra ost.hid ~) src.hid t.pax) :: ~& [%talk-peer-data ost.hid src.hid pax] ra-abet:(~(ra-subscribe ra ost.hid ~) src.hid pax) From 0fddb4e3daf743e85e94fc66c5e79525851d351e Mon Sep 17 00:00:00 2001 From: Anton Dyudin Date: Wed, 24 Jun 2015 16:57:17 -0700 Subject: [PATCH 29/34] fixed websole --- ape/dojo.hoon | 2 ++ arvo/gall.hoon | 71 ++++++++++++++++++++++++++++++-------------------- 2 files changed, 45 insertions(+), 28 deletions(-) diff --git a/ape/dojo.hoon b/ape/dojo.hoon index 6d7adac7d..5db9eaa46 100644 --- a/ape/dojo.hoon +++ b/ape/dojo.hoon @@ -672,6 +672,7 @@ ++ peer-sole |= [pax=path] ^- (quip move +>) + :: ~& [%dojo-peer ost.hid pax] ~? !=(src.hid our.hid) [%dojo-peer-stranger ost.hid src.hid pax] :: ?> =(src.hid our.hid) ~? (~(has by hoc) ost.hid) [%dojo-peer-replaced ost.hid pax] @@ -691,6 +692,7 @@ ++ poke-sole-action |= [act=sole-action] ^- (quip move +>) + ~| [%dojo-poke ost.hid -.act (~(run by hoc) ,~)] :: ~& [%dojo-poke ost.hid src.hid act] :: ~? !=(src.hid our.hid) [%dojo-poke ost.hid src.hid] he-abet:(~(he-type he [ost.hid ~] (~(got by hoc) ost.hid)) act) diff --git a/arvo/gall.hoon b/arvo/gall.hoon index 59b8e2dac..263daf32e 100644 --- a/arvo/gall.hoon +++ b/arvo/gall.hoon @@ -29,8 +29,14 @@ -- :: |% :::::::::::::::::::::::::::::::::::::::::::::::::::::: %gall state :::::::::::::::::::::::::::::::::::::::::::::::::::::: +++ axle-n ?(axle axle-0) :: upgrade path +++ axle-0 ,[%0 pol=(map ship mast-0)] :: +++ mast-0 :: + (cork mast |=(mast +<(bum (~(run by bum) seat-0)))) :: +++ seat-0 :: + (cork seat |=(seat +<(|7 zam=(scar |7.+<)))) :: ++ axle :: all state - $: %0 :: state version + $: %1 :: state version pol=(map ship mast) :: apps by ship == :: ++ gest :: subscriber data @@ -67,6 +73,7 @@ ged=gest :: subscribers hav=vase :: running state byk=beak :: update control + pyl=(map bone mark) :: req'd translations zam=scar :: opaque ducts == :: ++ sofa :: queue for blocked @@ -313,24 +320,16 @@ (mo-boon i.t.pax (mo-chew t.t.pax) +>.sih) :: %pel :: translated peer - ?> ?=([@ @ ~] t.pax) - =+ :* mar=i.t.pax - dap=i.t.t.pax - == - ?: ?=([%f %made *] sih) - ?- -.q.+.sih - %tabl ~|(%made-tabl !!) - %& (mo-give %unto %diff p.q.+>.sih) - %| =. p.q.+>.sih (turn p.q.+>.sih |=(a=tank rose/[~ "! " ~]^[a]~)) - ~> %slog.`%*(. >[%wh %y]< +> [>%mo-cyst-fail< (flop p.q.+>.sih)]) - (mo-give %unto %quit ~) :: XX better errors pls - == - ?> ?=([%g %unto *] sih) - ?. ?=(%diff -.+>.sih) - (mo-give %unto +>.sih) - %+ mo-pass - [%sys pax] - [%f %exec our (mo-beak dap) ~ %cast mar %done ~ `cage`+>+.sih] + ?> ?=([@ ~] t.pax) + =+ mar=i.t.pax + ?> ?=([%f %made *] sih) + ?- -.q.+.sih + %tabl ~|(%made-tabl !!) + %& (mo-give %unto %diff p.q.+>.sih) + %| =. p.q.+>.sih (turn p.q.+>.sih |=(a=tank rose/[~ "! " ~]^[a]~)) + ~> %slog.`%*(. >[%wh %y]< +> [>%mo-cyst-fail< (flop p.q.+>.sih)]) + (mo-give %unto %quit ~) :: XX better errors pls + == :: %red :: diff ack ?> ?=([@ @ @ ~] t.pax) @@ -493,10 +492,6 @@ %+ mo-pass [%sys %val (scot %p q.q.pry) dap ~] [%f %exec our (mo-beak dap) ~ %cast p.cub %done ~ q.cub] - ?: ?=(%peel -.cub) - %+ mo-pass - [%sys %pel p.cub dap ~] - [%g %deal [q.q.pry our] dap %peer q.cub] ap-abet:(ap-club:(ap-abed:ap dap pry) cub) :: ++ mo-club :: local action @@ -596,7 +591,17 @@ :- (~(got by r.zam) p.cov) ?- -.q.cov ?(%slip %sick) !! - %give ?<(=(0 p.cov) [%give %unto p.q.cov]) + %give + ?< =(0 p.cov) + ?. ?=(%diff -.p.q.cov) + [%give %unto p.q.cov] + =+ cay=`cage`p.p.q.cov + =+ mar=(fall (~(get by pyl) p.cov) p.cay) + ?: =(mar p.cay) [%give %unto p.q.cov] + :+ %pass + [%sys %pel dap ~] + [%f %exec our (mo-beak dap) ~ %cast mar %done ~ cay] + :: %pass :+ %pass `path`[%use dap p.q.cov] ?- -.q.q.cov @@ -612,7 +617,7 @@ ++ ap-call :: call into server |= [cog=term arg=vase] ^- [(unit tang) _+>] - =. +> ap-bowl + =. +> ap-bowl =+ arm=(ap-farm cog) ?: ?=(%| -.arm) [`p.arm +>.$] =+ zem=(ap-slam cog p.arm arg) @@ -623,7 +628,7 @@ |= cub=club ^+ +> ?- -.cub - %peel !! + %peel (ap-peel +.cub) %poke (ap-poke +.cub) %peer (ap-peer +.cub) %puff !! @@ -884,6 +889,11 @@ ^+ +> (ap-prep(hav vax) `hav) :: + ++ ap-peel + |= [mar=mark pax=path] + =. pyl (~(put by pyl) ost mar) + (ap-peer pax) + :: ++ ap-peer :: apply %peer |= pax=path ^+ +> @@ -1174,9 +1184,14 @@ ~ :: ++ load :: recreate vane - |= old=axle + |= old=axle-n ^+ ..^$ - ..^$(all old) + ?: ?=(%1 -.old) ..^$(all old) + %= $ + old => |=(seat-0 `seat`+<(zam [~ zam])) + => |=(mast-0 +<(bum (~(run by bum) +>))) + old(- %1, pol (~(run by pol.old) .)) + == :: ++ scry |= [fur=(unit (set monk)) ren=@tas who=ship syd=desk lot=coin tyl=path] From a19244a3df4f6a40937def0d98b2a2ccae713036 Mon Sep 17 00:00:00 2001 From: Anton Dyudin Date: Wed, 24 Jun 2015 17:01:50 -0700 Subject: [PATCH 30/34] overly enthusiatic renaming; restored OS interface --- ape/hood.hoon | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/ape/hood.hoon b/ape/hood.hoon index 2936711ef..0a551b9f2 100644 --- a/ape/hood.hoon +++ b/ape/hood.hoon @@ -81,7 +81,6 @@ ++ poke-dill-belt (wrap poke-dill-belt):from-drum ++ poke-drum-link (wrap poke-link):from-drum ++ poke-drum-start (wrap poke-start):from-drum -++ poke-helm-begin (wrap poke-begin):from-helm ++ poke-helm-hi (wrap poke-hi):from-helm ++ poke-helm-init (wrap poke-init):from-helm ++ poke-helm-invite (wrap poke-invite):from-helm @@ -91,6 +90,8 @@ ++ poke-helm-reset (wrap poke-reset):from-helm ++ poke-helm-send-hi (wrap poke-send-hi):from-helm ++ poke-helm-verb (wrap poke-verb):from-helm +++ poke-hood-begin (wrap poke-begin):from-helm +++ poke-hood-sync (wrap poke-sync):from-kiln ++ poke-kiln-cp (wrap poke-cp):from-kiln ++ poke-kiln-label (wrap poke-label):from-kiln ++ poke-kiln-merge (wrap poke-merge):from-kiln From fbec0a08b62bac42b2756c4fcbbebcd9cdfaf3f7 Mon Sep 17 00:00:00 2001 From: Anton Dyudin Date: Thu, 25 Jun 2015 12:25:19 -0700 Subject: [PATCH 31/34] fixed |mv to move and not copy --- cat/hood/mv.hoon | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cat/hood/mv.hoon b/cat/hood/mv.hoon index 4dd6cc488..72e380578 100644 --- a/cat/hood/mv.hoon +++ b/cat/hood/mv.hoon @@ -1 +1 @@ -|=([^ [input=path output=path ~] ~] kiln-cp/[input output]) +|=([^ [input=path output=path ~] ~] kiln-mv/[input output]) From aaa755d59d0e1454e91f2451d163934ac2d74ff7 Mon Sep 17 00:00:00 2001 From: Max G Date: Fri, 26 Jun 2015 22:27:46 +0300 Subject: [PATCH 32/34] whitespace --- arvo/hoon.hoon | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/arvo/hoon.hoon b/arvo/hoon.hoon index b583532c1..49e4c1535 100644 --- a/arvo/hoon.hoon +++ b/arvo/hoon.hoon @@ -5075,11 +5075,10 @@ :: ++ srm |= [r=@ b=(list ,@) n=@] :: scryptROMix - ?> ?& - =((lent b) (mul 2 r)) - =(n (bex (dec (xeb n)))) - (lth n (bex (mul r 16))) - == + ?> ?& =((lent b) (mul 2 r)) + =(n (bex (dec (xeb n)))) + (lth n (bex (mul r 16))) + == =+ [v=*(list (list ,@)) c=0] =. v |- ^- (list (list ,@)) @@ -5131,7 +5130,7 @@ ?: (gth j l) t =+ u=(add s (lsh 3 sl (rep 3 (flop (rpp 3 4 j))))) =+ f=0 =. f |- ^- @ - ?: (gth k c) f + ?: (gth k c) f =+ q=(hml p pl u ?:(=(k 1) (add sl 4) h)) $(u q, f (mix f q), k +(k)) $(t (add t (lsh 3 (mul (dec j) h) f)), j +(j)) From 9db29dcd275c383be64006f5a8041f79eb3a8dbe Mon Sep 17 00:00:00 2001 From: Raymond Pasco Date: Sun, 28 Jun 2015 13:09:12 -0400 Subject: [PATCH 33/34] Cross-browser compatibility for %eyre auth Fixes #345 --- arvo/eyre.hoon | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arvo/eyre.hoon b/arvo/eyre.hoon index 95f340d17..c4c8d4246 100644 --- a/arvo/eyre.hoon +++ b/arvo/eyre.hoon @@ -414,7 +414,7 @@ return urb.redir($ship.text().toLowerCase()) // XX redundant? req( "/~/auth.json?PUT", - {ship:ship.innerText.toLowerCase(), code:pass.value}, + {ship:$ship.text().toLowerCase(), code:pass.value}, function(){ if(urb.foreign) urb.redir() else document.location.reload() From dada87fa1458b8d266d4d2e1f1b606adf69361c7 Mon Sep 17 00:00:00 2001 From: Philip C Monk Date: Mon, 29 Jun 2015 15:31:33 -0400 Subject: [PATCH 34/34] fix no-sync-duct again --- arvo/clay.hoon | 1 + 1 file changed, 1 insertion(+) diff --git a/arvo/clay.hoon b/arvo/clay.hoon index 9e01db46e..474335ae6 100644 --- a/arvo/clay.hoon +++ b/arvo/clay.hoon @@ -2495,6 +2495,7 @@ [mos ..^$] :: %mont + =. hez.ruf ?^(hez.ruf hez.ruf `[[%$ %sync ~] ~]) =+ pot=(~(get by mon.ruf) p.q.hic) ?^ pot ~& [%already-mounted pot]