arvo: adds errors to $wind and |le

This commit is contained in:
Joe Bryan 2020-02-09 20:01:03 -08:00
parent eb6b99d9b5
commit 25a983ad44

View File

@ -230,6 +230,7 @@
=> |% => |%
:: $ball: dynamic kernel action :: $ball: dynamic kernel action
:: $card: tagged, untyped event :: $card: tagged, untyped event
:: $goof: crash label and trace XX fail/ruin/crud/flaw/lack/miss
:: $move: cause and action :: $move: cause and action
:: $ovum: card with cause :: $ovum: card with cause
:: +wind: kernel action builder :: +wind: kernel action builder
@ -238,6 +239,7 @@
:: ::
+$ ball (wind [vane=term task=maze] maze) +$ ball (wind [vane=term task=maze] maze)
+$ card (cask) +$ card (cask)
+$ goof [mote=term =tang]
+$ move [=duct =ball] +$ move [=duct =ball]
+$ ovum [=wire =card] +$ ovum [=wire =card]
++ wind ++ wind
@ -249,12 +251,16 @@
:: ::
[note gift] [note gift]
$% :: %pass: advance $% :: %pass: advance
:: %hurl: advance failed
:: %slip: lateral :: %slip: lateral
:: %give: retreat :: %give: retreat
:: %gave: retreat failed
:: ::
[%pass =wire =note] [%pass =wire =note]
[%hurl =goof =wire =note]
[%slip =note] [%slip =note]
[%give =gift] [%give =gift]
[%gave =goof =gift]
== ==
-- --
:: ::
@ -458,7 +464,7 @@
:: |spin:plow:va: move statefully :: |spin:plow:va: move statefully
:: ::
++ spin ++ spin
|= [hen=duct eny=@uvJ] |= [hen=duct eny=@uvJ dud=(unit goof)]
:: =/ duc !>(hen) :: =/ duc !>(hen)
=* duc [duc.vil hen] =* duc [duc.vil hen]
=/ sam=vane-sample [our now eny sky] =/ sam=vane-sample [our now eny sky]
@ -540,10 +546,12 @@
=| $: :: run: list of worklists =| $: :: run: list of worklists
:: out: pending output :: out: pending output
:: gem: worklist metadata :: gem: worklist metadata
:: dud: propagate error
:: ::
run=(list plan) run=(list plan)
out=(list ovum) out=(list ovum)
gem=germ gem=germ
dud=(unit goof)
== ==
:: ::
|_ $: our=ship |_ $: our=ship
@ -612,6 +620,9 @@
++ step ++ step
|= =move |= =move
^+ this ^+ this
::
~? &(!lac ?=(^ dud)) %goof
::
?- -.ball.move ?- -.ball.move
:: ::
:: %pass: forward move :: %pass: forward move
@ -682,6 +693,22 @@
duct duct
:: ::
(take duct wire vane gift) (take duct wire vane gift)
::
:: %hurl: pass with error
::
%hurl
%= $
dud `goof.ball.move
ball.move [%pass wire note]:ball.move
==
::
:: %gave: give with error
::
%gave
%= $
dud `goof.ball.move
ball.move [%give gift.ball.move]
==
== ==
:: +peek: read from the entire namespace :: +peek: read from the entire namespace
:: ::
@ -713,7 +740,8 @@
|= [=duct way=term task=mill] |= [=duct way=term task=mill]
^+ this ^+ this
%+ push way %+ push way
(call:(spin:(plow way) duct eny) task) %. task
call:(spin:(plow way) duct eny dud)
:: +take: retreat along call-stack :: +take: retreat along call-stack
:: ::
++ take ++ take
@ -723,7 +751,8 @@
:: ::
:: cons source onto .gift to make a $sign :: cons source onto .gift to make a $sign
:: ::
(take:(spin:(plow way) duct eny) wire [vane.gem gift]) %. [wire [vane.gem gift]]
take:(spin:(plow way) duct eny dud)
:: +push: finalize an individual step :: +push: finalize an individual step
:: ::
++ push ++ push