%meta ready to test.

This commit is contained in:
C. Guy Yarvin 2014-05-26 13:43:40 -07:00
parent 2f414a5413
commit b5377d196b
8 changed files with 51 additions and 34 deletions

View File

@ -1477,8 +1477,10 @@
..$(fox *furt)
::
++ scry
|= [our=ship ren=@tas his=ship syd=desk lot=coin tyl=path]
|= [fur=(unit (set monk)) ren=@tas his=ship syd=desk lot=coin tyl=path]
^- (unit (unit))
?. ?=([~ [[& @] ~ ~]] fur) ~ :: XX lame
=+ our=`ship`p.n.u.fur
=- ?~ old ~
[~ ~ u.old]
^= old

View File

@ -1285,7 +1285,7 @@
..$(dez ~)
::
++ scry
|= [our=ship ren=@tas his=ship syd=desk lot=coin tyl=path]
|= [fur=(unit (set monk)) ren=@tas his=ship syd=desk lot=coin tyl=path]
^- (unit (unit))
~
::

View File

@ -471,7 +471,7 @@
..$(ruf *raft)
::
++ scry :: inspect
|= [our=ship ren=@tas his=ship syd=desk lot=coin tyl=path]
|= [fur=(unit (set monk)) ren=@tas his=ship syd=desk lot=coin tyl=path]
^- (unit (unit))
=+ ^= whu ^- (unit ,@p) :: XX HEINOUS!
?: (~(has by fat.ruf) his)
@ -482,7 +482,7 @@
?: (~(has by rid.q.i.foo) his) `p.i.foo
$(foo t.foo)
?~ whu ~
=. our u.whu
=+ our=u.whu
:: ~? !=(`our whu) [%clay-scry whu our ren his syd lot tyl]
=+ luk=?.(?=(%$ -.lot) ~ ((soft case) p.lot))
?~ luk [~ ~]

View File

@ -461,7 +461,7 @@
..$(dug ~)
::
++ scry
|= [our=ship ren=@tas his=ship syd=desk lot=coin tyl=path]
|= [fur=(unit (set monk)) ren=@tas his=ship syd=desk lot=coin tyl=path]
^- (unit (unit))
~
::

View File

@ -1853,7 +1853,7 @@
..$(+>- *bolo)
::
++ scry
|= [our=ship ren=@tas who=ship syd=desk lot=coin tyl=path]
|= [our=(unit (set monk)) ren=@tas who=ship syd=desk lot=coin tyl=path]
^- (unit (unit))
~
::

View File

@ -612,7 +612,7 @@
..$(+>- *axle)
::
++ scry
|= [our=ship ren=@tas who=ship syd=desk lot=coin tyl=path]
|= [fur=(unit (set monk)) ren=@tas who=ship syd=desk lot=coin tyl=path]
^- (unit (unit))
~
::

View File

