diff --git a/.travis/pin-parent-pill-pier.url b/.travis/pin-parent-pill-pier.url index 9356806a76..f0faf43434 100644 --- a/.travis/pin-parent-pill-pier.url +++ b/.travis/pin-parent-pill-pier.url @@ -1 +1 @@ -https://ci-piers.urbit.org/zod-ab9780105496cd2e35de2a523c4f4a55a70b42ca.tgz +https://ci-piers.urbit.org/zod-6a1f32bb1984fa9329c072de09ba67b212c8dbed.tgz diff --git a/.travis/pin-vere-commit.txt b/.travis/pin-vere-commit.txt index 7369795f8b..8bac54d6fb 100644 --- a/.travis/pin-vere-commit.txt +++ b/.travis/pin-vere-commit.txt @@ -1 +1 @@ -cfca39542f64c9dbdd45468a4ae96e602d6be989 +65ce838b26f64311e73410512d83898b081873db diff --git a/lib/hood/helm.hoon b/lib/hood/helm.hoon index 79809195e9..ea906ff8fb 100644 --- a/lib/hood/helm.hoon +++ b/lib/hood/helm.hoon @@ -3,7 +3,7 @@ :: :: :: /? 310 :: version /- sole, hall -[. sole] +/+ pill :: :: :: :::: :: :: :: :: :: @@ -13,8 +13,8 @@ $: hoc/(map bone session) :: consoles == :: ++ session :: - $: say/sole-share :: console state - mud/(unit (sole-dialog @ud)) :: console dialog + $: say/sole-share:sole :: console state + mud/(unit (sole-dialog:sole @ud)) :: console dialog == :: :: :: :: :::: :: :: @@ -155,55 +155,23 @@ =+ way=?:(zus (welp top /sys/[nam]) (welp top /sys/vane/[nam])) =+ fil=.^(@ %cx (welp way /hoon)) [%flog /reload [%veer ?:(=('z' tip) %$ tip) way fil]] +:: +poke-reset: send %vega to reboot kernel :: -++ poke-reset :: reset system - |= hood-reset =< abet - %- emil - %- flop ^- (list card) - =+ top=`path`/(scot %p our)/home/(scot %da now)/sys - :- [%flog /reset %vega (weld top /hoon) (weld top /arvo)] - %+ turn - ^- (list {p/@tas q/path}) - :~ [%$ /zuse] - [%a /vane/ames] - [%b /vane/behn] - [%c /vane/clay] - [%d /vane/dill] - [%e /vane/eyre] - [%f /vane/ford] - [%g /vane/gall] - [%j /vane/jael] - == - |= {p/@tas q/path} - =+ way=`path`(welp top q) - =+ txt=.^(@ %cx (welp way /hoon)) - [%flog /reset %veer p way txt] +:: And reinstall %zuse and the vanes. +:: Trigger with |reset. :: -++ poke-meset :: reset system (new) - |= hood-reset =< abet - %- emil - %- flop ^- (list card) - =+ top=`path`/(scot %p our)/home/(scot %da now)/sys - =+ hun=.^(@ %cx (welp top /hoon/hoon)) - =+ arv=.^(@ %cx (welp top /arvo/hoon)) - :- [%flog /reset [%velo `@t`hun `@t`arv]] - :- =+ way=(weld top `path`/zuse) - [%flog /reset %veer %$ way .^(@ %cx (welp way /hoon))] +++ poke-reset + |= hood-reset + =< abet + %- emil %- flop + ^- (list card) + =/ top=path /(scot %p our)/home/(scot %da now)/sys + =/ hun .^(@ %cx (welp top /hoon/hoon)) + =/ arv .^(@ %cx (welp top /arvo/hoon)) + :- [%flog /reset [%vega `@t`hun `@t`arv]] %+ turn - ^- (list {p/@tas q/@tas}) - :~ [%a %ames] - [%b %behn] - [%c %clay] - [%d %dill] - [%e %eyre] - [%f %ford] - [%g %gall] - [%j %jael] - == - |= {p/@tas q/@tas} - =+ way=`path`(welp top /vane/[q]) - =+ txt=.^(@ %cx (welp way /hoon)) - [%flog /reset %veer p way txt] + (module-ova:pill top) + |=(a=[wire flog:dill] [%flog a]) :: ++ poke-verb :: toggle verbose |= ~ =< abet diff --git a/lib/pill.hoon b/lib/pill.hoon index b4b2204e73..174807f193 100644 --- a/lib/pill.hoon +++ b/lib/pill.hoon @@ -7,7 +7,7 @@ :: ++ module-ova |= sys=path - ^- (list ovum) + ^- (list [wire [%veer term path cord]]) %+ turn ^- (list (pair term path)) :~ :: sys/zuse: standard library @@ -39,7 +39,6 @@ [%j /vane/jael] == |= [=term =path] - ^- ovum =/ pax (weld sys path) =/ txt .^(@ %cx (weld pax /hoon)) [[%vane path] [%veer term pax txt]] diff --git a/sys/arvo.hoon b/sys/arvo.hoon index f82355dd01..1acbdf3764 100644 --- a/sys/arvo.hoon +++ b/sys/arvo.hoon @@ -1,14 +1,21 @@ :::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::: :::::: Postface :::::: :::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::: -~> %slog.[0 leaf+"arvo-boot"] -=< |= {now/@da ovo/*} - ^- * - ~> %slog.[0 leaf+"arvo-event"] - .(+> +:(poke now ovo)) ~> %slog.[0 leaf+"%arvo-assembly"] =- ~> %slog.[0 leaf+"%arvo-assembled"] - +=< :: + :: Arvo formal interface + :: + :: this lifecycle wrapper makes the arvo door (multi-armed core) + :: look like a gate (function or single-armed core), to fit + :: urbit's formal lifecycle function. a practical interpreter + :: can ignore it. + :: + |= [now=@da ovo=*] + ^- * + ~> %slog.[0 leaf+"arvo-event"] + .(+> +:(poke now ovo)) :::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::: :::::: :::::: volume 3, Arvo models and skeleton :::::: :::::: :::::::::::::::::::::::::::::::::::::::::::::::::::::: @@ -125,7 +132,7 @@ ?.(&(?=(@ a) ((sane %tas) a)) %$ a) :: ++ vent :: vane core - |= [lal=@tas vil=vile bud=vase =vane] + |= [who=ship lal=@tas vil=vile bud=vase =vane] ~% %vent +>+ ~ |% ++ ruck :: update vase @@ -164,7 +171,7 @@ :: reset cache and add in vane activation entry :: =^ rig worm.vane - (~(slym wa *worm) vase.vane *[@da @ slyd]) + (~(slym wa *worm) vase.vane *[@p @da @ slyd]) :: cache the access of the %scry arm :: =^ fun worm.vane (~(slap wa worm.vane) rig [%limb %scry]) @@ -177,7 +184,7 @@ |= {now/@da eny/@ ski/slyd} =^ rig worm.vane ~| [%failed-vane-activation-for lal] - (~(slym wa worm.vane) vase.vane +<) :: activate vane + (~(slym wa worm.vane) vase.vane [who +<]) :: activate vane ~% %wink +>+> ~ |% ++ slid @@ -343,7 +350,7 @@ ^- vase ?: &(=(-.q.vase.vane -.q.sev) =(+>.q.vase.vane +>.q.sev)) vase.vane :: unchanged, use old - sev(+<.q [*@da *@ =>(~ |~(* ~))]) :: clear to stop leak + sev(+<.q [*@p *@da *@ =>(~ |~(* ~))]) :: clear to stop leak :: ++ swim ~/ %swim @@ -381,13 +388,19 @@ -- :: ++ vint :: create vane - |= {lal/@tas vil/vile bud/vase pax/path txt/@ta} :: + |= $: who=ship + lal=@tas + vil=vile + bud=vase + pax=path + txt=@ta + == =- ?:(?=(%| -.res) ((slog p.res) ~) (some p.res)) ^= res %- mule |. ~| [%failed-vint lal] =+ gen=(rain pax txt) ~& [%vane-parsed `@p`(mug gen)] - =+ pro=(vent lal vil bud [(slym (slap bud gen) bud) *worm]) + =+ pro=(vent who lal vil bud [(slym (slap bud gen) bud) *worm]) ~& [%vane-compiled `@p`(mug pro)] prime:pro :: @@ -402,7 +415,7 @@ == :: ++ is :: operate in time - |= {vil/vile eny/@ bud/vase vanes=(list [label=@tas =vane])} + |= [who=ship vil=vile eny=@ bud=vase vanes=(list [label=@tas =vane])] |_ now/@da ++ beck ^- slyd @@ -415,7 +428,7 @@ ?~ vanes ~ ?. =(lal label.i.vanes) $(vanes t.vanes) ~| [%failed-scry ron bed] - %- scry:(wink:(vent lal vil bud vane.i.vanes) now (shax now) ..^$) + %- scry:(wink:(vent who lal vil bud vane.i.vanes) now (shax now) ..^$) [fur ren bed] :: ++ dink :: vase by char @@ -454,7 +467,7 @@ ++ race :: take |= {org/@tas lal/@tas pux/(unit wire) hen/duct hil/mill =vane} ^- [p=(list move) q=_vane] - =+ ven=(vent lal vil bud vane) + =+ ven=(vent who lal vil bud vane) ~| [%failed-take lal] =+ win=(wink:ven now (shax now) beck) (swim:win org pux hen hil) @@ -513,157 +526,324 @@ $(ova (weld p.nyx ova), mor (weld q.nyx t.mor)) -- -- -=+ pit=`vase`!>(.) :: -=+ bud=pit :: becomes tang -:: =+ vil=(viol p.bud) :: cached reflexives -=+ vil=(viol p.bud) :: cached reflexives -=| $: lac/? :: laconic bit - eny/@ :: entropy +=< :: Arvo larval stage + :: + :: The true Arvo kernel knows who it is. It should not *maybe* + :: have an identity, nor should it contain multitudes. This outer + :: kernel exists to accumulate identity, entropy, and the + :: standard library. Upon having done so, it upgrades itself into + :: the true Arvo kernel. Subsequent upgrades will fall through + :: the larval stage directly into the actual kernel. + :: + :: For convenience, this larval stage also supports hoon compilation + :: with +wish and vane installation with the %veer event. + :: + =/ pit=vase !>(..is) + =| $: :: who: our identity once we know it + :: eny: entropy once we learn it + :: bod: %zuse once we receive it + :: + who=(unit ship) + eny=(unit @) + bod=(unit vase) + == + :: larval Arvo structural interface + :: + |% + ++ come ^come :: 22 + ++ load ^load :: 46 + ++ peek |=(* ~) :: 47 + :: + ++ poke |= * :: 10 + ^- [(list ovum) *] + => .(+< ((hard ,[now=@da ovo=ovum]) +<)) + ^- [(list ovum) *] + =. +>.$ + ?+ -.q.ovo + :: ignore unrecognized + :: + ~& [%larval-ignore p.ovo -.q.ovo] + +>.$ + :: install %zuse or vane + :: + %veer + ^+ +>.$ + :: use the maximum comet if we don't know who we are yet + :: + =/ our + ?^ who + u.who + =/ fip=ship (dec (bex 128)) + ~>(%slog.[0 leaf+"arvo: larval identity {(scow %p fip)}"] fip) + =. ..veer (veer our now q.ovo) + +>.$(bod ?^(bod bod `bud.^poke)) + :: add entropy + :: + %wack + ^+ +>.$ + ?> ?=(@ q.q.ovo) + +>.$(eny `q.q.ovo) + :: become who you were born to be + :: + %whom + ^+ +>.$ + ?> ?=(@ q.q.ovo) + +>.$(who `q.q.ovo) + == + :: upgrade once we've accumulated identity, entropy, and %zuse + :: + ?. &(?=(^ who) ?=(^ eny) ?=(^ bod)) + [~ +>.$] + ~> %slog.[0 leaf+"arvo: metamorphosis"] + =/ nyf + (turn vanes.^poke |=([label=@tas =vane] [label vase.vane])) + (load u.who now u.eny ova=~ u.bod nyf) + :: + ++ wish |= txt=* :: 4 + ?> ?=(@ txt) + q:(slap ?~(bod pit u.bod) (ream txt)) + -- +:: +:: persistent arvo state +:: +=/ pit=vase !>(..is) :: +=/ vil=vile (viol p.pit) :: cached reflexives +=| $: lac=? :: laconic bit + eny=@ :: entropy + our=ship :: identity + bud=vase :: %zuse vanes=(list [label=@tas =vane]) :: modules == :: -=< |% - ++ come |= {@ (list ovum) pone} :: 22 +=< :: Arvo structural interface + :: + |% + ++ come |= {@ @ @ (list ovum) vise pone} :: 22 ^- {(list ovum) _+>} ~& %hoon-come =^ rey +>+ (^come +<) [rey +>.$] - ++ load |= {@ (list ovum) pane} :: 46 + :: + ++ load |= {@ @ @ (list ovum) vase pane} :: 46 ^- {(list ovum) _+>} ~& %hoon-load =^ rey +>+ (^load +<) [rey +>.$] + :: ++ peek |=(* (^peek ((hard {@da path}) +<))) :: 47 + :: ++ poke |= * :: 10 - ^- {(list ovum) *} - => .(+< ((hard {now/@da ovo/ovum}) +<)) - ?: =(%verb -.q.ovo) - [~ +>.$(lac !lac)] - ?: ?=($veer -.q.ovo) - [~ +>.$(+ (veer now q.ovo))] - =^ ova +>+ (^poke now ovo) - |- ^- {(list ovum) *} + ^- [(list ovum) *] + => .(+< ((hard ,[now=@da ovo=ovum]) +<)) + =^ ova +>+.$ (^poke now ovo) + |- ^- [(list ovum) *] ?~ ova [~ +>.^$] - ?: ?=($verb -.q.i.ova) - $(ova t.ova, lac !lac) - ?: ?=($veer -.q.i.ova) - $(ova t.ova, +>+.^$ (veer now q.i.ova)) - ?: ?=($vega -.q.i.ova) + :: upgrade the kernel + :: + ?: ?=(%vega -.q.i.ova) %+ fall - (vega now t.ova (path +<.q.i.ova) (path +>.q.i.ova)) + (vega now t.ova ({@ @} +.q.i.ova)) [~ +>.^$] - ?: ?=($mass -.q.i.ova) - =+ avo=$(ova t.ova) - :_ +.avo - :_ -.avo - %= i.ova - q.q - :- %userspace - :- %| - :~ hoon+`pit - zuse+`bud - :: hoon-cache+`p.niz - q.q.i.ova - dot+`. - == - == - =+(avo=$(ova t.ova) [[i.ova -.avo] +.avo]) + :: iterate over effects, handling those on arvo proper + :: and passing the rest through as output + :: + =^ vov +>+.^$ (feck now i.ova) + ?~ vov + $(ova t.ova) + =/ avo $(ova t.ova) + [[+.vov -.avo] +.avo] + :: ++ wish |=(* (^wish ((hard @ta) +<))) :: 4 -- +:: Arvo implementation core +:: |% ++ come :: load incompatible - |= {yen/@ ova/(list ovum) nyf/pone} + |= [who=ship now=@da yen=@ ova=(list ovum) dub=vise nyf=pone] ^+ [ova +>] - (load yen ova (turn nyf |=({a/@tas b/vise} [a (slim b)]))) + =/ fyn (turn nyf |=([a=@tas b=vise] [a (slim b)])) + (load who now yen ova (slim dub) fyn) :: ++ load :: load compatible - |= {yen/@ ova/(list ovum) nyf/pane} + |= [who=ship now=@da yen=@ ova=(list ovum) dub=vase nyf=pane] ^+ [ova +>] - =: eny yen + =: our who + eny yen + bud dub vanes (turn nyf |=({a/@tas b/vise} [a [b *worm]])) == - |- ^+ [ova +>.^$] + |- ^- [(list ovum) _+>.^$] ?~ ova [~ +>.^$] - ?: ?=($verb -.q.i.ova) - $(ova t.ova, lac !lac) - ?: ?=($veer -.q.i.ova) - $(ova t.ova, +>.^$ (veer *@da q.i.ova)) - =+(avo=$(ova t.ova) [[i.ova -.avo] +.avo]) + :: iterate over effects, handling those on arvo proper + :: and passing the rest through as output + :: + :: In practice, the pending effects after an upgrade + :: are the %veer moves to install %zuse and the vanes. + :: + =^ vov +>.^$ (feck now i.ova) + ?~ vov + $(ova t.ova) + =/ avo $(ova t.ova) + [[+.vov -.avo] +.avo] :: ++ peek :: external inspect |= {now/@da hap/path} ^- (unit) ?~ hap [~ hoon-version] - =+ rob=((sloy ~(beck (is vil eny bud vanes) now)) [151 %noun] hap) + =+ rob=((sloy ~(beck (is our vil eny bud vanes) now)) [151 %noun] hap) ?~ rob ~ ?~ u.rob ~ [~ u.u.rob] :: ++ poke :: external apply - |= {now/@da ovo/ovum} + |= [now=@da ovo=ovum] =. eny (mix eny (shaz now)) - :: ~& [%poke -.q.ovo] - ^- {(list ovum) _+>} + ^- [(list ovum) _+>.$] + :: + :: These external events are actually effects on arvo proper. + :: They can also be produced as the effects of other events. + :: In either case, they fall through here to be handled + :: after the fact in +feck. + :: + ?: ?=(?(%veer %verb %wack) -.q.ovo) + [[ovo ~] +>.$] + :: =^ zef vanes - (~(hurl (is vil eny bud vanes) now) lac ovo) + (~(hurl (is our vil eny bud vanes) now) lac ovo) [zef +>.$] -:: -++ veke :: build new kernel - |= {now/@da hap/path zup/path} - ^- * - =- ?:(?=(%& -.res) p.res ((slog p.res) ~)) - ^= res %- mule |. - =/ pax (weld hap /hoon) - =/ wax (weld zup /hoon) - ~& [%vega-start-hoon hap] - =/ src ((hard @t) (need (peek now cx+pax))) - =/ arv ((hard @t) (need (peek now cx+wax))) - :: construct =>(hoon =>(+7 arvo)) - :: - =/ gen=hoon - :+ %tsbn (rain hap src) - :+ %tsld (rain zup arv) - [%$ 7] - ~& %vega-parsed - =/ fol q:(~(mint ut %noun) %noun gen) - ~& %vega-compiled - :: evaluate :fol to produce the Arvo gate, - :: then produce the Arvo core at +7 - :: - .*(0 [%7 fol %0 7]) +:: +feck: handle an arvo effect :: +++ feck + |= [now=@da ovo=ovum] + ^- [(unit ovum) _+>.$] + ?+ -.q.ovo + :: pass through unrecognized effect + :: + [[~ ovo] +>.$] + :: toggle event verbose event printfs + :: + %verb + [~ +>.$(lac !lac)] + :: install %zuse or vane + :: + %veer + [~ (veer our now q.ovo)] + :: add data to memory profile + :: + %mass + =. q.q.ovo + :- %userspace + :- %| + :~ hoon+`pit + zuse+`bud + :: hoon-cache+`p.niz + q.q.ovo + dot+`. + == + [[~ ovo] +>.$] + :: add entropy + :: + %wack + ?> ?=(@ q.q.ovo) + =. eny (mix eny (shaz q.q.ovo)) + [~ +>.$] + == +:: ++ vega :: reboot kernel - |= {now/@da ova/(list ovum) hap/path zup/path} - ^- (unit {p/(list ovum) q/*}) + |= $: :: now: current date + :: ova: actions to process after reboot + :: hun: hoon.hoon source + :: arv: arvo.hoon source + :: + now=@da + ova=(list ovum) + hun=@t + van=@t + == + ^- (unit (pair (list ovum) *)) + :: virtualize; dump error if we fail + :: =- ?:(?=(%| -.res) ((slog p.res) ~) `p.res) ^= res %- mule |. - =/ ken (veke now hap zup) - ~& [%vega-kernel `@ux`(mug ken)] + :: produce a new kernel and an effect list + :: + ^- (pair (list ovum) *) + :: compile the hoon.hoon source with the current compiler + :: + =/ raw + ~& [%hoon-compile `@p`(mug hun)] + (ride %noun hun) + :: activate the new compiler gate, producing +ride + :: + =/ cop .*(0 +.raw) + :: find the hoon version number of the new kernel + :: =/ nex - :: call +peek at +47 + (@ .*(cop q:(~(mint ut p.raw) %noun [%limb %hoon-version]))) + ?> |(=(nex hoon-version) =(+(nex) hoon-version)) + :: if we're upgrading language versions, recompile the compiler + :: + :: hot: raw compiler formula + :: + => ?: =(nex hoon-version) + [hot=`*`raw .] + ~& [%hoon-compile-upgrade nex] + =/ hot + .*(cop [%9 2 %10 [6 %1 [%noun hun]] %0 1]) + .(cop .*(0 +.hot)) + :: extract the hoon core from the outer gate (+ride) + :: + =/ hoc .*(cop [%0 7]) + :: compute the type of the hoon.hoon core + :: + =/ hyp + -:.*(cop [%9 2 %10 [6 %1 [-.hot '+>']] %0 1]) + :: compile arvo + :: + =/ rav + ~& [%arvo-compile `@p`(mug hyp) `@p`(mug van)] + .*(cop [%9 2 %10 [6 %1 [hyp van]] %0 1]) + :: activate arvo, and extract the arvo core from the outer gate + :: + =/ voc .*(hoc [%7 +.rav %0 7]) + :: entry gate: ++load for the normal case, ++come for upgrade + :: + =/ gat + =/ arm ?:(=(nex hoon-version) 'load' 'come') + :: compute the type of the arvo.hoon core :: - %- need - %- (hard (unit @)) - .*(ken [%9 2 %10 [6 %1 now ~] [%9 47 %0 1]]) - ~& [%vega-compiled hoon-version nex] - ?> (lte nex hoon-version) - :: entropy, pending effects, vanes + =/ vip -:.*(cop [%9 2 %10 [6 %1 [-.rav '+>']] %0 1]) + :: compute the formula for the upgrade gate + :: + =/ fol +:.*(cop [%9 2 %10 [6 %1 [vip arm]] %0 1]) + :: produce the upgrade gate + :: + .*(voc fol) + :: upgrade gate sample :: =/ sam - :+ eny ova - (turn vanes |=([label=@tas =vane] [label vase.vane])) - :: +load at +46 or +come at +22 + :* our + now + eny + ova + bud + (turn vanes |=([label=@tas =vane] [label vase.vane])) + == + :: call into the new kernel :: - =/ axe ?:(=(nex hoon-version) 46 22) =/ out - .*(ken [%9 2 %10 [6 %1 sam] [%9 axe %0 1]]) - :: add a reset notification to the pending effects + .*(gat [%9 2 %10 [6 %1 sam] %0 1]) + :: tack a reset notification onto the product :: - [[[~ %vega hap] ((list ovum) -.out)] +.out] + [[[/ %vega ~] ((list ovum) -.out)] +.out] +:: +veer: install %zuse or a vane :: -++ veer :: install vane/tang - |= {now/@da fav/curd} +:: Identity is in the sample so the larval stage +:: can use this as well. +:: +++ veer + |= [who=ship now=@da fav=curd] => .(fav ((hard {$veer lal/@ta pax/path txt/@t}) fav)) =- ?:(?=(%| -.res) ((slog p.res) +>.$) p.res) ^= res %- mule |. @@ -677,21 +857,21 @@ |- ^+ vanes ?~ vanes ~& [%vane `@tas`lal.fav pax.fav `@p`(mug txt.fav)] - =+ vin=(vint lal.fav vil bud pax.fav txt.fav) + =+ vin=(vint who lal.fav vil bud pax.fav txt.fav) ?~ vin vanes [[lal.fav vane:u.vin] vanes] ?. =(lal.fav label.i.vanes) [i.vanes $(vanes t.vanes)] - ~& [%vane `@tas`lal.fav pax.fav `@p`(mug txt.fav)] + ~& [%vane `@tas`lal.fav pax.fav `@p`(mug txt.fav)] :_ t.vanes :- label.i.vanes ~| [%failed-vane-activation now lal.fav] - vane:(ruck:(vent lal.fav vil bud [vase.vane.i.vanes *worm]) pax.fav txt.fav) + vane:(ruck:(vent who lal.fav vil bud [vase.vane.i.vanes *worm]) pax.fav txt.fav) == :: ++ wish :: external compute - |= txt/@ + |= txt/@ q:(slap bud (ream txt)) -- diff --git a/sys/vane/ames.hoon b/sys/vane/ames.hoon index ef00710c3d..9bf4273edc 100644 --- a/sys/vane/ames.hoon +++ b/sys/vane/ames.hoon @@ -1221,7 +1221,7 @@ :: =| $: fox=fort :: kernel state == :: - |= [now=@da eny=@ ski=sley] :: current invocation + |= [our=ship now=@da eny=@uvJ ski=sley] :: current invocation ^? :: opaque core =< |% :: vane interface diff --git a/sys/vane/behn.hoon b/sys/vane/behn.hoon index 16db375f67..79efcf3eca 100644 --- a/sys/vane/behn.hoon +++ b/sys/vane/behn.hoon @@ -147,7 +147,7 @@ . == =| coke :: persistent state =* state - :: -|= {now/@da eny/@ ski/sley} :: current invocation +|= [our=ship now=@da eny=@uvJ ski=sley] :: current invocation ^? |% :: poke+peek pattern ++ call :: handle request diff --git a/sys/vane/clay.hoon b/sys/vane/clay.hoon index 986c63d4ae..fa42b3864c 100644 --- a/sys/vane/clay.hoon +++ b/sys/vane/clay.hoon @@ -3698,7 +3698,7 @@ $: $1 :: vane version ruf/raft :: revision tree == :: -|= {now/@da eny/@ ski/sley} :: activate +|= [our=ship now=@da eny=@uvJ ski=sley] :: current invocation ^? :: opaque core |% :: ++ call :: handle request diff --git a/sys/vane/dill.hoon b/sys/vane/dill.hoon index e61d6e91fd..44b465f47f 100644 --- a/sys/vane/dill.hoon +++ b/sys/vane/dill.hoon @@ -53,8 +53,7 @@ {$init p/ship} :: {$text p/tape} :: {$veer p/@ta q/path r/@t} :: install vane - {$vega p/path q/path} :: reboot by path - {$velo p/@t q/@t} :: reboot by path + {$vega p/@t q/@t} :: reboot by path {$verb $~} :: verbose mode == :: ++ note-eyre :: @@ -136,7 +135,7 @@ :::::::: :: dill tiles -- =| all/axle -|= {now/@da eny/@ ski/sley} :: current invocation +|= [our=ship now=@da eny=@uvJ ski=sley] :: current invocation => |% ++ as :: per cause =| moz/(list move) @@ -162,7 +161,6 @@ $heft heft $veer (dump kyz) $vega (dump kyz) - $velo (dump kyz) $verb (dump kyz) == :: diff --git a/sys/vane/eyre.hoon b/sys/vane/eyre.hoon index b73271f82d..7c5359e407 100644 --- a/sys/vane/eyre.hoon +++ b/sys/vane/eyre.hoon @@ -2247,7 +2247,7 @@ . == =| bolo =* bol - -|= {now/@da eny/@ ski/sley} :: activate +|= [our=ship now=@da eny=@uvJ ski=sley] :: current invocation ^? :: opaque core |% :: ++ call :: handle request diff --git a/sys/vane/ford.hoon b/sys/vane/ford.hoon index 4b3dde3950..787f48de46 100644 --- a/sys/vane/ford.hoon +++ b/sys/vane/ford.hoon @@ -6070,9 +6070,10 @@ :: begin with a default +axle as a blank slate :: =| ax=axle -:: a vane is activated with current date, entropy, and a namespace function +:: a vane is activated with identity, the current date, entropy, +:: and a namespace function :: -|= [now=@da eny=@ scry-gate=sley] +|= [our=ship now=@da eny=@uvJ scry-gate=sley] :: allow jets to be registered within this core :: ~% %ford ..is ~ diff --git a/sys/vane/gall.hoon b/sys/vane/gall.hoon index b8e5bc5ff7..212abc9512 100644 --- a/sys/vane/gall.hoon +++ b/sys/vane/gall.hoon @@ -97,9 +97,10 @@ :::::::::::::::::::::::::::::::::::::::::::::::::::::: . == =| all/axle :: all vane state -|= $: now/@da :: urban time - eny/@uvJ :: entropy - ska/sley :: activate +|= $: our=ship :: identity + now=@da :: urban time + eny=@uvJ :: entropy + ska=sley :: activate == :: opaque core ~% %gall-top ..is ~ |% :::::::::::::::::::::::::::::::::::::::::::::::::::::: state machine diff --git a/sys/vane/jael.hoon b/sys/vane/jael.hoon index 2ce254e821..a8a5ff9222 100644 --- a/sys/vane/jael.hoon +++ b/sys/vane/jael.hoon @@ -607,8 +607,8 @@ $: :: now: current time :: eny: unique entropy :: - now/@da - eny/@e + now=@da + eny=@uvJ == :: all vane state :: @@ -2180,13 +2180,15 @@ :: =| lex/state |= $: :: + :: our: identity :: now: current time :: eny: unique entropy :: ski: namespace resolver :: - now/@da - eny/@e - ski/sley + our=ship + now=@da + eny=@uvJ + ski=sley == |% :: :: ++call diff --git a/sys/zuse.hoon b/sys/zuse.hoon index d69ef7aea0..a0d0d9b251 100644 --- a/sys/zuse.hoon +++ b/sys/zuse.hoon @@ -913,8 +913,7 @@ {$mass p/mass} :: memory usage {$send p/lane:ames q/@} :: transmit packet {$veer p/@ta q/path r/@t} :: install vane - {$vega p/path q/path} :: old reboot - {$velo p/@t q/@t} :: reboot + {$vega p/@t q/@t} :: reboot {$verb ~} :: verbose mode == :: ++ task :: in request ->$ @@ -934,8 +933,7 @@ {$talk p/tank} :: {$text p/tape} :: {$veer p/@ta q/path r/@t} :: install vane - {$vega p/path q/path} :: old reboot - {$velo p/@t q/@t} :: reboot + {$vega p/@t q/@t} :: reboot {$verb ~} :: verbose mode == :: -- ::able @@ -995,8 +993,7 @@ {$heft ~} :: {$text p/tape} :: {$veer p/@ta q/path r/@t} :: install vane - {$vega p/path q/path} :: old reboot - {$velo p/@t q/@t} :: reboot + {$vega p/@t q/@t} :: reboot {$verb ~} :: verbose mode == :: -- ::dill @@ -1019,8 +1016,7 @@ [%thou p=httr] :: raw http response [%thus p=@ud q=(unit hiss)] :: http request+cancel [%veer p=@ta q=path r=@t] :: drop-through - [%vega p=path q=path] :: drop-through - [%velo p=@t q=@t] :: drop-through + [%vega p=@t q=@t] :: drop-through == :: += task :: in request ->$ $% [%born p=(list host)] :: new unix process diff --git a/tests/sys/vane/ames.hoon b/tests/sys/vane/ames.hoon index 14f77e365d..bbedbb3893 100644 --- a/tests/sys/vane/ames.hoon +++ b/tests/sys/vane/ames.hoon @@ -33,7 +33,7 @@ == ^- [tang _ames-gate] :: - =/ ames (ames-gate now=now eny=`@e`0xdead.beef scry=*sley) + =/ ames (ames-gate our=~zod now=now eny=`@`0xdead.beef scry=*sley) :: =^ moves ames-gate %- call:ames call-args diff --git a/tests/sys/vane/clay.hoon b/tests/sys/vane/clay.hoon index 8228d0d180..6870856355 100644 --- a/tests/sys/vane/clay.hoon +++ b/tests/sys/vane/clay.hoon @@ -463,7 +463,7 @@ == ^- [tang _clay-gate] :: - =/ clay-core (clay-gate now=now eny=0xdead.beef scry=scry) + =/ clay-core (clay-gate our=~zod now=now eny=`@`0xdead.beef scry=scry) :: =^ moves clay-gate (call:clay-core call-args) :: @@ -484,7 +484,7 @@ == ^- [tang _clay-gate] :: - =/ clay-core (clay-gate now=now eny=0xdead.beef scry=scry) + =/ clay-core (clay-gate our=~zod now=now eny=`@`0xdead.beef scry=scry) :: =^ moves clay-gate (call:clay-core call-args) :: @@ -502,7 +502,7 @@ == ^- [tang _clay-gate] :: - =/ clay-core (clay-gate now=now eny=0xdead.beef scry=scry) + =/ clay-core (clay-gate our=~zod now=now eny=`@`0xdead.beef scry=scry) :: =^ moves clay-gate (take:clay-core take-args) :: @@ -523,7 +523,7 @@ == ^- [tang _clay-gate] :: - =/ clay-core (clay-gate now=now eny=0xdead.beef scry=scry) + =/ clay-core (clay-gate our=~zod now=now eny=`@`0xdead.beef scry=scry) :: =^ moves clay-gate (take:clay-core take-args) :: diff --git a/tests/sys/vane/ford.hoon b/tests/sys/vane/ford.hoon index 130fc9c59c..158861038e 100644 --- a/tests/sys/vane/ford.hoon +++ b/tests/sys/vane/ford.hoon @@ -14,6 +14,7 @@ :: =/ test-pit=vase !>(..zuse) =/ ford-gate (ford-vane test-pit) +~! +6.ford-gate :: |% ++ test-tear ^- tang @@ -7260,7 +7261,7 @@ == ^- [tang _ford-gate] :: - =/ ford (ford-gate now=now eny=0xdead.beef scry=scry) + =/ ford (ford-gate our=~zod now=now eny=`@`0xdead.beef scry=scry) :: =^ moves ford-gate %- call:ford call-args @@ -7281,7 +7282,7 @@ == ^- [tang _ford-gate] :: - =/ ford (ford-gate now=now eny=0xdead.beef scry=scry) + =/ ford (ford-gate our=~zod now=now eny=`@`0xdead.beef scry=scry) :: =^ moves ford-gate %- take:ford take-args @@ -7306,7 +7307,7 @@ == ^- [tang _ford-gate] :: - =/ ford (ford-gate now=now eny=0xdead.beef scry=scry) + =/ ford (ford-gate our=~zod now=now eny=`@`0xdead.beef scry=scry) :: =^ moves ford-gate %- call:ford call-args @@ -7325,7 +7326,7 @@ == ^- [tang _ford-gate] :: - =/ ford (ford-gate now=now eny=0xdead.beef scry=scry) + =/ ford (ford-gate our=~zod now=now eny=`@`0xdead.beef scry=scry) :: =^ moves ford-gate %- take:ford take-args diff --git a/tests/sys/vane/jael.hoon b/tests/sys/vane/jael.hoon index c805743b6a..3f769a4a91 100644 --- a/tests/sys/vane/jael.hoon +++ b/tests/sys/vane/jael.hoon @@ -89,7 +89,7 @@ == ^- [tang _jael-gate] :: - =/ jael (jael-gate now=now eny=`@e`0xdead.beef scry=*sley) + =/ jael (jael-gate our=~zod now=now eny=`@`0xdead.beef scry=*sley) :: =^ moves jael-gate %- call:jael call-args @@ -109,7 +109,7 @@ == ^- [tang _jael-gate] :: - =/ jael (jael-gate now=now eny=`@e`0xdead.beef scry=*sley) + =/ jael (jael-gate our=~zod now=now eny=`@`0xdead.beef scry=*sley) :: =^ moves jael-gate %- call:jael call-args @@ -126,7 +126,7 @@ == ^- [tang _jael-gate] :: - =/ jael (jael-gate now=now eny=`@e`0xdead.beef scry=*sley) + =/ jael (jael-gate our=~zod now=now eny=`@`0xdead.beef scry=*sley) :: =^ moves jael-gate %- take:jael take-args @@ -146,7 +146,7 @@ == ^- [tang _jael-gate] :: - =/ jael (jael-gate now=now eny=`@e`0xdead.beef scry=*sley) + =/ jael (jael-gate our=~zod now=now eny=`@`0xdead.beef scry=*sley) :: =^ moves jael-gate %- take:jael take-args