mirror of
https://github.com/ilyakooo0/urbit.git
synced 2024-12-12 15:01:38 +03:00
Added jet for scag.
This commit is contained in:
commit
c759a9eb7a
@ -1433,18 +1433,17 @@
|
||||
^? :: opaque core
|
||||
=<
|
||||
|% :: vane interface
|
||||
++ beat
|
||||
++ take
|
||||
|= [tea=wire hen=duct typ=type fav=card]
|
||||
=+ wru=*(unit writ)
|
||||
^- [p=(list move) q=vane]
|
||||
=^ duy ..knap
|
||||
(knap wru tea hen fav)
|
||||
(knap tea hen fav)
|
||||
[duy ..^$]
|
||||
::
|
||||
++ call
|
||||
|= [hen=duct typ=type fav=card]
|
||||
^- [p=(list move) q=vane]
|
||||
(beat ~ hen typ fav)
|
||||
(take ~ hen typ fav)
|
||||
::
|
||||
++ come
|
||||
|= [sam=? old=vase]
|
||||
@ -1477,8 +1476,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
|
||||
@ -1498,7 +1499,7 @@
|
||||
|%
|
||||
++ claw |=(our=ship ^-(duct hen:(need (~(get by zac.fox) our))))
|
||||
++ clop
|
||||
|= [wru=(unit writ) now=@da hen=duct bon=boon]
|
||||
|= [now=@da hen=duct bon=boon]
|
||||
^- [(list move) furt]
|
||||
?- -.bon
|
||||
%beer
|
||||
@ -1560,7 +1561,7 @@
|
||||
=. ton.fox (~(su go ton.fox) gus)
|
||||
:_ fox
|
||||
:~ :- hen
|
||||
[%call %a ~ %want p.bon [%r %ta t.t.q.q.bon] `(unit will)`wyl]
|
||||
[%toss %a ~ %want p.bon [%r %ta t.t.q.q.bon] `(unit will)`wyl]
|
||||
==
|
||||
%re :: %re
|
||||
:_ fox
|
||||
@ -1577,7 +1578,7 @@
|
||||
%+ turn paz
|
||||
|= him=ship
|
||||
:- hen
|
||||
[%call %a ~ %want [p.p.bon him] /q/yu [q.p.bon r.bon]]
|
||||
[%toss %a ~ %want [p.p.bon him] /q/yu [q.p.bon r.bon]]
|
||||
==
|
||||
::
|
||||
%ouzo
|
||||
@ -1602,11 +1603,14 @@
|
||||
==
|
||||
::
|
||||
++ knap
|
||||
|= [wru=(unit writ) tea=wire hen=duct fav=card]
|
||||
|= [tea=wire hen=duct fav=card]
|
||||
^- [(list move) _+>]
|
||||
?: ?=([%crud *] fav)
|
||||
[[[hen [%slip %d %flog fav]] ~] +>]
|
||||
=+ ^= fuy ^- [p=(list boon) q=furt]
|
||||
?: ?=([%soft *] fav)
|
||||
$(fav ((hard card) p.fav))
|
||||
=+ ^= fuy
|
||||
^- [p=(list boon) q=furt]
|
||||
?+ -.fav
|
||||
[~ fox]
|
||||
::
|
||||
@ -1643,7 +1647,7 @@
|
||||
|- ^- [p=(list move) q=_+>.^$]
|
||||
?~ p.fuy
|
||||
[(flop out) +>.^$]
|
||||
=^ toe fox (clop wru now hen i.p.fuy)
|
||||
=^ toe fox (clop now hen i.p.fuy)
|
||||
$(p.fuy t.p.fuy, out (weld (flop toe) out))
|
||||
::
|
||||
++ perm
|
||||
|
@ -175,7 +175,7 @@
|
||||
=> .(fog (weld t.fog `(list ,@ud)`[i.fog ~]))
|
||||
[[[hen [%give %helo prot]] ~] +<.^^$]
|
||||
%noop [~ +<.^^$]
|
||||
:: %thee abet:lash:(lean tea hen fav)
|
||||
%soft $(fav ((hard card) p.fav))
|
||||
%thou ?. (fear tea) :: legit
|
||||
[~ +<.^^$]
|
||||
abet:lash:(lean tea hen fav)
|
||||
@ -1151,13 +1151,15 @@
|
||||
|= [now=@da eny=@ ska=$+(* (unit (unit)))] :: current invocation
|
||||
^? :: opaque core
|
||||
|% :: poke/peek pattern
|
||||
++ beat :: process move
|
||||
++ take :: process move
|
||||
|= [tea=wire hen=duct typ=type fav=card]
|
||||
^- [p=(list move) q=vane]
|
||||
:: ~& [%batz-beat -.fav [%tea tea] [%hen hen]]
|
||||
:: ~& [%batz-take -.fav [%tea tea] [%hen hen]]
|
||||
=+ sky=|=(* `(unit)`=+(a=(ska +<) ?~(a ~ ?~(u.a ~ [~ u.u.a]))))
|
||||
?: ?=([%crud *] fav)
|
||||
[[[hen [%slip %d %flog fav]] ~] ..^$]
|
||||
?: ?=([%soft *] fav)
|
||||
$(fav ((hard card) p.fav))
|
||||
?: ?=(%wake -.fav)
|
||||
=+ ^= fiy
|
||||
=| fiy=(list ,[p=duct q=ship r=[p=@ud q=@ud r=wire]])
|
||||
@ -1197,18 +1199,18 @@
|
||||
=+ dus=(~(get by dez) hen)
|
||||
?~ dus
|
||||
?+ -.fav
|
||||
~& [%beat-none -.fav tea hen]
|
||||
~|([%beat-none -.fav] !!)
|
||||
~& [%take-none -.fav tea hen]
|
||||
~|([%take-none -.fav] !!)
|
||||
::
|
||||
%hail
|
||||
?~ big
|
||||
~& [%beat-hail-soon hen]
|
||||
~& [%take-hail-soon hen]
|
||||
[~ ..^^$]
|
||||
~& [%batz-hack-console hen]
|
||||
$(dez (~(put by dez) hen [[u.big (bard u.big)] ~]))
|
||||
::
|
||||
%init
|
||||
:: ~& [%beat-init p.fav hen]
|
||||
:: ~& [%take-init p.fav hen]
|
||||
=. big ?~ big
|
||||
`p.fav
|
||||
`(min p.fav u.big)
|
||||
@ -1221,7 +1223,7 @@
|
||||
..^^$(dez (~(put by dez) hen [[p.fav (bard p.fav)] ~]))
|
||||
::
|
||||
?(%loin %make %sith)
|
||||
[[[hen [%call %a tea fav]] ~] ..^^$]
|
||||
[[[hen [%toss %a tea fav]] ~] ..^^$]
|
||||
==
|
||||
?> ?=(^ u.dus)
|
||||
?+ -.fav
|
||||
@ -1247,7 +1249,7 @@
|
||||
::
|
||||
++ call :: process move
|
||||
|= [hen=duct typ=type fav=card]
|
||||
(beat ~ hen typ fav)
|
||||
(take ~ hen typ fav)
|
||||
::
|
||||
++ come
|
||||
|= [sam=? old=vase]
|
||||
@ -1285,7 +1287,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))
|
||||
~
|
||||
::
|
||||
|
@ -35,7 +35,7 @@
|
||||
%+ turn (flop say)
|
||||
|= [a=duct b=path c=ship d=[p=@ud q=riff]]
|
||||
:- a
|
||||
[%call %a b %want [who c] [%q %re p.q.d (scot %ud p.d) ~] q.d]
|
||||
[%toss %a b %want [who c] [%q %re p.q.d (scot %ud p.d) ~] q.d]
|
||||
==
|
||||
::
|
||||
++ doze
|
||||
@ -365,12 +365,15 @@
|
||||
|= [now=@da eny=@ ska=$+(* (unit (unit)))] :: activate
|
||||
^? :: opaque core
|
||||
|% ::
|
||||
++ beat :: update
|
||||
++ take :: update
|
||||
|= [tea=wire hen=duct typ=type fav=card]
|
||||
^- [p=(list move) q=vane]
|
||||
?+ -.fav [[[hen %give fav] ~] ..^$]
|
||||
%crud
|
||||
[[[hen %slip %d %flog fav] ~] ..^$]
|
||||
::
|
||||
%soft
|
||||
$(fav ((hard card) p.fav))
|
||||
::
|
||||
%init
|
||||
[~ ..^$(fat.ruf (~(put by fat.ruf) p.fav [hen ~ ~ ~]))]
|
||||
@ -413,7 +416,7 @@
|
||||
=+ ryf=((hard riff) s.fav)
|
||||
:_ ..^$
|
||||
:~ :- hen
|
||||
:^ %call %c
|
||||
:^ %toss %c
|
||||
[(scot %p p.p.fav) (scot %p q.p.fav) r.fav]
|
||||
[%warp [p.p.fav p.p.fav] ryf]
|
||||
==
|
||||
@ -424,7 +427,7 @@
|
||||
=+ him=(need (slaw %p i.t.tea))
|
||||
:_ ..^$
|
||||
:~ :- hen
|
||||
[%call %a ~ [%want [our him] [%r %re %c t.t.tea] p.fav]]
|
||||
[%toss %a ~ [%want [our him] [%r %re %c t.t.tea] p.fav]]
|
||||
==
|
||||
::
|
||||
%went :: XX should actually propagate
|
||||
@ -443,7 +446,7 @@
|
||||
::
|
||||
++ call :: process move
|
||||
|= [hen=duct typ=type fav=card]
|
||||
(beat ~ hen typ fav)
|
||||
(take ~ hen typ fav)
|
||||
::
|
||||
++ come
|
||||
|= [sam=? old=vase]
|
||||
@ -471,7 +474,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 +485,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 [~ ~]
|
||||
|
@ -8,13 +8,15 @@
|
||||
|= [now=@da eny=@ ska=$+(* (unit (unit)))] :: current invocation
|
||||
^? :: opaque core
|
||||
|% :: poke/peek pattern
|
||||
++ beat :: process move
|
||||
++ take :: process move
|
||||
|= [tea=wire hen=duct typ=type fav=card]
|
||||
^- [p=(list move) q=vane]
|
||||
?: ?=(%flog -.fav)
|
||||
:_ ..^$
|
||||
%+ turn (~(tap by dug) *(list ,[p=duct q=yard]))
|
||||
|=([a=duct b=yard] [a %slip %d p.fav])
|
||||
?: ?=(%soft -.fav)
|
||||
$(fav ((hard card) p.fav))
|
||||
=+ ^= yar ^- yard
|
||||
=+ yar=(~(get by dug) hen)
|
||||
?^ yar u.yar
|
||||
@ -229,7 +231,7 @@
|
||||
%d ?: ?& =(0 bul.u.q.q.yar)
|
||||
=(0 bus.u.q.q.yar)
|
||||
==
|
||||
+.$(mos :_(mos [hen %call %b ~ [%kill ~]]))
|
||||
+.$(mos :_(mos [hen %toss %b ~ [%kill ~]]))
|
||||
$(fav [%belt %del ~])
|
||||
%e (edit u.q.q.yar(bus bul.u.q.q.yar))
|
||||
%f $(fav [%belt %aro %r])
|
||||
@ -277,8 +279,8 @@
|
||||
==
|
||||
%r (edit u.q.q.yar(hyr [~ ~]))
|
||||
:: TODO
|
||||
:: %w +.$(mos :_(mos [hen %call %b ~ [%limn ~]]))
|
||||
%x +.$(mos :_(mos [hen %call %b ~ [%ling ~]]))
|
||||
:: %w +.$(mos :_(mos [hen %toss %b ~ [%limn ~]]))
|
||||
%x +.$(mos :_(mos [hen %toss %b ~ [%ling ~]]))
|
||||
%y ?: =(0 p.r.q.yar)
|
||||
beep
|
||||
$(fav [%belt %txt (snag q.r.q.yar r.r.q.yar)])
|
||||
@ -347,9 +349,9 @@
|
||||
[p.hyt.u.q.q.yar [jab ?~(q.hyt.u.q.q.yar ~ +.q.hyt.u.q.q.yar)]]
|
||||
::
|
||||
mos
|
||||
:* [hen %call %b ~ [%hail ~]]
|
||||
:* [hen %toss %b ~ [%hail ~]]
|
||||
[hen %give [%bbye ~]]
|
||||
[hen %call %b ~ [%line jab]]
|
||||
[hen %toss %b ~ [%line jab]]
|
||||
[hen %give [%blit [[%mor ~] ~]]]
|
||||
mos
|
||||
==
|
||||
@ -375,7 +377,7 @@
|
||||
%boot
|
||||
%= +.$
|
||||
mos
|
||||
:_(mos [hen %call %b tea p.fav])
|
||||
:_(mos [hen %toss %b tea p.fav])
|
||||
==
|
||||
::
|
||||
%crud :: error trace
|
||||
@ -412,7 +414,7 @@
|
||||
==
|
||||
::
|
||||
?(%hail %make %loin %sith)
|
||||
+.$(mos :_(mos [hen %call %b ~ fav]))
|
||||
+.$(mos :_(mos [hen %toss %b ~ fav]))
|
||||
::
|
||||
%note ?.(p.yar +.$ (fume p.fav q.fav)) :: debug message
|
||||
%save :: write a file
|
||||
@ -435,7 +437,7 @@
|
||||
::
|
||||
++ call :: process move
|
||||
|= [hen=duct typ=type fav=card]
|
||||
(beat ~ hen typ fav)
|
||||
(take ~ hen typ fav)
|
||||
::
|
||||
++ come
|
||||
|= [sam=? old=vase]
|
||||
@ -461,7 +463,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))
|
||||
~
|
||||
::
|
||||
|
@ -352,12 +352,12 @@
|
||||
++ haji :: send %pc login
|
||||
|= [our=ship him=ship ses=hole]
|
||||
^+ +>
|
||||
+>.$(mow :_(mow [hen %call %a ~ [%want [our him] [%r %pc ~] ses]]))
|
||||
+>.$(mow :_(mow [hen %toss %a ~ [%want [our him] [%r %pc ~] ses]]))
|
||||
::
|
||||
++ hajj :: send %pr response
|
||||
|= [our=ship him=ship tus=path har=httr]
|
||||
^+ +>
|
||||
+>.$(mow :_(mow [hen %call %a ~ [%want [our him] [%r %pr tus] har]]))
|
||||
+>.$(mow :_(mow [hen %toss %a ~ [%want [our him] [%r %pr tus] har]]))
|
||||
::
|
||||
++ hare :: receive request
|
||||
|= [our=ship tus=path him=ship hor=*]
|
||||
@ -366,7 +366,7 @@
|
||||
%_ +>.$
|
||||
mow
|
||||
:_ mow
|
||||
[hen %call %e [(scot %p our) (scot %p him) tus] ?~(hux [%thud ~] [%this u.hux])]
|
||||
[hen %toss %e [(scot %p our) (scot %p him) tus] ?~(hux [%thud ~] [%this u.hux])]
|
||||
==
|
||||
::
|
||||
++ here :: receive auth
|
||||
@ -403,7 +403,7 @@
|
||||
%_ +>
|
||||
mow
|
||||
:_ mow
|
||||
[hen %call %c [%hoot (scot %p our) ses (scot %ud num) ~] [%warp [our our] rif]]
|
||||
[hen %toss %c [%hoot (scot %p our) ses (scot %ud num) ~] [%warp [our our] rif]]
|
||||
==
|
||||
::
|
||||
++ hone :: kill ford
|
||||
@ -411,7 +411,7 @@
|
||||
%_ +>
|
||||
mow
|
||||
:_ mow
|
||||
[hen %call %f [%honk (scot %p our) ses (scot %ud num) ~] [%exec our ~]]
|
||||
[hen %toss %f [%honk (scot %p our) ses (scot %ud num) ~] [%exec our ~]]
|
||||
==
|
||||
::
|
||||
++ honk :: ford request
|
||||
@ -420,7 +420,7 @@
|
||||
%_ +>
|
||||
mow
|
||||
:_ mow
|
||||
[hen %call %f [%honk (scot %p our) ses (scot %ud num) ~] [%exec our `kas]]
|
||||
[hen %toss %f [%honk (scot %p our) ses (scot %ud num) ~] [%exec our `kas]]
|
||||
==
|
||||
::
|
||||
++ hops :: cancel remote
|
||||
@ -432,7 +432,7 @@
|
||||
mow
|
||||
:_ mow
|
||||
:- hen
|
||||
:^ %call %a
|
||||
:^ %toss %a
|
||||
[%hork (scot %p sor.rot) mun ~]
|
||||
[%want [sor.rot him] [%q %pr %e %hork mun ~] ~]
|
||||
==
|
||||
@ -458,7 +458,7 @@
|
||||
mow
|
||||
:_ mow
|
||||
:- hen
|
||||
:^ %call %a
|
||||
:^ %toss %a
|
||||
[%hork (scot %p sor.rot) mun ~]
|
||||
[%want [sor.rot him] [%q %pr %e %hork mun ~] [~ hyx]]
|
||||
::
|
||||
@ -1685,7 +1685,7 @@
|
||||
?~ fuv mow
|
||||
:_ mow
|
||||
:- hen
|
||||
:^ %call %b
|
||||
:^ %toss %b
|
||||
[%cons (scot %p our) ses (scot %ud p.som.pip) ~]
|
||||
u.fuv
|
||||
==
|
||||
@ -1813,13 +1813,15 @@
|
||||
|= [now=@da eny=@ ska=$+(* (unit (unit)))] :: activate
|
||||
^? :: opaque core
|
||||
|% ::
|
||||
++ beat :: process move
|
||||
++ take :: process move
|
||||
|= [tea=wire hen=duct typ=type fav=card]
|
||||
^- [p=(list move) q=vane]
|
||||
=+ sky=|=(* `(unit)`=+(a=(ska +<) ?~(a ~ ?~(u.a ~ [~ u.u.a]))))
|
||||
=. ney (shax :(mix (shax now) +(eny) ney)) :: XX!! shd not need
|
||||
?: ?=(%crud -.fav)
|
||||
[[[hen %slip %d %flog fav] ~] ..^$]
|
||||
?: ?=(%soft -.fav)
|
||||
$(fav ((hard card) p.fav))
|
||||
^- [p=(list move) q=vane]
|
||||
=. gub ?.(=(0 gub) gub (cat 3 (rsh 3 1 (scot %p (end 6 1 eny))) '-'))
|
||||
=^ mos bol
|
||||
@ -1828,7 +1830,7 @@
|
||||
::
|
||||
++ call :: process move
|
||||
|= [hen=duct typ=type fav=card]
|
||||
(beat ~ hen typ fav)
|
||||
(take ~ hen typ fav)
|
||||
::
|
||||
++ come
|
||||
|= [sam=? old=vase]
|
||||
@ -1853,7 +1855,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))
|
||||
~
|
||||
::
|
||||
|
@ -161,7 +161,7 @@
|
||||
kiz t.kiz
|
||||
mow :_ mow
|
||||
:- hen
|
||||
:^ %call %c
|
||||
:^ %toss %c
|
||||
[(scot %ud num) (scot %ud p.i.kiz) ~]
|
||||
[%warp [our p.q.i.kiz] q.q.i.kiz ~]
|
||||
==
|
||||
@ -176,7 +176,7 @@
|
||||
%= $
|
||||
mow :_ mow
|
||||
:- hen
|
||||
:^ %call %c
|
||||
:^ %toss %c
|
||||
[(scot %ud num) (scot %ud tik) ~]
|
||||
[%warp [our p.bem] q.bem [~ %& %x r.bem s.bem]]
|
||||
==
|
||||
@ -571,9 +571,11 @@
|
||||
|= [now=@da eny=@ ska=$+(* (unit (unit)))] :: activate
|
||||
^? :: opaque core
|
||||
|% ::
|
||||
++ beat :: process move
|
||||
++ take :: process move
|
||||
|= [tea=wire hen=duct typ=type fav=card]
|
||||
^- [p=(list move) q=vane]
|
||||
?: ?=(%soft -.fav)
|
||||
$(fav ((hard card) p.fav))
|
||||
=+ ^= our ^- @p
|
||||
?+ -.fav !!
|
||||
%exec p.fav
|
||||
@ -587,7 +589,7 @@
|
||||
::
|
||||
++ call :: process move
|
||||
|= [hen=duct typ=type fav=card]
|
||||
(beat ~ hen typ fav)
|
||||
(take ~ hen typ fav)
|
||||
::
|
||||
++ come
|
||||
|= [sam=? old=vase]
|
||||
@ -612,7 +614,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))
|
||||
~
|
||||
::
|
||||
|
514
arvo/gall.hoon
514
arvo/gall.hoon
@ -3,399 +3,167 @@
|
||||
::::
|
||||
|= pit=vase
|
||||
^- vane
|
||||
=> =~
|
||||
|% :: clams
|
||||
=> =~ :: preface
|
||||
|% :: structures
|
||||
++ axle :: all %gall state
|
||||
$: ven=%0 ::
|
||||
$: ven=%0 :: state version
|
||||
pol=(map ship mast) :: apps by ship
|
||||
== ::
|
||||
++ bone ,@ud :: opaque duct
|
||||
++ bull ,[p=bone q=(mold note gift)] :: urbit action
|
||||
++ bump :: urbit event
|
||||
$: ost=bone :: channel
|
||||
him=ship :: client
|
||||
law=(unit chop) :: authority
|
||||
val=curd :: data
|
||||
== ::
|
||||
++ view ,[p=cork q=@da r=(unit ,@dr)] :: timeline
|
||||
++ gift :: outbound result
|
||||
++ cork ?(%u %v %w %x %y %z) :: view angle
|
||||
++ gift :: out result <-$
|
||||
%$ [%back ~] :: acknowledgment
|
||||
[%crud p=(list tank)] :: error notification
|
||||
[%seen p=@da q=*] :: view update
|
||||
[%seen p=@da q=*] :: wind update
|
||||
== ::
|
||||
++ kiss :: inbound request
|
||||
$% [%send p=sock q=term r=curd] :: urbit message
|
||||
[%turd p=(list tank) q=kiss] :: error rebound
|
||||
++ kiss :: in request ->$
|
||||
$% [%mess p=ship q=term r=(disk)] :: urbit message
|
||||
[%puke p=@tas q=(list tank) r=kiss] :: rising error
|
||||
[%user p=(unit chop) q=kiss] :: restriction
|
||||
[%view p=ship q=view r=path] :: subscription
|
||||
[%show p=ship q=term r=wind s=path] :: subscription
|
||||
== ::
|
||||
++ sign curd :: inbound result V-<
|
||||
++ note curd :: outbound request V->
|
||||
++ hypo |*(a=$+(* *) (pair type a))
|
||||
++ debt :: pending operation
|
||||
$% [%pear p=ship q=(unit chop) r=curd] :: message
|
||||
[%peer p=(unit chop) q=view r=path] :: subscription
|
||||
[%peak p=(hypo card)] :: result
|
||||
==
|
||||
++ seat :: living app
|
||||
$: huv=(unit vase) :: current hive
|
||||
++ mast :: apps by ship
|
||||
$: bum=(map ,@ta seat) :: apps by name
|
||||
== ::
|
||||
++ move ,[p=duct q=(mold note gift)] :: typed move
|
||||
++ note curd :: out request $->
|
||||
++ seat :: the living app
|
||||
$:
|
||||
huv=(unit vase) :: current hive
|
||||
dep=(set ,[p=ship q=desk]) :: dependencies
|
||||
orm=(unit ,@da) :: last buildtime
|
||||
eny=@ :: entropy
|
||||
lat=@da :: time of last tick
|
||||
tik=@ud :: tick computed
|
||||
zos=(map bone ,[p=(unit chop) q=duct]) :: bone to duct
|
||||
zam=[p=@ud q=(map duct ,@ud)] :: duct to bone
|
||||
vey=(qeu ,[p=bone q=debt]) :: blocked queue
|
||||
^= zam :: opaque duct system
|
||||
$: p=@ud :: sequence
|
||||
q=(map duct ,[p=bone q=(unit chop)]) :: by duct
|
||||
r=(map bone duct) :: by bone
|
||||
== ::
|
||||
== ::
|
||||
++ mast :: apps by ship
|
||||
$: bum=(map ,@ta seat) :: apps by name
|
||||
== ::
|
||||
++ mitt :: execution context
|
||||
$: $: ost=bone :: source
|
||||
pax=path :: hivepath
|
||||
law=(unit chop) :: rights
|
||||
== ::
|
||||
++ wren :: waiting card
|
||||
$: tig=mitt :: context
|
||||
fav=card :: content
|
||||
== ::
|
||||
++ wind ,[p=cork q=@da r=(unit ,@dr)] :: show window
|
||||
-- ::
|
||||
|% :: implicit clams
|
||||
++ cork ?(%u %v %w %x %y %z) :: view angle
|
||||
++ gift ::
|
||||
|
||||
++ hawk (gaff card) ::
|
||||
++ hide :: engine state
|
||||
$: own=[p=ship q=@tas] :: static identity
|
||||
bec=beak :: installation path
|
||||
^= seq :: dynamic sequence
|
||||
$: num=@ud :: change number
|
||||
eny=@ :: entropy
|
||||
lat=@da :: date of last tick
|
||||
== == ::
|
||||
++ hive :: typed engine
|
||||
$_ ^? ::
|
||||
|_ hide :: hive state
|
||||
++ pack * :: save
|
||||
++ pear :: request
|
||||
|+ $: ost=bone :: channel
|
||||
law=(unit chop) :: authority
|
||||
him=ship :: client
|
||||
fov=(hypo card) :: favor
|
||||
== ::
|
||||
:_(+> (list bull)) ::
|
||||
:: ::
|
||||
++ peer :: subscribe
|
||||
|+ %
|
||||
|
||||
++ poke |+(lima [*(list ,[p=bone q=hawk]) +>]) :: do
|
||||
++ peek |+(lira *(unit (unit luge))) :: see
|
||||
++ prep |+(* +>) :: load
|
||||
== ::
|
||||
++ lima :: wren other side
|
||||
$: $: ost=bone :: source
|
||||
law=(unit chop) :: permission
|
||||
pax=path :: logical position
|
||||
==
|
||||
fav=* :: present event
|
||||
== ::
|
||||
++ lira :: general query
|
||||
$: for=(set monk) :: p.u.law
|
||||
roc=cork :: desired aspect
|
||||
pax=path :: internal path
|
||||
== ::
|
||||
-- ::
|
||||
|% ::
|
||||
++ ho :: per card
|
||||
=| $: ost=bone :: opaque cause
|
||||
hen=duct :: kernel cause
|
||||
law=(unit chop) :: rights
|
||||
mow=(list move) :: direct moves
|
||||
now=@da :: current date
|
||||
eny=@ :: current entropy
|
||||
our=@p :: ship
|
||||
app=@tas :: application name
|
||||
sat=seat :: application state
|
||||
== ::
|
||||
|%
|
||||
++ abet
|
||||
^- [(list move) seat]
|
||||
[(flop mow) sat]
|
||||
::
|
||||
++ apex :: returning card
|
||||
|= [pan=term pax=path fav=card]
|
||||
?+ pan !!
|
||||
%boot (boot pax fav)
|
||||
%poke (poke pax fav)
|
||||
%user (axon pax fav)
|
||||
%wait (wait pax fav)
|
||||
==
|
||||
::
|
||||
++ axon :: user card
|
||||
|= [pax=path fav=card]
|
||||
?> ?=(
|
||||
::
|
||||
++ babe :: poke or wait
|
||||
|= [pax=path fav=card]
|
||||
?> ?=(%meta -.fav)
|
||||
|
||||
?~ huv.sat
|
||||
(bait pax fav)
|
||||
%= +>
|
||||
huv.sat ~
|
||||
=+ gat=(slap u.huv.sat [%cnzy %poke])
|
||||
=+ sam=:(slop !>(law) !>(pax) cav)
|
||||
=+
|
||||
::
|
||||
++ boot :: boot result
|
||||
|= rew=wren
|
||||
?> ?=(%made -.fav.rew)
|
||||
?- -.p.fav.rew
|
||||
| (drip [%crud %gall p.p.fav])
|
||||
& (dear p.fav q.q.fav)
|
||||
==
|
||||
::
|
||||
++ poke :: poke result
|
||||
|= rew=wren
|
||||
?> ?=(%made -.fav.rew)
|
||||
?- -.p.fav.rew
|
||||
| (drip [%crud %gall p.p.fav])
|
||||
& (pone q.q.p.fav)
|
||||
==
|
||||
::
|
||||
++ pone :: poke product
|
||||
|= vax=vase
|
||||
^+ +>
|
||||
?~ q.vax +>
|
||||
=+ hed=(slot 2 vax)
|
||||
=. +>.$ (poof (slot 2 vax))
|
||||
$(vax (slot 3 vax))
|
||||
::
|
||||
++ poof :: apply effect
|
||||
|= vax=vase
|
||||
^+ +>
|
||||
=+ nab=(,@ q:(slot 2 vax))
|
||||
=+ vib=(need (~(get by zos.sat) nab))
|
||||
=: ost nab
|
||||
law p.vib
|
||||
hen q.vib
|
||||
==
|
||||
(puss (slot 3 vax))
|
||||
::
|
||||
++ puss :: poke gaff
|
||||
|= vax=vase
|
||||
^+ +>
|
||||
=. vax (spec vax)
|
||||
?+ -.q.vax !!
|
||||
%call
|
||||
=+ ney=`@tas`(sane %tas ((hard ,@) q:(slot 6 vax)))
|
||||
=+ cav=(quod (slot 7 vax))
|
||||
(call ney %used [%meta our cav])
|
||||
::
|
||||
%drip
|
||||
(drip [%meta our (slot 3 vax)])
|
||||
::
|
||||
%stop
|
||||
+>.$(zos (~(del by zos) ost))
|
||||
==
|
||||
::
|
||||
++ quod :: typecheck hive
|
||||
|= vax=vase
|
||||
vax :: XX
|
||||
::
|
||||
++ kick :: run engine
|
||||
|- ^+ +
|
||||
?~ vey.sat +.$
|
||||
?~ huv.sat +.$
|
||||
=^ lef vey.sat ~(get to vey.sat)
|
||||
|
||||
++ blam :: block on slam
|
||||
|= [cod=@tas gat=vase sam=vase]
|
||||
^+ +>
|
||||
|
||||
++ dear :: reset
|
||||
|= [dep=(set beam) vax=vase]
|
||||
deep(huv.sat `vax)
|
||||
|
||||
::
|
||||
++ call :: advance a card
|
||||
|= [vay=term pan=term fav=card]
|
||||
^+ +>
|
||||
%= +> mow :_ mow
|
||||
^- move
|
||||
:+ [~ %iron our]
|
||||
^- duct
|
||||
[[vay ~] [/g (scot %p our) app pan ~]
|
||||
fav
|
||||
==
|
||||
::
|
||||
++ drip :: return a card
|
||||
|= fav=card
|
||||
^+ +>
|
||||
+>(mow :_(mow [[~ %iron our] hen fav]))
|
||||
::
|
||||
++ spec :: specialize kelp
|
||||
|= vax=vase
|
||||
^- vase
|
||||
?. &(?=(^ q.vax) ?=(@ -.q.vax))
|
||||
vax
|
||||
%+ slap vax
|
||||
^- twig
|
||||
:+ %wtgr
|
||||
[%wtts [%dtzz %tas -.q.vax] [%$ 2]]
|
||||
[%$ 1]
|
||||
::
|
||||
++ more
|
||||
|- ^+ +
|
||||
?> ?=(^ huv.sat)
|
||||
?~ vey.sat +.$
|
||||
=^ lef vey.sat ~(get to vey.sat)
|
||||
::
|
||||
++ axon :: advancing card
|
||||
|= fav=card
|
||||
?~ huv.sat :: if blocked
|
||||
(bait pax cav)
|
||||
?~ pax :: call, essentially
|
||||
=+ ^= sam
|
||||
;: slop
|
||||
!>(law)
|
||||
==
|
||||
=+ gat=(slap u.huv.sat [%cnzy %poke])
|
||||
!!
|
||||
::
|
||||
::
|
||||
++ bait :: boot/wait
|
||||
|= [pax=path cav=vase]
|
||||
^+ +>
|
||||
?> ?=(~ huv.sat)
|
||||
=+ new==(~ vey.sat)
|
||||
=. vey.sat (~(put to vey.sat) `wren
|
||||
?: =(~ vey.sat)
|
||||
::
|
||||
++ boob ::
|
||||
::
|
||||
++ boot :: send boot
|
||||
^+ .
|
||||
(dyke %boot %boil %core [(scot %p our) %main (scot %da now) %app ~])
|
||||
::
|
||||
++ dyke :: send to compute
|
||||
|= [pan=@tas kas=silk]
|
||||
^+ +>
|
||||
%= +> mow :_ mow
|
||||
^- move
|
||||
:+ [~ %iron our]
|
||||
^- duct
|
||||
[/f [/g (scot %p our) app pan ~]
|
||||
^- card
|
||||
[%exec kas]
|
||||
==
|
||||
::
|
||||
++ feed
|
||||
|=
|
||||
|
||||
--
|
||||
|% :: functions
|
||||
++ limp :: merge authorities
|
||||
|= [a=(unit chop) b=(unit chop)]
|
||||
^- (unit chop)
|
||||
a :: XX ?
|
||||
--
|
||||
. ==
|
||||
=| axle
|
||||
=* lex -
|
||||
|= [now=@da eny=@ ska=$+(* (unit (unit)))] :: activate
|
||||
^? :: opaque core
|
||||
|% ::
|
||||
++ call :: inbound card
|
||||
|= [hen=duct typ=type sin
|
||||
!!
|
||||
++ dive
|
||||
|= [hen=duct loc=path
|
||||
!!
|
||||
++ beat :: process move
|
||||
|= [pax=path hen=duct typ=type fav=card]
|
||||
^- [p=(list move) q=vane]
|
||||
=+ ^= def
|
||||
|. ^- seat
|
||||
. == :: end preface
|
||||
=| all=axle :: all vane state
|
||||
|= $: now=@da :: urban time
|
||||
eny=@ :: entropy
|
||||
$= ski :: namespace
|
||||
$+ $: (unit (set monk)) :: rights
|
||||
path :: name
|
||||
== (unit (unit (disk))) :: known/any/value
|
||||
== :: opaque core
|
||||
=< |% ::
|
||||
++ take :: return card
|
||||
|= [pax=path hen=duct hil=(hypo curd)] ::
|
||||
^- [(list move) ..^$]
|
||||
!!
|
||||
++ give :: request card
|
||||
|= [hen=duct hil=(hypo kiss)]
|
||||
=+ ^= ,[p=ship q=term]
|
||||
?- -.q.hil
|
||||
%mess
|
||||
%puke
|
||||
==
|
||||
?- -.hil
|
||||
++ scry :: observe
|
||||
|= $: use=(unit (set monk)) :: observers
|
||||
bid=bead :: position
|
||||
== ::
|
||||
*view
|
||||
--
|
||||
++ go
|
||||
|_ $: our=@p :: application owner
|
||||
app=@tas :: application name
|
||||
mat=mast :: per owner
|
||||
sat=seat :: per application
|
||||
== ::
|
||||
++ abet :: collapse core
|
||||
%_ +>
|
||||
lex %_ lex
|
||||
pol %+ ~(put by pol.lex) our
|
||||
%_ mat
|
||||
bum (~(put by bum.mat) app sat)
|
||||
== == ==
|
||||
::
|
||||
++ bear :: write backward
|
||||
|= hen=duct
|
||||
=+ orf=(need (~(get by q.zam) hen))
|
||||
~(. bo:~(. au p.orf) hen q.orf)
|
||||
::
|
||||
++ beef :: read in
|
||||
|= [lok=case use=(unit (set monk))
|
||||
~(. au use)
|
||||
::
|
||||
++ boar :: write forward
|
||||
|= $: hen=duct :: cause
|
||||
law=(unit chop) :: read permission
|
||||
==
|
||||
=^ orf zam :: opaque duct
|
||||
=+ orf=(~(get by q.zam) hen)
|
||||
?^ orf
|
||||
[[p.u.orf (limp law q.u.orf)] zam]
|
||||
:^ [[p.zam law] +(p.zam)
|
||||
(~(put by q.zam) hen [p.zam aud])
|
||||
(~(put by r.zam) p.zam hen)
|
||||
~(. bo:~(. au ?~(law [~ ~] p.u.law)) hen p.orf ?~(law ~ q.u.law))
|
||||
::
|
||||
++ au :: read
|
||||
|_ use=(unit (set monk)) :: write
|
||||
++ lens
|
||||
|=
|
||||
++ bo
|
||||
|_ $: hen=duct :: system duct
|
||||
ost=bone :: opaque duct
|
||||
seg=(unit (set monk)) :: write permission
|
||||
==
|
||||
++ abet +> :: collapse core
|
||||
++ mess ::
|
||||
|= dur=(disk) :: general data
|
||||
^- [(list move) _+>]
|
||||
!! ::
|
||||
|
||||
++ more :: process result
|
||||
|= $: pax=path
|
||||
hil=(hypo curd)
|
||||
==
|
||||
^- [(list move) _+>]
|
||||
++ show ::
|
||||
|= $: win=wind :: version window
|
||||
pax=path :: subtree
|
||||
== ::
|
||||
^- [(list move) +>]
|
||||
!!
|
||||
--
|
||||
++ abet +>
|
||||
--
|
||||
--
|
||||
::
|
||||
++ goad :: take and go
|
||||
|= [our=@p app=@tas]
|
||||
=+ mat=(need (~(get by pol.lex our)))
|
||||
=+ sat=(need (~(get by bum.mat) app))
|
||||
~.( go [our app mat sat])
|
||||
::
|
||||
++ goat :: call and go
|
||||
|= [our=@p app=@tas]
|
||||
=+ ^= mat ^- mast :: per owner
|
||||
=+ mat=(~(get by pol.lex) p.fav)
|
||||
?~(mat *mast u.mat)
|
||||
=+ ^= sat ^- seat :: per app
|
||||
=+ sat=(~(get by bum.mat) q.fav)
|
||||
?^ sat u.sat
|
||||
%* . *seat
|
||||
eny (shax (mix now eny))
|
||||
lat now
|
||||
==
|
||||
=^ mos lex
|
||||
?: =(~ tea)
|
||||
?. ?=(%mean -.fav) ~|(%gall-what !!)
|
||||
=+ ^= mat ^- mast
|
||||
=+ mat=(~(get by pol.lex) p.fav)
|
||||
?~(mat *mast u.mat)
|
||||
=+ ^= sat ^- seat
|
||||
=+ sat=(~(get by bum.mat) q.fav)
|
||||
?~(sat *def u.sat)
|
||||
=^ ost sat
|
||||
^- [bone seat]
|
||||
=+ byn=(~(get by zam.sat) hen)
|
||||
?^ byn u.byn
|
||||
[p.zam.sat sat(p.zam +(p.zam), q.zam (~(put by q.sam) hen p.zam.sat)]
|
||||
=+ ^= tox
|
||||
:* ost
|
||||
now
|
||||
eny
|
||||
r.fav
|
||||
*(list move)
|
||||
p.fav
|
||||
q.fav
|
||||
sat
|
||||
==
|
||||
=^ mos sat abet:(~(axon za tox) fav)
|
||||
:- mos
|
||||
%= lex
|
||||
pol (~(put by pol.lex) p.fav mat(bum (~(put by bum.mat) q.fav sat)))
|
||||
==
|
||||
?> ?=([@ @ *] tea)
|
||||
=+ [our=(need (slaw %p i.tea)) app=(need (slaw %tas i.t.tea))]
|
||||
=+ mat=(need (~(get by pol.lex) our))
|
||||
=+ sat=(need (~(get by bum.mat) app))
|
||||
=+ ost=(need (~(get by q.zam.sat) hen))
|
||||
=+ law=p:(need (~(get by zos.sat) ost))
|
||||
=+ ^= tox
|
||||
:* ost
|
||||
now
|
||||
eny
|
||||
law
|
||||
*(list move)
|
||||
our
|
||||
app
|
||||
sat
|
||||
==
|
||||
=^ mos sat abet:(~(axon za tox) t.t.tea fav)
|
||||
:- mos
|
||||
lex(pol (~(put by pol.lex) p.fav mat(bum (~(put by bum.mat) q.fav sat))))
|
||||
==
|
||||
[`(list move)`mos ..^$]
|
||||
::
|
||||
++ come
|
||||
|= [sam=? old=vase]
|
||||
^- vane
|
||||
(load old)
|
||||
::
|
||||
++ doze
|
||||
|= [now=@da hen=duct]
|
||||
^- (unit ,@da)
|
||||
~
|
||||
::
|
||||
++ load
|
||||
|= old=vase
|
||||
^- vane
|
||||
?. (~(nest ut -:!>(`axle`+>-.^$)) | p.old)
|
||||
~& %ford-reset
|
||||
..^$
|
||||
..^$(+>- (axle q.old))
|
||||
::
|
||||
++ raze
|
||||
^- vane
|
||||
..$(+>- *axle)
|
||||
::
|
||||
++ scry
|
||||
|= [our=ship ren=@tas who=ship syd=desk lot=coin tyl=path]
|
||||
^- (unit (unit))
|
||||
~
|
||||
::
|
||||
++ stay
|
||||
`vase`!>((colt `axle`+>-.$))
|
||||
++ vern [164 0]
|
||||
~(. go [our app mat sat])
|
||||
--
|
||||
==
|
||||
. == :: end preface
|
||||
|
106
arvo/hoon.hoon
106
arvo/hoon.hoon
@ -8784,39 +8784,68 @@
|
||||
:::::: ::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||
!:
|
||||
|%
|
||||
++ arch ,[p=@uvI q=(unit ,@uvI) r=(map ,@ta ,~)] :: fundamental node
|
||||
++ bead ,[[p=ship q=desk r=case] s=path] :: global name
|
||||
++ case :: version
|
||||
$% [%da p=@da] :: date
|
||||
[%tas p=@tas] :: label
|
||||
[%ud p=@ud] :: sequence
|
||||
== ::
|
||||
++ desk ,@tas :: ship desk case spur
|
||||
++ chop :: permissions
|
||||
$: say=(set monk) :: data authorizers
|
||||
use=(set monk) :: data users
|
||||
$: use=(unit (set monk)) :: data users
|
||||
say=(set monk) :: data authors
|
||||
== ::
|
||||
++ curd ,[p=@tas q=*] :: typeless card
|
||||
++ disk |*(a=$+(* *) (pair gene (hypo a))) :: global/local typed
|
||||
++ duct (list wire) :: causal history
|
||||
++ helm :: privilege
|
||||
$| ?(%gold %iron) :: root, user
|
||||
$% [%lead p=ship] :: foreign
|
||||
++ gene :: global schema
|
||||
$& [p=gene q=gene] :: autocons
|
||||
$% [%at p=@tas] :: atom
|
||||
[%gl p=glob] :: global objective
|
||||
[%fa p=@tas q=gene] :: named
|
||||
[%li p=gene] :: list
|
||||
[%no ~] :: untyped
|
||||
[%ma p=gene q=gene] :: map
|
||||
[%se p=gene] :: set
|
||||
[%sy p=@tas q=gene r=gene] :: symbolic declare
|
||||
[%un p=gene] :: unit
|
||||
[%va p=@tas] :: symbolic reference
|
||||
== ::
|
||||
++ glob ,[p=logo q=ship r=mark] :: global brand
|
||||
++ herd (hypo curd) :: typed card
|
||||
++ hilt ?(0 1 2) :: lead iron gold
|
||||
++ hypo |*(a=$+(* *) (pair type a)) :: type associated
|
||||
++ khan ,[p=@tas q=path] :: foreign identity
|
||||
++ logo ,@tas :: content type
|
||||
++ mark ,@uvH :: type by core hash
|
||||
++ mill (each vase milt) :: vase/metavase
|
||||
++ milt ,[p=* q=*] :: metavase
|
||||
++ monk (each ship khan) :: general identity
|
||||
++ mold :: general action
|
||||
|* [a=$+(* *) b=$+(* *)] :: new move
|
||||
$% [%call p=term q=path r=a] :: advance
|
||||
$% [%toss p=term q=path r=a] :: advance
|
||||
[%slip p=term q=a] :: send across
|
||||
[%sick p=b] :: lame refactoring
|
||||
[%give p=b] :: retreat
|
||||
== ::
|
||||
++ muse ,[p=@tas q=duct r=(mold herd herd)] :: sourced move
|
||||
++ mosh ,[p=duct q=(mold curd curd)] :: old move
|
||||
++ move ,[p=duct q=(mold herd herd)] :: raw action
|
||||
++ muse ,[p=@tas q=duct r=(mold mill mill)] :: sourced move
|
||||
++ mosh ,[p=duct q=(mold curd curd)] :: vane move
|
||||
++ move ,[p=duct q=(mold mill mill)] :: arvo move
|
||||
++ ovum ,[p=wire q=curd] :: typeless ovum
|
||||
++ pane (list ,[p=@tas q=vase]) :: kernel modules
|
||||
++ pone (list ,[p=@tas q=vise]) :: kernel modules, old
|
||||
++ ship ,@p :: network identity
|
||||
++ view :: observation core
|
||||
$_ ^? ::
|
||||
|% ++ u *(unit (unit (unit ,@ud))) :: last change
|
||||
++ v *(unit (unit (disk))) :: historic subtree
|
||||
++ w *(unit (unit (unit ,[p=@ud q=(disk)]))) :: change and diff
|
||||
++ x *(unit (unit (disk))) :: actual data
|
||||
++ y *(unit (unit arch)) :: directory
|
||||
++ z *(unit (unit (disk))) :: current subtree
|
||||
-- ::
|
||||
++ wire path :: event pretext
|
||||
++ writ ,[p=helm q=ship] :: authority
|
||||
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||
:: section 3bE, Arvo core ::
|
||||
::
|
||||
@ -8867,16 +8896,20 @@
|
||||
++ 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
|
||||
=+ 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
|
||||
~& %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=*] ::
|
||||
?. ?=([%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
|
||||
::
|
||||
++ sump
|
||||
@ -8886,20 +8919,21 @@
|
||||
=+ caq=(spec (slot 3 wec))
|
||||
?+ q.caq ~&(%sump-bad !!)
|
||||
::
|
||||
[%call p=@tas q=* r=[p=@tas q=*]]
|
||||
:^ %call (need ((sand %tas) ((hard ,@) p.q.caq)))
|
||||
[%toss p=@tas q=* r=[p=@tas q=*]]
|
||||
:^ %toss (need ((sand %tas) ((hard ,@) p.q.caq)))
|
||||
((hard path) q.q.caq)
|
||||
[%noun r.q.caq]
|
||||
:: (song (slot 15 caq))
|
||||
(song (spec (slot 15 caq)))
|
||||
::
|
||||
[%give p=[p=@tas q=*]]
|
||||
[%give %noun p.q.caq]
|
||||
[%give (song (spec (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 (spec (slot 7 caq)))
|
||||
==
|
||||
::
|
||||
++ said
|
||||
@ -8910,7 +8944,7 @@
|
||||
[(sump (slot 2 vud)) $(vud (slot 3 vud))]
|
||||
::
|
||||
++ scry
|
||||
|= $: our=ship
|
||||
|= $: fur=(unit (set monk))
|
||||
ren=@tas
|
||||
his=ship
|
||||
syd=@tas
|
||||
@ -8931,13 +8965,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 %take]) [u.pux hen +.hil])
|
||||
:- (said (slap pro [%cnzy %p]))
|
||||
(soar (slap pro [%cnzy %q]))
|
||||
--
|
||||
@ -8951,7 +8985,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))
|
||||
@ -8967,14 +9001,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
|
||||
@ -8999,26 +9033,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 ~ [%toss (dint p.ovo) t.p.ovo [%& %noun q.ovo]]]~)
|
||||
::
|
||||
++ race :: beat
|
||||
|= [pux=(unit wire) hen=duct hud=herd ves=vase]
|
||||
++ race :: take
|
||||
|= [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
|
||||
@ -9026,7 +9060,7 @@
|
||||
^- [[p=(list ovum) q=(list muse)] _fan]
|
||||
%- fire
|
||||
?- -.r.gum
|
||||
%call
|
||||
%toss
|
||||
[p.r.gum ~ [[p.gum q.r.gum] q.gum] r.r.gum]
|
||||
::
|
||||
%give
|
||||
|
@ -1873,7 +1873,6 @@
|
||||
r=(map ,@ta ankh) :: folders
|
||||
== ::
|
||||
++ apex ,[p=@uvI q=(map ,@ta ,@uvI) r=(map ,@ta ,~)] :: node report (old)
|
||||
++ arch ,[p=@uvI q=(unit ,@uvI) r=(map ,@ta ,~)] :: node report (new)
|
||||
++ ball ,@uw :: statement payload
|
||||
++ bait ,[p=skin q=@ud r=dove] :: fmt nrecvd spec
|
||||
++ bath :: convo per client
|
||||
@ -2023,7 +2022,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
|
||||
@ -2118,7 +2117,6 @@
|
||||
lab=(map ,@tas ,@ud) :: labels
|
||||
== ::
|
||||
++ dojo ,[p=cult q=dome] :: domestic desk state
|
||||
++ desk ,@tas :: ship desk case spur
|
||||
++ door :: foreign contact
|
||||
$: wod=road :: connection to
|
||||
wyl=will :: inferred mirror
|
||||
@ -2273,7 +2271,6 @@
|
||||
++ life ,@ud :: regime number
|
||||
++ lint (list rock) :: fragment array
|
||||
++ lode $|(@tas [p=lode q=lode]) :: constructed logos
|
||||
++ logo ,@tas :: content type
|
||||
++ love $% :: http response
|
||||
[%ham p=manx] :: html node
|
||||
[%mid p=mite q=octs] :: mime-typed data
|
||||
@ -2521,16 +2518,11 @@
|
||||
++ 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
|
||||
hen=duct :: cause
|
||||
typ=type :: event type
|
||||
fav=card :: event
|
||||
== ::
|
||||
:- p=*(list move) :: actions
|
||||
q=*vane :: consequence
|
||||
++ call :: update
|
||||
|= $: hen=duct :: channel
|
||||
typ=type :: event type
|
||||
@ -2549,7 +2541,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
|
||||
@ -2558,6 +2550,14 @@
|
||||
== ::
|
||||
*(unit (unit)) :: record
|
||||
++ stay *vase :: save state, new
|
||||
++ take :: update
|
||||
|= $: pax=wire :: pretext
|
||||
hen=duct :: cause
|
||||
typ=type :: event type
|
||||
fav=card :: event
|
||||
== ::
|
||||
:- p=*(list move) :: actions
|
||||
q=*vane :: consequence
|
||||
++ vern [_@ud _@ud] :: hoon/vane version
|
||||
-- ::
|
||||
++ wund (list ,[p=life q=ring r=acru]) :: mace in action
|
||||
|
Loading…
Reference in New Issue
Block a user