diff --git a/base/arvo/clay.hoon b/base/arvo/clay.hoon index 846085d3e..da973b667 100644 --- a/base/arvo/clay.hoon +++ b/base/arvo/clay.hoon @@ -1088,7 +1088,10 @@ =+ vid=(read-at-aeon:ze u.nao p.q.i.xiq) :: ~& %red-at-aeon ?~ vid - ~& [%oh-well mood=p.q.i.xiq aeon=nao] + ?~ u.nao + ~& [%oh-poor `path`[syd '0' r.p.q.i.xiq]] + $(xiq t.xiq) + ~& [%oh-well desk=syd mood=p.q.i.xiq aeon=u.nao] $(xiq t.xiq, xaq [i.xiq xaq]) $(xiq t.xiq, ..wake (balk p.i.xiq u.vid p.q.i.xiq)) :: @@ -2589,6 +2592,7 @@ ++ scry :: inspect |= [fur=(unit (set monk)) ren=@tas his=ship syd=desk lot=coin tyl=path] ^- (unit (unit cage)) + :: ~& scry/[ren =-(~!(- `path`-) [(scot %p his) syd ~(rent co lot) tyl])] =+ got=(~(has by fat.ruf) his) =+ luk=?.(?=(%$ -.lot) ~ ((soft case) p.lot)) ?~ luk [~ ~] diff --git a/base/arvo/dill.hoon b/base/arvo/dill.hoon index 57d47abba..548e54120 100644 --- a/base/arvo/dill.hoon +++ b/base/arvo/dill.hoon @@ -322,7 +322,7 @@ $(q.p.p.sih t.q.p.p.sih) :: [%c %note *] - (from %out (tuba ~(ram re q.+.sih))) + (from %out (tuba p.sih ' ' ~(ram re q.sih))) :: [%c %writ *] init diff --git a/base/arvo/ford.hoon b/base/arvo/ford.hoon index 321f811ef..ce0084d5e 100644 --- a/base/arvo/ford.hoon +++ b/base/arvo/ford.hoon @@ -214,6 +214,17 @@ |= [cog=@tas typ=type] (~(has in (sa (sloe typ))) cog) :: +++ norm :: normalize beam rev + |= [ska=sled bem=beam] + %_ bem + r ?: ?=(%ud -.r.bem) r.bem + =+ num=(ska ~ %cw bem(s ~)) + ?. ?=([~ ~ * * @u] num) + ~& norm-lost/(tope bem(s ~)) + r.bem :: XX + [%ud q.q.u.u.num] + == +:: ++ za :: per event =| $: $: $: our=ship :: computation owner bek=beak :: desk context @@ -290,19 +301,20 @@ |= dep=@uvH ?~ dep ~&(dep-empty/hen +>.$) - =+ dap=~|(dep-missed/dep (~(got by deh.bay) dep)) - ?- -.dap + =+ dap=(~(get by deh.bay) dep) + ?~ dap ~&(dep-missed/dep +>.$) :: XX ~| !! + ?- -.u.dap %done +>.$(mow :_(mow [hen %give %news ~])) %sent - =. p.dap (~(put in p.dap) hen) - +>.$(deh.bay (~(put by deh.bay) dep dap)) + =. p.u.dap (~(put in p.u.dap) hen) + +>.$(deh.bay (~(put by deh.bay) dep u.dap)) %init %_ +>.$ deh.bay - (~(put by deh.bay) dep [%sent [hen ~ ~] p.dap]) + (~(put by deh.bay) dep [%sent [hen ~ ~] p.u.dap]) :: mow - =< (welp :_(mow (turn (~(tap in p.dap)) .))) + =< (welp :_(mow (turn (~(tap in p.u.dap)) .))) |= bem=beam :^ hen %pass [(scot %p our) (scot %uv dep) (tope bem)] [%c [%warp [our p.bem] q.bem ~ [%next %y r.bem (flop s.bem)]]] @@ -356,7 +368,7 @@ :^ %pass [(scot %p our) (scot %ud num) (scot %ud p.kig) (tope bek ~)] %c - :: ~& >> [%camping bem] + ~& >> [%camping bem] [%warp [our p.bem] q.bem [~ %sing ren r.bem (flop s.bem)]] == :: @@ -861,12 +873,12 @@ %+ cope (lend cof bem) |= [cof=cafe arc=arch] ?^ q.arc - (cope (cope (liar cof bem) (lake for)) (fest (norm bem))) + (cope (cope (liar cof bem) (lake for)) (fest (norm ska bem))) ?: (~(has by r.arc) %hook) %+ cope (fade cof %hook bem) |= [cof=cafe hyd=hood] %+ cope (cope (abut:(meow bem arg) cof hyd) (lake for)) - (fest (norm bem)) + (fest (norm ska bem)) (flue cof) :: ++ lake :: check/coerce @@ -999,7 +1011,7 @@ ?^ vux (fine cof u.vux) ?~ s.mob %+ flag - (norm mob) + (norm ska mob) (flaw cof leaf/"beam unavailable" (smyt (tope bem)) ~) ^$(s.mob t.s.mob, mer [i.s.mob mer]) :: @@ -1089,7 +1101,7 @@ ++ make :: reduce silk |= [cof=cafe kas=silk] ^- (bolt gage) - :: ~& [%make (,@tas -.kas)] + :: ~& [%make (,@tas -.kas)] ?- -.kas ^ %. [cof p.kas q.kas] @@ -1104,7 +1116,7 @@ == :: %bake - :: ~& > (tope q.kas) + :: ~& > (tope q.kas) %+ cool |.(leaf/"ford: bake {} {<(tope q.kas)>}") %+ cope (lima cof p.kas q.kas r.kas) |= [cof=cafe vux=(unit vase)] @@ -1548,15 +1560,6 @@ == -- :: - ++ norm :: normalize beam rev - |= bem=beam - %_ bem - r ?: ?=(%ud -.r.bem) r.bem - =+ num=(ska ~ %cw bem(s ~)) - ?. ?=([~ ~ * * @u] num) r.bem :: XX - [%ud q.q.u.u.num] - == - :: ++ pact :: patch |= [cof=cafe kas=silk kos=silk] ^- (bolt gage) @@ -1657,7 +1660,7 @@ =^ mos bay ?: ?=(%wasp -.q.hic) abet:(~(awap za [[our *beak hen] [now eny ski] ~] bay) q.q.hic) - =* bek q.q.hic + =+ bek=-:(norm ski q.q.hic ~) abet:(~(apex za [[our bek hen] [now eny ski] ~] bay) r.q.hic) [mos ..^$(pol (~(put by pol) our bay))] :: @@ -1667,7 +1670,8 @@ ~ :: ++ load :: highly forgiving - |= old=* + |= old=axle + ..^$(+>- old) ::=. old :: ?. ?=([%0 *] old) old :: remove at 1 :: :- %1 @@ -1676,12 +1680,12 @@ :: ?> ?=([n=[p=* q=[tad=* dym=* deh=* jav=*]] l=* r=*] +.old) :: :- [p.n.+.old [tad.q.n.+.old dym.q.n.+.old deh.q.n.+.old ~]] :: [$(+.old l.+.old) $(+.old r.+.old)] - =+ lox=((soft axle) old) - ^+ ..^$ - ?~ lox - ~& %ford-reset - ..^$ - ..^$(+>- u.lox) +:: =+ lox=((soft axle) old) +:: ^+ ..^$ +:: ?~ lox +:: ~& %ford-reset +:: ..^$ +:: ..^$(+>- u.lox) :: ++ scry |= [fur=(unit (set monk)) ren=@tas who=ship syd=desk lot=coin tyl=path] diff --git a/base/cat/helm/unix/gate.hook b/base/cat/helm/unix/gate.hook new file mode 100644 index 000000000..6bca0773a --- /dev/null +++ b/base/cat/helm/unix/gate.hook @@ -0,0 +1,15 @@ +:: +:::: /hook/gate/unix/helm/cat + :: +/? 314 +:: +:::: + !: +|= $: [now=@da eny=@uvI bec=beak] + [[syd=@tas syn=?(~ [? ~])] ~] + == +:+ %helm-unix + syd +?~ syn + ~ +`-.syn diff --git a/base/lib/talk/core.hook b/base/lib/talk/core.hook index 02e5434c9..8cde98c44 100644 --- a/base/lib/talk/core.hook +++ b/base/lib/talk/core.hook @@ -10,6 +10,7 @@ :: |% ++ main :: main story + |= our=ship ^- cord =+ can=(clan our) ?+ can %porch