diff --git a/pkg/arvo/sys/hoon.hoon b/pkg/arvo/sys/hoon.hoon index 94115d9622..05c723fcd2 100644 --- a/pkg/arvo/sys/hoon.hoon +++ b/pkg/arvo/sys/hoon.hoon @@ -1795,6 +1795,12 @@ [b ~ ~] bal(l.a $(a l.a)) :: + ++ run :: apply gate to values + |* b=gate + |- + ?~ a a + [n=(b n.a) l=$(a l.a) r=$(a r.a)] + :: ++ tap :: adds list to end =+ b=`(list _?>(?=(^ a) n.a))`~ |- ^+ b diff --git a/pkg/arvo/sys/vane/ames.hoon b/pkg/arvo/sys/vane/ames.hoon index 0056b2c31e..a3eeaccb37 100644 --- a/pkg/arvo/sys/vane/ames.hoon +++ b/pkg/arvo/sys/vane/ames.hoon @@ -5652,27 +5652,26 @@ keens [keens.s ~] :: snd.+ - %- malt - %+ turn - ~(tap by snd.+.s) + %- ~(urn by snd.+.s) |= [=bone m=message-pump-state-17] - :- bone + =/ hed + ?. =(1 (end 0 bone)) + %plea + ?: =(0 (end 0 (rsh 0 bone))) + %boon + %naxplanation %= m unsent-messages - %- ~(gas to *(qeu message)) - %+ turn - ~(tap to unsent-messages.m) + =* um unsent-messages.m + => [..message hed=hed um=um ..cue] + ~+ %- ~(run to um) |= b=message-blob ^- message - =/ hed - ?. =(1 (end 0 bone)) - %plea - ?: =(0 (end 0 (rsh 0 bone))) - %boon - %naxplanation - =/ msg =>([cue=cue arg=b] ~+((cue arg))) - ;;(message [hed msg]) - == == == + => [..message hed=hed ..cue arg=b] + ~+ ;;(message [hed (cue arg)]) + == + == + == -- :: +scry: dereference namespace ::