@ -8807,9 +8807,9 @@
[%sick p=b] :: lame refactoring
[%give p=b] :: retreat
== ::
++ muse ,[p=@tas q=duct r=(mold herd herd)] :: sourced move
++ muse ,[p=@tas q=duct r=(mold mill mill)] :: sourced move
++ mosh ,[p=duct q=(mold curd curd)] :: old move
++ move ,[p=duct q=(mold herd herd)] :: raw action
++ move ,[p=duct q=(mold mill mill)] :: raw action
++ ovum ,[p=wire q=curd] :: typeless ovum
++ pane (list ,[p=@tas q=vase]) :: kernel modules
++ pone (list ,[p=@tas q=vise]) :: kernel modules, old
@ -8866,18 +8866,31 @@
++ song :: reduce metacard
|= mex=vase :: mex: vase of card
^- mill ::
?. (sunk p.mex) !! :: a card is a cell
?. (sunk p.mex) :: a card is a cell
~& %song-a !!
?. ?=(%meta -.q.mex) [%& mex] :: ordinary card
~& %song-meta
=+ tiv=(slot 3 mex) :: tiv: vase of vase
?. (sunk p.tiv) !! :: a vase is a cell
?. (souk -:!>(*type) p:(slot 2 tiv)) !! :: vase head is type
?. (sunk p.tiv) :: a vase is a cell
~& (,@tas -.p.tiv)
~_ `tank`~(duck ut p.tiv)
~& %song-b !!
?. (souk -:!>(*type) p:(slot 2 tiv)) :: vase head is type
~& %song-c !! ::
=+ mut=(,[p=* q=*] q.tiv) :: card type, value
:- %| :: metacard
|- ^- [p=* q=*] ::
~& %song-meta-loop ::
?. ?=([%meta p=* q=[p=* q=*]] q.mut) mut :: ordinary metacard
?. (sike -:!>([%meta vase]) p.mut) !! :: meta-metacard
?. (sike -:!>([%meta vase]) p.mut) :: meta-metacard
~& %song-d !! ::
$(mut q.mut) :: descend into meta
::
++ sung
|= mex=vase
^- mill
[%& mex]
::
++ sump
|= wec=vase
^- move
@ -8888,17 +8901,16 @@
[%call p=@tas q=* r=[p=@tas q=*]]
:^ %call (need ((sand %tas) ((hard ,@) p.q.caq)))
((hard path) q.q.caq)
[%noun r.q.caq]
:: (song (slot 15 caq))
(song (slot 15 caq))
::
[%give p=[p=@tas q=*]]
[%give %noun p.q.caq]
[%give (song (slot 3 caq))]
::
[%sick p=[p=@tas q=*]]
[%sick %noun p.q.caq]
[%sick (song (slot 3 caq))]
::
[%slip p=@tas q=[p=@tas q=*]]
[%slip (need ((sand %tas) ((hard ,@) p.q.caq))) %noun q.q.caq]
[%slip (need ((sand %tas) ((hard ,@) p.q.caq))) (song (slot 7 caq))]
==
::
++ said
@ -8909,7 +8921,7 @@
[(sump (slot 2 vud)) $(vud (slot 3 vud))]
::
++ scry
|= $: our=ship
|= $: fur=(unit (set monk))
ren=@tas
his=ship
syd=@tas
@ -8930,13 +8942,13 @@
++ swim
|= $: pux=(unit wire)
hen=duct
hud=herd
hil=mill
==
^- [p=(list move) q=vase]
=+ ^= pro
?~ pux
(slym (slap rig [%cnzy %call]) [hen hud])
(slym (slap rig [%cnzy %beat]) [u.pux hen hud])
(slym (slap rig [%cnzy %call]) [hen +.hil])
(slym (slap rig [%cnzy %beat]) [u.pux hen +.hil])
:- (said (slap pro [%cnzy %p]))
(soar (slap pro [%cnzy %q]))
--
@ -8950,7 +8962,7 @@
|= [eny=@ bud=vase fan=(list ,[p=@tas q=vase])]
|_ now=@da
++ beck
|= wru=(unit writ)
|= fur=(unit (set monk))
|+ hap=*
^- (unit (unit))
=> .(hap ((hard path) hap))
@ -8966,14 +8978,14 @@
?. ?=([~ %$ %tas @] dyc) ~
?. ?=(^ ved) ~
=+ his=`@p`q.p.u.fal
=> .(wru ?^(wru wru [~ u=[p=[%lead his] q=his]])) :: XX dubious
=> .(fur ?^(fur fur `[[%& his] ~ ~])) :: XX heinous
=+ dis=(end 3 1 q.p.u.hyr)
=+ rem=(rsh 3 1 q.p.u.hyr)
|- ^- (unit (unit))
?~ fan ~
?. =(dis p.i.fan) $(fan t.fan)
%- scry:(wink:(vent bud q.i.fan) now (shax now) ..^$)
[q.u.wru rem his q.p.u.dyc u.ved tyl]
[fur rem his q.p.u.dyc u.ved tyl]
::
++ dink :: vase by char
|= din=@tas ^- vase
@ -8998,26 +9010,26 @@
|= ovo=ovum
^- [p=(list ovum) q=(list ,[p=@tas q=vase])]
?> ?=(^ p.ovo)
(kick [i.p.ovo ~ [%call (dint p.ovo) t.p.ovo [%noun q.ovo]]]~)
(kick [i.p.ovo ~ [%call (dint p.ovo) t.p.ovo [%& %noun q.ovo]]]~)
::
++ race :: beat
|= [pux=(unit wire) hen=duct hud=herd ves=vase]
|= [pux=(unit wire) hen=duct hil=mill ves=vase]
^- [p=(list move) q=vase]
=+ ven=(vent bud ves)
=+ win=(wink:ven now (shax now) (beck ~))
(swim:win pux hen hud)
(swim:win pux hen hil)
::
++ fire :: execute
|= [lal=term pux=(unit wire) hen=duct hud=herd]
|= [lal=term pux=(unit wire) hen=duct hil=mill]
?: &(?=(^ pux) ?=(~ hen))
[[[[lal u.pux] q.hud]~ ~] fan]
[[[[lal u.pux] (curd +>.hil)]~ ~] fan]
=+ naf=fan
|- ^- [[p=(list ovum) q=(list muse)] _fan]
?~ naf [[~ ~] ~]
?. =(lal p.i.naf)
=+ tuh=$(naf t.naf)
[-.tuh [i.naf +.tuh]]
=+ fiq=(race pux hen hud q.i.naf)
=+ fiq=(race pux hen hil q.i.naf)
[[~ (turn p.fiq |=(a=move [lal a]))] [[p.i.naf q.fiq] t.naf]]
::
++ jack :: dispatch card

View File

@ -2023,7 +2023,7 @@
[%loot p=@tas q=path] :: request directory
[%make p=(unit ,@t) q=@ud r=@] :: wild license
[%mean p=ship q=term r=chop s=vase] :: application event
[%meta p=ship q=vase] :: abstract app action
[%meta p=vase] :: meta-card
[%meat p=ship q=card] :: concrete app action
[%mine p=@ud q=@t] :: query matched line
[%noop ~] :: no operation
@ -2521,7 +2521,10 @@
++ tube ,[p=@ta q=@ta r=@ta s=path] :: canonical path
++ tutu ,* :: presumed type
++ vane $_ :: kernel actor
|+ [now=@da eny=@ ska=$+(* (unit (unit)))] :: activate
|+ $: now=@da ::
eny=@ ::
ska=$+(* (unit (unit))) :: activate
== ::
^? |% ::
++ beat :: update
|= $: pax=wire :: pretext
@ -2549,7 +2552,7 @@
*vane ::
++ raze *vane :: erase all state
++ scry :: inspect
|= $: our=ship :: observer
|= $: fur=(unit (set monk)) :: observers
ren=@tas :: submode
his=ship :: target
syd=@tas :: project