mirror of
https://github.com/urbit/shrub.git
synced 2025-01-02 01:25:55 +03:00
Merge branch 'remaint' into remaint-merge
This commit is contained in:
commit
5a74064080
@ -141,6 +141,7 @@
|
||||
++ poke-helm-send-hi (wrap poke-send-hi):from-helm
|
||||
++ poke-helm-send-ask (wrap poke-send-ask):from-helm
|
||||
++ poke-helm-verb (wrap poke-verb):from-helm
|
||||
++ poke-helm-nuke (wrap poke-nuke):from-helm
|
||||
++ poke-helm-begin (wrap poke-begin):from-helm
|
||||
++ poke-helm-spawn (wrap poke-spawn):from-helm
|
||||
++ poke-hood-sync (wrap poke-sync):from-kiln
|
||||
|
@ -14,11 +14,12 @@
|
||||
::
|
||||
[. talk sole]
|
||||
=> |% :: data structures
|
||||
++ house {$5 house-5} :: full state
|
||||
++ house {$6 house-6} :: full state
|
||||
++ house-any :: app history
|
||||
$% {$3 house-3} :: 3: talk
|
||||
{$4 house-4} :: 4: talk
|
||||
{$5 house-5} :: 5: talk
|
||||
{$6 house-6} :: 5: talk
|
||||
== ::
|
||||
++ house-3 ::
|
||||
%+ cork house-4 |= house-4 :: modern house with
|
||||
@ -27,6 +28,9 @@
|
||||
%+ cork house-5 |= house-5 :: modern house with
|
||||
+<(shells (~(run by shells) shell-4)) :: no settings
|
||||
++ house-5 ::
|
||||
%+ cork house-6 |= house-6 :: modern house with
|
||||
+<(shells (~(run by shells) shell-5)) :: auto-audience
|
||||
++ house-6 ::
|
||||
$: stories/(map knot story) :: conversations
|
||||
general/(set bone) :: meta-subscribe
|
||||
outbox/(pair @ud (map @ud thought)) :: urbit outbox
|
||||
@ -56,14 +60,20 @@
|
||||
man/knot :: mailbox
|
||||
count/@ud :: messages shown
|
||||
say/sole-share :: console state
|
||||
active/(unit (set partner)) :: active targets
|
||||
passive/(set partner) :: passive targets
|
||||
active/{$~ u/(set partner)} :: active targets
|
||||
$passive-deprecated :: passive targets
|
||||
owners/register :: presence mirror
|
||||
harbor/(map knot (pair posture cord)) :: stations mirror
|
||||
system/cabal :: config mirror
|
||||
settings/(set knot) :: frontend settings
|
||||
== ::
|
||||
++ shell-4 (cork shell |=(shell +<(|8 &9.+<))) :: missing settings
|
||||
++ shell-5 :: has passive
|
||||
%+ cork shell |= shell ::
|
||||
%= +< ::
|
||||
&6 passive=*(set partner) ::
|
||||
active *(unit (set partner)) ::
|
||||
== ::
|
||||
++ shell-4 (cork shell-5 |=(shell-5 +<(|8 &9.+<))):: missing settings
|
||||
++ river (pair point point) :: stream definition
|
||||
++ point :: stream endpoint
|
||||
$% {$ud p/@ud} :: by number
|
||||
@ -387,9 +397,7 @@
|
||||
%+ sh-fact %pro
|
||||
:+ & %talk-line
|
||||
^- tape
|
||||
=+ ^= rew ^- (pair (pair @t @t) (set partner))
|
||||
?~ active.she
|
||||
[['(' ')'] passive.she]
|
||||
=/ rew/(pair (pair @t @t) (set partner))
|
||||
[['[' ']'] u.active.she]
|
||||
=+ cha=(~(get by nik) q.rew)
|
||||
?^ cha ~[u.cha ' ']
|
||||
@ -400,9 +408,10 @@
|
||||
++ sh-pact :: update active aud
|
||||
|= lix/(set partner)
|
||||
^+ +>
|
||||
=+ act=?~(lix ~ `(sh-pare lix))
|
||||
?: =(active.she act) +>.$
|
||||
sh-prod(active.she act)
|
||||
=+ act=(sh-pare lix)
|
||||
?~ act ~|(%no-audience !!)
|
||||
?: =(active.she `act) +>.$
|
||||
sh-prod(active.she `act)
|
||||
::
|
||||
++ sh-pare :: adjust target list
|
||||
|= paz/(set partner)
|
||||
@ -439,7 +448,7 @@
|
||||
=+ sib=(~(get by ham.system.she) `station`p.tay)
|
||||
?. |(?=($~ sib) !?=($white p.cordon.u.sib))
|
||||
+>.$
|
||||
(sh-poss [tay ~ ~])
|
||||
(sh-pact [tay ~ ~])
|
||||
::
|
||||
++ sh-rend :: print on one line
|
||||
|= gam/telegram
|
||||
@ -1092,7 +1101,7 @@
|
||||
::
|
||||
++ bind :: %bind
|
||||
|= {cha/char pan/(unit (set partner))} ^+ ..sh-work
|
||||
?~ pan $(pan [~ ?~(active.she passive.she u.active.she)])
|
||||
?~ pan $(pan [~ u.active.she])
|
||||
=+ ole=(~(get by nik) u.pan)
|
||||
?: =(ole [~ cha]) ..sh-work
|
||||
(sh-note:(set-glyph cha u.pan) "bound {<cha>} {<u.pan>}")
|
||||
@ -1264,7 +1273,7 @@
|
||||
^+ +>
|
||||
?- -.act
|
||||
$det (sh-stir +.act)
|
||||
$clr (sh-pact ~)
|
||||
$clr ..sh-sole :: (sh-pact ~) :: XX clear to PM-to-self?
|
||||
$ret sh-done
|
||||
==
|
||||
::
|
||||
@ -1411,8 +1420,8 @@
|
||||
==
|
||||
=+ man=%posts
|
||||
?: (~(has by stories) man)
|
||||
(ra-consume-fora-post man pax sup hed txt)
|
||||
=; new (ra-consume-fora-post:new man pax sup hed txt)
|
||||
(ra-consume-fora-post man pax hed txt)
|
||||
=; new (ra-consume-fora-post:new man pax hed txt)
|
||||
=. ..ra-apply
|
||||
%+ ra-apply our.hid
|
||||
:+ %design man
|
||||
@ -1470,7 +1479,7 @@
|
||||
|= {man/knot pax/path sup/path txt/@t} ^+ +>
|
||||
=+ nam=?~(sup "" (trip i.sup)) :: file name
|
||||
=+ fra=(crip (time-to-id now.hid)) :: url fragment
|
||||
%^ ra-consume &
|
||||
%^ ra-consume |
|
||||
src.hid
|
||||
:* (shaf %comt eny.hid)
|
||||
`audience`[[`partner`[%& our.hid man] *envelope %pending] ~ ~]
|
||||
@ -1546,10 +1555,14 @@
|
||||
++ ra-console :: console subscribe
|
||||
|= {her/ship pax/path}
|
||||
^+ +>
|
||||
=+ man=`knot`?~(pax (main her) ?>(?=($~ t.pax) i.pax))
|
||||
=+ ^= she ^- shell
|
||||
[her man 0 *sole-share ~ [[%& our.hid man] ~ ~] [~ ~] ~ *cabal ~]
|
||||
sh-abet:~(sh-peer sh ~ she)
|
||||
=/ man/knot
|
||||
?+ pax !!
|
||||
$~ (main her)
|
||||
{@ta $~} i.pax
|
||||
==
|
||||
=/ she/shell
|
||||
%*(. *shell her her, man man, active `(sy [%& our.hid man] ~))
|
||||
sh-abet:~(sh-peer sh ~ `shell`she)
|
||||
::
|
||||
++ ra-subscribe :: listen to
|
||||
|= {her/ship pax/path}
|
||||
@ -2394,9 +2407,12 @@
|
||||
ra-abet:ra-init:ra
|
||||
|-
|
||||
?- -.u.old
|
||||
$5 [~ ..prep(+<+ u.old)]
|
||||
$6 [~ ..prep(+<+ u.old)]
|
||||
$5 =< ^$(-.u.old %6, shells.u.old (~(run by shells.u.old) .))
|
||||
|= shell-5 ^- shell
|
||||
+<(passive %passive-deprecated, active ?^(active active `passive))
|
||||
$4 =< ^$(-.u.old %5, shells.u.old (~(run by shells.u.old) .))
|
||||
|=(shell-4 `shell`+<(system [system settings=*(set knot)]))
|
||||
|=(shell-4 `shell-5`+<(system [system settings=*(set knot)]))
|
||||
$3 =< ^$(-.u.old %4, stories.u.old (~(run by stories.u.old) .))
|
||||
|=(story-3 `story`+<(cabalers [cabalers glyphers=*(set bone)]))
|
||||
==
|
||||
|
13
gen/hood/nuke.hoon
Normal file
13
gen/hood/nuke.hoon
Normal file
@ -0,0 +1,13 @@
|
||||
:: nuke: reject packets from.
|
||||
::
|
||||
:::: /hoon/mount/hood/gen
|
||||
::
|
||||
/? 310
|
||||
::
|
||||
::::
|
||||
!:
|
||||
:- %say
|
||||
|= $: {now/@da eny/@uvJ bec/beak}
|
||||
{{him/@p $~} $~}
|
||||
==
|
||||
[%helm-nuke him]
|
@ -30,6 +30,9 @@
|
||||
++ hood-init :: report init
|
||||
$: him/ship ::
|
||||
== ::
|
||||
++ hood-nuke :: block/unblock
|
||||
$: him/ship ::
|
||||
== ::
|
||||
++ hood-reset :: reset command
|
||||
$~ ::
|
||||
++ helm-verb :: reset command
|
||||
@ -87,6 +90,10 @@
|
||||
|= him/ship =< abet
|
||||
(emit %flog /helm %crud %hax-init leaf+(scow %p him) ~)
|
||||
::
|
||||
++ poke-nuke :: initialize
|
||||
|= him/ship =< abet
|
||||
(emit %nuke /helm him)
|
||||
::
|
||||
++ poke-mass
|
||||
|= $~ =< abet
|
||||
(emit %flog /heft %crud %hax-heft ~)
|
||||
@ -205,7 +212,7 @@
|
||||
|= {way/wire chr/@tD tan/tank} =< abet
|
||||
(emit %flog ~ %text chr ' ' ~(ram re tan))
|
||||
::
|
||||
++ take-woot :: result of %wont
|
||||
++ take-woot :: result of %want
|
||||
|= {way/wire her/ship cop/coop} =< abet
|
||||
(emit %flog ~ %text "woot: {<[way cop]>}")
|
||||
--
|
||||
|
@ -12,7 +12,7 @@
|
||||
::
|
||||
++ grow :: convert to
|
||||
|%
|
||||
++ mime [/application/json (as-octs:mimes txt)] :: convert to %mime
|
||||
++ mime [/application/json (as-octs:mimes txt)] :: convert to %mime
|
||||
++ txt (crip (en-json jon))
|
||||
--
|
||||
++ grab
|
||||
|
@ -87,6 +87,7 @@
|
||||
fat+(ot tor+tors taf+spec ~)
|
||||
ext+(ot nom+so txe+blob ~)
|
||||
non+ul
|
||||
mor+(ar spec)
|
||||
:: inv+(ot ship+(su fed:ag) party+(su urs:ab) ~)
|
||||
==
|
||||
++ tors
|
||||
@ -161,6 +162,10 @@
|
||||
$fat (jobe tor+(tors p.a) taf+$(a q.a) ~)
|
||||
$ext (jobe nom+[%s p.a] txe+(jape (sifo (jam +.a))) ~)
|
||||
$non ~
|
||||
$mor :- %a
|
||||
|- ^- (list json)
|
||||
?~ p.a ~
|
||||
[^$(a i.p.a) $(p.a t.p.a)]
|
||||
:: $inv (jobe ship+(jope p.a) party+[%s q.a] ~)
|
||||
==
|
||||
::
|
||||
|
@ -3,7 +3,7 @@
|
||||
::
|
||||
::
|
||||
/? 310
|
||||
/= tub /$ |=({bem/beam *} (flop s.bem))
|
||||
/= tub /$ |=({bem/beam *} (slag (lent /web) (flop s.bem)))
|
||||
/= aut
|
||||
/$ %+ cork fuel:html :: after parsing params,
|
||||
=, title
|
||||
@ -16,6 +16,8 @@
|
||||
|= gas/epic:eyre ^- {? ?} :: check if the query
|
||||
:- (~(has by qix.gas) 'dbg.nopack') :: dictates separate files
|
||||
(~(has by qix.gas) 'dbg.nomin') :: and/or unminified assets
|
||||
/= extras /: /===/ren/tree/head/extras :: additional scripts
|
||||
/^ (map knot cord) /_ /js/
|
||||
::
|
||||
|%
|
||||
++ cdnjs
|
||||
@ -46,6 +48,7 @@
|
||||
;script(type "text/javascript", src "{(cdnjs "react/0.14.6/react")}");
|
||||
;script(type "text/javascript", src "{(cdnjs "react/0.14.6/react-dom")}");
|
||||
;script(type "text/javascript", src "{(cdnjs "flux/2.1.1/Flux")}");
|
||||
;* (turn (~(tap by extras)) |=({@ a/@t} ;script(type "text/javascript"):"{(trip a)}"))
|
||||
:: ;script(type "text/javascript", src "//cdnjs.cloudflare.com/ajax/libs/codemirror/4.3.0/codemirror.js");
|
||||
:: ;script(type "text/javascript", src "//cdnjs.cloudflare.com/ajax/libs/".
|
||||
:: "codemirror/4.3.0/mode/markdown/markdown.min.js");
|
||||
|
@ -3,7 +3,7 @@
|
||||
:::: /hoon/tree/urb/ren
|
||||
::
|
||||
/? 310
|
||||
/= hed /# /% /: /===/ren /tree-head/ :: XX static
|
||||
/= hed /# /% /tree-head/
|
||||
/= bod /# /% /tree-body/
|
||||
^- {hed/{@uvH marl} bod/{@uvH marl}}
|
||||
[hed bod]
|
||||
|
2029
sys/vane/ames.hoon
2029
sys/vane/ames.hoon
File diff suppressed because it is too large
Load Diff
@ -390,7 +390,6 @@
|
||||
+>.$
|
||||
(dump:(crud %reap u.p.p.+>.sih) %logo ~)
|
||||
$diff pump:(from ((hard dill-blit) q:`vase`+>+>.sih))
|
||||
$doff !!
|
||||
==
|
||||
::
|
||||
{$c $note *}
|
||||
|
@ -13,7 +13,7 @@
|
||||
++ move {p/duct q/(wind note gift:able)} :: local move
|
||||
++ note :: out request $->
|
||||
$% $: $a :: to %ames
|
||||
$% {$wont p/sock q/{path *}} ::
|
||||
$% {$want p/sock q/{path *}} ::
|
||||
== == ::
|
||||
$: $b :: to %behn
|
||||
$% {$wait p/@da} ::
|
||||
@ -957,7 +957,6 @@
|
||||
?: ?=($le -.tee) (~(get-ack lens ~) ack)
|
||||
(get-ack:(ire-ix p.tee) q.tee ack)
|
||||
::
|
||||
$doff !!
|
||||
$diff
|
||||
?. ?=($json p.p.cuf)
|
||||
:: ~> %slog.`%*(. >[%backing p.p.cuf %q-p-cuf]< &3.+> (sell q.p.cuf))
|
||||
@ -1103,7 +1102,7 @@
|
||||
(pass-note tea [%e %meta :(slop !>(%them) !>(~) vax)])
|
||||
::
|
||||
++ ames-gram
|
||||
|=({him/ship gam/gram} (pass-note ~ %a %wont [our him] [%e -.gam] +.gam))
|
||||
|=({him/ship gam/gram} (pass-note ~ %a %want [our him] [%e -.gam] +.gam))
|
||||
::
|
||||
++ jael-note
|
||||
|=({tea/whir kyz/mini-jael-task} (pass-note tea %e %mini-jael-task kyz))
|
||||
|
@ -1,19 +1,20 @@
|
||||
:: :: %gall, agent execution
|
||||
!: :: %gall, agent execution
|
||||
!? 163
|
||||
::::
|
||||
|= pit/vase
|
||||
=> =~
|
||||
=, gall
|
||||
=> =~
|
||||
|% :::::::::::::::::::::::::::::::::::::::::::::::::::::: rest of arvo
|
||||
::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||
++ volt ?($low $high) :: voltage
|
||||
++ torc $@(?($ktbr $gold) {$ktwt p/ship}) :: security control
|
||||
++ torc $@(?($iron $gold) {$lead p/ship}) :: security control
|
||||
++ roon :: reverse ames msg
|
||||
$% {$d p/mark q/*} :: diff (diff)
|
||||
{$x $~} ::
|
||||
== ::
|
||||
++ rook :: forward ames msg
|
||||
$% {$m p/mark q/*} :: message
|
||||
{$l p/mark q/path} :: "peel" subscribe
|
||||
{$s p/path} :: subscribe
|
||||
{$u $~} :: cancel+unsubscribe
|
||||
== ::
|
||||
@ -21,23 +22,36 @@
|
||||
|% :::::::::::::::::::::::::::::::::::::::::::::::::::::: local arvo
|
||||
::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||
++ cote :: ++ap note
|
||||
$% {$meta p/@tas q/vase} ::
|
||||
{$send p/ship q/cush} ::
|
||||
$% {$meta p/@tas q/vase} ::
|
||||
{$send p/ship q/cush} ::
|
||||
{$hiss p/(unit knot) q/mark r/cage} ::
|
||||
== ::
|
||||
++ cove (pair bone (wind cote cuft)) :: internal move
|
||||
++ move {p/duct q/(wind note-arvo gift:able)} :: typed move
|
||||
++ move {p/duct q/(wind note-arvo gift-arvo)} :: typed move
|
||||
-- ::
|
||||
|% :::::::::::::::::::::::::::::::::::::::::::::::::::::: %gall state
|
||||
::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||
++ axle-n ?(axle axle-1) :: upgrade path
|
||||
++ axle-1 {$1 pol/(map ship mast-1)} ::
|
||||
++ axle-n ?(axle-1 axle-2 axle-3 axle-4) :: upgrade path
|
||||
++ axle-1 {$1 pol/(map ship mast-1)} ::
|
||||
++ mast-1 ::
|
||||
(cork mast |=(mast +<(bum (~(run by bum) seat-1)))) ::
|
||||
(cork mast-2 |=(mast-2 +<(bum (~(run by bum) seat-1)))) ::
|
||||
++ seat-1 ::
|
||||
(cork seat |=(seat +<+)) ::
|
||||
(cork seat-2 |=(seat-2 +<+)) ::
|
||||
++ axle-2 {$2 pol/(map ship mast-2)} ::
|
||||
++ mast-2 (cork mast-3 |=(mast-3 +<+)) ::
|
||||
++ seat-2 seat-3 ::
|
||||
++ axle-3 {$3 pol/(map ship mast-3)} ::
|
||||
++ mast-3 ::
|
||||
(cork mast-4 |=(mast-4 +<(bum (~(run by bum) seat-3)))) ::
|
||||
++ seat-3 ::
|
||||
(cork seat-4 |=(seat-4 +<+)) ::
|
||||
++ axle-4 axle ::
|
||||
++ mast-4 mast ::
|
||||
++ seat-4 seat ::
|
||||
:::::::::::::::::::::::::::::::::::::::::::::::::::::: state proper
|
||||
::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||
++ axle :: all state
|
||||
$: $2 :: state version
|
||||
$: $4 :: state version
|
||||
pol/(map ship mast) :: apps by ship
|
||||
== ::
|
||||
++ gest :: subscriber data
|
||||
@ -46,8 +60,9 @@
|
||||
qel/(map bone @ud) :: queue meter
|
||||
== ::
|
||||
++ mast :: ship state
|
||||
$: sys/duct :: system duct
|
||||
sap/(map ship scar) :: foreign contacts
|
||||
$: mak/* :: (deprecated)
|
||||
sys/duct :: system duct
|
||||
sap/(map ship scad) :: foreign contacts
|
||||
bum/(map dude seat) :: running agents
|
||||
wub/(map dude sofa) :: waiting queue
|
||||
== ::
|
||||
@ -56,14 +71,25 @@
|
||||
q/ship :: attributed to
|
||||
== ::
|
||||
++ prey (pair volt ffuc) :: privilege
|
||||
++ scad :: foreign connection
|
||||
$: p/@ud :: index
|
||||
q/(map duct @ud) :: by duct
|
||||
r/(map @ud duct) :: by index
|
||||
== ::
|
||||
++ scar :: opaque input
|
||||
$: p/@ud :: bone sequence
|
||||
q/(map duct bone) :: by duct
|
||||
r/(map bone duct) :: by bone
|
||||
== ::
|
||||
== ::
|
||||
:: ::
|
||||
:: XX a hack, required to break a subscription loop ::
|
||||
:: which arises when an invalid mark crashes a diff. ::
|
||||
:: See usage in ap-misvale. ::
|
||||
++ misvale-data (set wire) :: subscrs w/ bad marks
|
||||
++ seat :: agent state
|
||||
$: vel/worm :: cache
|
||||
mom/duct :: control duct
|
||||
$: misvale/misvale-data :: bad reqs
|
||||
vel/worm :: cache
|
||||
mom/duct :: control duct
|
||||
liv/? :: unstopped
|
||||
toc/torc :: privilege
|
||||
tyc/stic :: statistics
|
||||
@ -74,7 +100,7 @@
|
||||
zam/scar :: opaque ducts
|
||||
== ::
|
||||
++ sofa :: queue for blocked
|
||||
$: kys/(qeu (trel duct prey club)) :: queued tasks
|
||||
$: kys/(qeu (trel duct prey club)) :: queued kisses
|
||||
== ::
|
||||
++ stic :: statistics
|
||||
$: act/@ud :: change number
|
||||
@ -94,8 +120,8 @@
|
||||
|% :::::::::::::::::::::::::::::::::::::::::::::::::::::: state machine
|
||||
::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
||||
++ mo
|
||||
~% %gall-mo +> ~
|
||||
|_ $: $: our/@p
|
||||
~% %gall-mo +> ~
|
||||
|_ $: $: our/@p
|
||||
hen/duct
|
||||
moz/(list move)
|
||||
==
|
||||
@ -110,7 +136,7 @@
|
||||
+<+ (~(got by pol.all) our)
|
||||
==
|
||||
::
|
||||
++ mo-abet :: resolve to
|
||||
++ mo-abet :: resolve to
|
||||
^+ [*(list move) +>+]
|
||||
:_ +>+(pol.all (~(put by pol.all) our +<+))
|
||||
%- flop
|
||||
@ -197,8 +223,8 @@
|
||||
++ mo-bold :: wait for dep
|
||||
|= {byk/beak dap/dude dep/@uvH}
|
||||
^+ +>
|
||||
%+ mo-pass [%sys %dep (scot %p p.byk) q.byk dap ~]
|
||||
[%f %wasp our dep &]
|
||||
%+ mo-pass [%sys %dep (scot %p p.byk) q.byk dap ~]
|
||||
[%f %wasp our dep &]
|
||||
::
|
||||
++ mo-boot :: create ship
|
||||
|= {dap/dude how/?($new $old) byk/beak}
|
||||
@ -209,7 +235,7 @@
|
||||
[%f %exec our `[byk %core [byk [dap %app ~]]]]
|
||||
::
|
||||
++ mo-away :: foreign request
|
||||
|= {him/ship caz/cush} ::
|
||||
|= {him/ship caz/cush} ::
|
||||
^+ +>
|
||||
:: ~& [%mo-away him caz]
|
||||
?: ?=($pump -.q.caz)
|
||||
@ -221,24 +247,22 @@
|
||||
:: to this returning pump.
|
||||
::
|
||||
+>
|
||||
?: ?=($peer-not -.q.caz)
|
||||
:: short circuit error
|
||||
(mo-give %unto %reap (some p.q.caz))
|
||||
=^ num +>.$ (mo-bale him)
|
||||
=+ ^= roc ^- rook
|
||||
?- -.q.caz
|
||||
$peel !!
|
||||
$poke [%m p.p.q.caz q.q.p.q.caz]
|
||||
$pull [%u ~]
|
||||
$puff !!
|
||||
$punk !!
|
||||
$peel [%l p.q.caz q.q.caz]
|
||||
$peer [%s p.q.caz]
|
||||
==
|
||||
=+ ^= dak
|
||||
?+ -.q.caz !!
|
||||
$poke %k
|
||||
$pull %l
|
||||
$peer %r
|
||||
==
|
||||
%+ mo-pass
|
||||
[%sys %way ~]
|
||||
`note-arvo`[%a %wont [our him] [%g dak p.caz ~] [42 roc]]
|
||||
%+ mo-pass
|
||||
[%sys %way -.q.caz ~]
|
||||
`note-arvo`[%a %want [our him] [%g %ge p.caz ~] [num roc]]
|
||||
::
|
||||
++ mo-baal :: error convert a
|
||||
|= art/(unit ares)
|
||||
@ -252,16 +276,39 @@
|
||||
`[[%leaf (trip p.u.ars)] q.u.ars]
|
||||
::
|
||||
++ mo-awed :: foreign response
|
||||
|= {him/ship why/?($peer $poke $pull) art/(unit ares)}
|
||||
|= {him/ship why/?($peer $peel $poke $pull) art/(unit ares)}
|
||||
^+ +>
|
||||
:: ~& [%mo-awed him why art]
|
||||
=+ tug=(mo-baba (mo-baal art))
|
||||
?- why
|
||||
$peel (mo-give %unto %reap tug)
|
||||
$peer (mo-give %unto %reap tug)
|
||||
$poke (mo-give %unto %coup tug)
|
||||
$pull +>.$
|
||||
==
|
||||
::
|
||||
++ mo-bale :: assign outbone
|
||||
|= him/ship
|
||||
^- {@ud _+>}
|
||||
=+ sad=(fall (~(get by sap) him) `scad`[1 ~ ~])
|
||||
=+ nom=(~(get by q.sad) hen)
|
||||
?^ nom [u.nom +>.$]
|
||||
:- p.sad
|
||||
%_ +>.$
|
||||
sap
|
||||
%+ ~(put by sap) him
|
||||
%_ sad
|
||||
p +(p.sad)
|
||||
q (~(put by q.sad) hen p.sad)
|
||||
r (~(put by r.sad) p.sad hen)
|
||||
==
|
||||
==
|
||||
::
|
||||
++ mo-ball :: outbone by index
|
||||
|= {him/ship num/@ud}
|
||||
^- duct
|
||||
(~(got by r:(~(got by sap) him)) num)
|
||||
::
|
||||
++ mo-come :: handle locally
|
||||
|= {her/ship caz/cush}
|
||||
^+ +>
|
||||
@ -314,30 +361,40 @@
|
||||
==
|
||||
::
|
||||
$red :: diff ack
|
||||
?> ?=({@ @ $~} t.pax)
|
||||
?> ?=({$a ?($waft $woot) *} sih)
|
||||
?> ?=({@ @ @ $~} t.pax)
|
||||
?. ?=({$a $woot *} sih)
|
||||
~& [%red-went pax]
|
||||
+>.$
|
||||
=+ :* him=(slav %p i.t.pax)
|
||||
dap=i.t.t.pax
|
||||
num=(slav %ud i.t.t.t.pax)
|
||||
==
|
||||
=> .(pax `path`[%req t.pax])
|
||||
?- +<.sih
|
||||
$waft
|
||||
~& %red-waft
|
||||
=+ fay=((hard (unit (pair mark noun))) r.+>.sih)
|
||||
(mo-give %unto ?~(fay [%quit ~] [%doff u.fay]))
|
||||
::
|
||||
$woot
|
||||
?~ r.+>.sih
|
||||
(mo-pass [%sys pax] %g %deal [him our] dap %pump ~)
|
||||
~& [%diff-bad-ack q.+>.sih]
|
||||
=. +>.$ (mo-pass [%sys pax] %g %deal [him our] dap %pull ~)
|
||||
(mo-give %rend [%g %r dap ~] ~)
|
||||
?~ q.+>.sih
|
||||
(mo-pass [%sys pax] %g %deal [him our] dap %pump ~)
|
||||
~& [%diff-bad-ack q.+>.sih] :: should not happen
|
||||
=. +>.$ (mo-pass [%sys pax] %g %deal [him our] dap %pull ~)
|
||||
(mo-pass [%sys pax] %a %want [our him] [%g %gh dap ~] [num %x ~])
|
||||
::
|
||||
$rep :: reverse request
|
||||
?> ?=({@ @ @ $~} t.pax)
|
||||
?> ?=({$f $made *} sih)
|
||||
=+ :* him=(slav %p i.t.pax)
|
||||
dap=i.t.t.pax
|
||||
num=(slav %ud i.t.t.t.pax)
|
||||
==
|
||||
?- -.q.+>.sih
|
||||
$tabl ~|(%made-tabl !!)
|
||||
$| (mo-give %mack `p.q.+>.sih) :: XX should crash
|
||||
$& =. +>.$ (mo-give %mack ~) :: XX pump should ack
|
||||
(mo-give(hen (mo-ball him num)) %unto %diff `cage`p.q.+>.sih)
|
||||
==
|
||||
::
|
||||
$req :: inbound request
|
||||
?> ?=({@ @ $~} t.pax)
|
||||
?> ?=({@ @ @ $~} t.pax)
|
||||
=+ :* him=(slav %p i.t.pax)
|
||||
dap=i.t.t.pax
|
||||
num=(slav %ud i.t.t.t.pax)
|
||||
==
|
||||
?: ?=({$f $made *} sih)
|
||||
?- -.q.+>.sih
|
||||
@ -350,10 +407,12 @@
|
||||
=+ cuf=`cuft`+>.sih
|
||||
?- -.cuf
|
||||
$coup (mo-give %mack p.cuf)
|
||||
$diff %+ mo-pass [%sys %red t.pax]
|
||||
[%a %want [our him] [%g %gh dap ~] [num %d p.p.cuf q.q.p.cuf]]
|
||||
$doff !! :: XX
|
||||
$quit %+ mo-pass [%sys pax]
|
||||
[%a %want [our him] [%g %gh dap ~] [num %x ~]]
|
||||
$reap (mo-give %mack p.cuf)
|
||||
$diff (mo-give %rend [%g %r dap ~] [~ p.p.cuf q.q.p.cuf])
|
||||
$doff (mo-give %rend [%g %r dap ~] [~ p.cuf q.cuf])
|
||||
$quit (mo-give %rend [%g %r dap ~] ~)
|
||||
==
|
||||
::
|
||||
$val :: inbound validate
|
||||
@ -367,24 +426,12 @@
|
||||
==
|
||||
::
|
||||
$way :: outbound request
|
||||
?> ?=({$a ?($waft $woot) *} sih)
|
||||
?- +<.sih
|
||||
$waft
|
||||
?> ?=({$g $r @ $~} q.+>.sih)
|
||||
=+ fay=((hard (unit (pair mark noun))) r.+>.sih)
|
||||
(mo-give %unto ?~(fay [%quit ~] [%doff u.fay]))
|
||||
::
|
||||
$woot
|
||||
?> ?=({$g @ @ $~} q.+>.sih)
|
||||
%- mo-awed
|
||||
:* p.+>.sih
|
||||
?+ i.t.q.+>.sih !!
|
||||
$k %poke
|
||||
$r %peer
|
||||
$l %pull
|
||||
==
|
||||
r.+>.sih
|
||||
==
|
||||
?> ?=({$a $woot *} sih)
|
||||
?> ?=({@ $~} t.pax)
|
||||
%- mo-awed
|
||||
:* `ship`p.+>.sih
|
||||
;;(?($peer $peel $poke $pull) i.t.pax)
|
||||
+>+.sih
|
||||
==
|
||||
==
|
||||
::
|
||||
@ -396,47 +443,20 @@
|
||||
!!
|
||||
=+ dap=`@tas`i.pax
|
||||
=+ pry=`prey`[%high [~ (slav %p i.t.pax)]]
|
||||
=+ pap=(ap-abed:ap dap pry)
|
||||
=+ pap=(ap-abed:ap dap pry)
|
||||
=+ vax=(slot 3 `vase`hin)
|
||||
?- i.t.t.pax
|
||||
$inn ap-abet:(ap-pour:pap t.t.t.pax (slot 3 `vase`hin))
|
||||
$inn ap-abet:(ap-pour:pap t.t.t.pax (slot 3 `vase`hin))
|
||||
$cay ?. ?=({$e $sigh *} q.hin)
|
||||
~& [%mo-cook-weird q.hin]
|
||||
~& [%mo-cook-weird-path pax]
|
||||
+>.$
|
||||
ap-abet:(ap-purr:pap +<.q.hin t.t.t.pax +>.q.hin)
|
||||
::
|
||||
$out ?: ?=({$f $made *} q.hin)
|
||||
?- -.q.+>.q.hin
|
||||
$tabl ~|(%made-tabl !!)
|
||||
$& ap-abet:(ap-pout:pap t.t.t.pax %diff +.q.+>.q.hin)
|
||||
$|
|
||||
=+ why=p.q.+>.q.hin
|
||||
=. why (turn why |=(a/tank rose+[~ "! " ~]^[a]~))
|
||||
~> %slog.`rose+[" " "[" "]"]^[>%mo-cook-fail< (flop why)]
|
||||
~& [him=q.q.pry our=our pax=pax]
|
||||
::
|
||||
:: here we should crash because the right thing
|
||||
:: for the client to do is to upgrade so that it
|
||||
:: understands the server's mark, thus allowing
|
||||
:: the message to proceed. but ames is not quite
|
||||
:: ready for promiscuous crashes, so instead we
|
||||
:: send a pull outward and a quit downward.
|
||||
:: or not... outgoing dap (XXX) is not in the path.
|
||||
:: =. +>.$ ap-abet:(ap-pout:pap t.t.t.pax %quit ~)
|
||||
:: %+ mo-pass
|
||||
:: [%use pax]
|
||||
:: [%g %deal [q.q.pry our] XXX %pull ~]
|
||||
!!
|
||||
==
|
||||
?. ?=({$g $unto *} q.hin)
|
||||
$out ?. ?=({$g $unto *} q.hin)
|
||||
~& [%mo-cook-weird q.hin]
|
||||
~& [%mo-cook-weird-path pax]
|
||||
+>.$
|
||||
?: ?=($doff +>-.q.hin)
|
||||
%+ mo-pass
|
||||
[%use pax]
|
||||
[%f %exec our ~ byk.pap %vale +.p.q.hin]
|
||||
ap-abet:(ap-pout:pap t.t.t.pax +>.q.hin)
|
||||
==
|
||||
::
|
||||
@ -474,6 +494,8 @@
|
||||
%+ mo-pass
|
||||
[%sys %val (scot %p q.q.pry) dap ~]
|
||||
[%f %exec our ~ (mo-beak dap) %cast p.cub %$ q.cub]
|
||||
?: ?=($peer-not -.cub)
|
||||
(mo-give %unto %reap (some p.cub))
|
||||
ap-abet:(ap-club:(ap-abed:ap dap pry) cub)
|
||||
::
|
||||
++ mo-club :: local action
|
||||
@ -488,25 +510,29 @@
|
||||
::
|
||||
++ mo-gawk :: ames forward
|
||||
|= {him/@p dap/dude num/@ud rok/rook}
|
||||
=? +> ?=($u -.rok) (mo-give %mack ~)
|
||||
%+ mo-pass
|
||||
[%sys %req (scot %p him) dap ~]
|
||||
=. +> ?.(?=($u -.rok) +> (mo-give %mack ~))
|
||||
%+ mo-pass
|
||||
[%sys %req (scot %p him) dap (scot %ud num) ~]
|
||||
^- note-arvo
|
||||
?- -.rok
|
||||
:: %m [%f %exec our ~ (mo-beak dap) %vale p.rok q.rok]
|
||||
$m [%g %deal [him our] dap %puff p.rok q.rok]
|
||||
$l [%g %deal [him our] dap %peel p.rok q.rok]
|
||||
$s [%g %deal [him our] dap %peer p.rok]
|
||||
$u [%g %deal [him our] dap %pull ~]
|
||||
==
|
||||
::
|
||||
++ mo-gawp :: response ack
|
||||
|= {him/@p dap/dude cop/coop}
|
||||
^+ +>
|
||||
%+ mo-pass
|
||||
[%sys %req (scot %p him) dap ~]
|
||||
?~ cop
|
||||
[%g %deal [him our] dap %pump ~]
|
||||
[%g %deal [him our] dap %pull ~]
|
||||
++ mo-gawd :: ames backward
|
||||
|= {him/@p dap/dude num/@ud ron/roon}
|
||||
?- -.ron
|
||||
$d
|
||||
%+ mo-pass
|
||||
[%sys %rep (scot %p him) dap (scot %ud num) ~]
|
||||
[%f %exec our ~ (mo-beak dap) %vale p.ron q.ron]
|
||||
::
|
||||
$x =. +> (mo-give %mack ~) :: XX should crash
|
||||
(mo-give(hen (mo-ball him num)) %unto %quit ~)
|
||||
==
|
||||
::
|
||||
++ ap :: agent engine
|
||||
~% %gall-ap +> ~
|
||||
@ -543,7 +569,7 @@
|
||||
++ ap-abet :: resolve
|
||||
^+ +>
|
||||
=> ap-abut
|
||||
%_ +>
|
||||
%_ +>
|
||||
bum (~(put by bum) dap +<+)
|
||||
moz :(weld (turn zip ap-aver) (turn dub ap-avid) moz)
|
||||
==
|
||||
@ -567,11 +593,11 @@
|
||||
::
|
||||
++ ap-aver :: cove to move
|
||||
|= cov/cove
|
||||
^- move
|
||||
^- move
|
||||
:- (~(got by r.zam) p.cov)
|
||||
?- -.q.cov
|
||||
$slip !!
|
||||
$give
|
||||
?($slip $sick) !!
|
||||
$give
|
||||
?< =(0 p.cov)
|
||||
?. ?=($diff -.p.q.cov)
|
||||
[%give %unto p.q.cov]
|
||||
@ -598,12 +624,12 @@
|
||||
~/ %ap-call
|
||||
|= {cog/term arg/vase}
|
||||
^- {(unit tang) _+>}
|
||||
=. +> ap-bowl
|
||||
=. +> ap-bowl
|
||||
=^ arm +>.$ (ap-farm cog)
|
||||
?: ?=($| -.arm) [`p.arm +>.$]
|
||||
=^ zem +>.$ (ap-slam cog p.arm arg)
|
||||
?: ?=($| -.zem) [`p.zem +>.$]
|
||||
(ap-sake p.zem)
|
||||
(ap-sake p.zem)
|
||||
::
|
||||
++ ap-peek
|
||||
|= {ren/@tas tyl/path}
|
||||
@ -616,10 +642,9 @@
|
||||
=+ cug=(ap-find %peek ren tyl)
|
||||
?~ cug
|
||||
((slog leaf+"peek find fail" >tyl< >mar< ~) [~ ~])
|
||||
=. ..ap-bowl ap-bowl
|
||||
=^ arm +>.$ (ap-farm q.u.cug)
|
||||
?: ?=($| -.arm) ((slog leaf+"peek farm fail" p.arm) [~ ~])
|
||||
=^ zem +>.$ (ap-slam q.u.cug p.arm !>((slag p.u.cug `path`[ren tyl])))
|
||||
=^ zem +>.$ (ap-slam q.u.cug p.arm !>((slag p.u.cug `path`[ren tyl])))
|
||||
?: ?=($| -.zem) ((slog leaf+"peek slam fail" p.zem) [~ ~])
|
||||
?+ q.p.zem ((slog leaf+"peek bad result" ~) [~ ~])
|
||||
$~ ~
|
||||
@ -642,13 +667,14 @@
|
||||
$peer (ap-peer +.cub)
|
||||
$puff !!
|
||||
$punk !!
|
||||
$peer-not !!
|
||||
$pull ap-pull
|
||||
$pump ap-fall
|
||||
==
|
||||
::
|
||||
++ ap-diff :: pour a diff
|
||||
|= {her/ship pax/path cag/cage}
|
||||
=. q.cag (spec q.cag)
|
||||
:: =. q.cag (spec q.cag)
|
||||
=+ cug=(ap-find [%diff p.cag +.pax])
|
||||
?~ cug
|
||||
%. [| her +.pax]
|
||||
@ -659,7 +685,7 @@
|
||||
[!>(`path`+.pax) !>(cag)]
|
||||
[!>((slag (dec p.u.cug) `path`+.pax)) q.cag]
|
||||
=^ cam +>.$ (ap-call q.u.cug arg)
|
||||
?^ cam
|
||||
?^ cam
|
||||
(ap-pump:(ap-lame q.u.cug u.cam) | her pax)
|
||||
(ap-pump & her pax)
|
||||
::
|
||||
@ -674,12 +700,12 @@
|
||||
^+ .
|
||||
?. (~(has by sup.ged) ost) .
|
||||
=+ soy=(~(get by qel.ged) ost)
|
||||
?: |(?=($~ soy) =(0 u.soy))
|
||||
?: |(?=($~ soy) =(0 u.soy))
|
||||
:: ~& [%ap-fill-under [our dap] q.q.pry ost]
|
||||
+
|
||||
=. u.soy (dec u.soy)
|
||||
:: ~& [%ap-fill-sub [[our dap] q.q.pry ost] u.soy]
|
||||
?: =(0 u.soy)
|
||||
?: =(0 u.soy)
|
||||
+(qel.ged (~(del by qel.ged) ost))
|
||||
+(qel.ged (~(put by qel.ged) ost u.soy))
|
||||
::
|
||||
@ -688,7 +714,7 @@
|
||||
|= cog/term
|
||||
^- {(each vase tang) _+>}
|
||||
=+ pyz=(mule |.((~(mint wa vel) p.hav [%limb cog])))
|
||||
?: ?=($| -.pyz)
|
||||
?: ?=($| -.pyz)
|
||||
:_(+>.$ [%| +.pyz])
|
||||
:_ +>.$(vel `worm`+>.pyz)
|
||||
=+ ton=(mock [q.hav q.+<.pyz] ap-sled)
|
||||
@ -712,7 +738,7 @@
|
||||
=+ dep=0
|
||||
|- ^- (unit (pair @ud term))
|
||||
=+ ^= spu
|
||||
?~ pax ~
|
||||
?~ pax ~
|
||||
$(pax t.pax, dep +(dep), cog (ap-hype cog i.pax))
|
||||
?^ spu spu
|
||||
?.((ap-fond cog) ~ `[dep cog])
|
||||
@ -757,11 +783,11 @@
|
||||
?^ -.q.vax :_(+>.$ [%| (ap-suck "move: invalid move (bone)")])
|
||||
?@ +.q.vax :_(+>.$ [%| (ap-suck "move: invalid move (card)")])
|
||||
=+ hun=(~(get by r.zam) -.q.vax)
|
||||
?. (~(has by r.zam) -.q.vax)
|
||||
?. (~(has by r.zam) -.q.vax)
|
||||
:_(+>.$ [%| (ap-suck "move: invalid card (bone {<-.q.vax>})")])
|
||||
=^ pec vel (~(spot wa vel) 3 vax)
|
||||
=^ cav vel (~(slot wa vel) 3 pec)
|
||||
?+ +<.q.vax
|
||||
?+ +<.q.vax
|
||||
(ap-move-pass -.q.vax +<.q.vax cav)
|
||||
$diff (ap-move-diff -.q.vax cav)
|
||||
$hiss (ap-move-hiss -.q.vax cav)
|
||||
@ -825,7 +851,7 @@
|
||||
[%| (ap-suck "mess: malformed path")]
|
||||
[%& [(scot %p q.q.vax) %out r.q.vax u.pux] q.q.vax r.q.vax]
|
||||
::
|
||||
++ ap-move-pass :: pass general move
|
||||
++ ap-move-pass :: pass general move
|
||||
|= {sto/bone wut/* vax/vase}
|
||||
^- {(each cove tang) _+>}
|
||||
?. &(?=(@ wut) ((sane %tas) wut))
|
||||
@ -867,6 +893,11 @@
|
||||
=+ pux=((soft path) +>+.q.vax)
|
||||
?. &(?=(^ pux) (levy u.pux (sane %ta)))
|
||||
[%| (ap-suck "peel: malformed path")]
|
||||
?: (~(has in misvale) p.p.yep)
|
||||
=/ err [leaf+"peel: misvalidation encountered"]~
|
||||
:^ %& sto %pass
|
||||
:- p.p.yep
|
||||
[%send q.p.yep r.p.yep %peer-not err]
|
||||
:^ %& sto %pass
|
||||
:- p.p.yep
|
||||
[%send q.p.yep r.p.yep %peel u.mar u.pux]
|
||||
@ -880,6 +911,11 @@
|
||||
=+ pux=((soft path) +>.q.vax)
|
||||
?. &(?=(^ pux) (levy u.pux (sane %ta)))
|
||||
[%| (ap-suck "peer: malformed path")]
|
||||
?: (~(has in misvale) p.p.yep)
|
||||
=/ err [leaf+"peer: misvalidation encountered"]~
|
||||
:^ %& sto %pass
|
||||
:- p.p.yep
|
||||
[%send q.p.yep r.p.yep %peer-not err]
|
||||
:^ %& sto %pass
|
||||
:- p.p.yep
|
||||
[%send q.p.yep r.p.yep %peer u.pux]
|
||||
@ -952,23 +988,17 @@
|
||||
++ ap-peer :: apply %peer
|
||||
|= pax/path
|
||||
^+ +>
|
||||
=. +> (ap-peon pax)
|
||||
=. sup.ged (~(put by sup.ged) ost [q.q.pry pax])
|
||||
=+ cug=(ap-find %peer pax)
|
||||
?~ cug +>.$
|
||||
=+ old=zip
|
||||
=. zip ~
|
||||
=^ cam +>.$
|
||||
=^ cam +>.$
|
||||
%+ ap-call q.u.cug
|
||||
!>(`path`(slag p.u.cug pax))
|
||||
=. zip (weld zip `(list cove)`[[ost %give %reap cam] old])
|
||||
?^(cam ap-pule +>.$)
|
||||
::
|
||||
++ ap-peon :: add subscriber
|
||||
|= pax/path
|
||||
%_ +>.$
|
||||
sup.ged (~(put by sup.ged) ost [q.q.pry pax])
|
||||
==
|
||||
::
|
||||
++ ap-poke :: apply %poke
|
||||
|= cag/cage
|
||||
^+ +>
|
||||
@ -999,6 +1029,11 @@
|
||||
+>.$
|
||||
+>.$
|
||||
::
|
||||
++ ap-misvale :: broken vale
|
||||
|= wir/wire
|
||||
~& [%ap-blocking-misvale wir]
|
||||
+>(misvale (~(put in misvale) wir))
|
||||
::
|
||||
++ ap-pour :: generic take
|
||||
|= {pax/path vax/vase}
|
||||
^+ +>
|
||||
@ -1050,6 +1085,10 @@
|
||||
=^ gac +>.$ (ap-prop vux)
|
||||
:- gac
|
||||
%= +>.$
|
||||
misvale
|
||||
~? !=(misvale *misvale-data) misvale-drop+misvale
|
||||
*misvale-data :: new app might mean new marks
|
||||
::
|
||||
dub
|
||||
:_(dub ?~(gac [%& dap ?~(vux %boot %bump) now] [%| u.gac]))
|
||||
==
|
||||
@ -1057,7 +1096,7 @@
|
||||
++ ap-prop :: install
|
||||
|= vux/(unit vase)
|
||||
^- {(unit tang) _+>}
|
||||
?. (ap-fond %prep)
|
||||
?. (ap-fond %prep)
|
||||
?~ vux
|
||||
`+>.$
|
||||
=+ [new=p:(slot 13 hav) old=p:(slot 13 u.vux)]
|
||||
@ -1067,8 +1106,8 @@
|
||||
=^ tur +>.$
|
||||
%+ ap-call %prep
|
||||
?~(vux !>(~) (slop !>(~) (slot 13 u.vux)))
|
||||
?~ tur
|
||||
`+>.$
|
||||
?~ tur
|
||||
`+>.$
|
||||
:_(+>.$ `u.tur)
|
||||
::
|
||||
++ ap-pule :: silent delete
|
||||
@ -1087,7 +1126,7 @@
|
||||
==
|
||||
=+ cug=(ap-find %pull q.u.wim)
|
||||
?~ cug +>
|
||||
=^ cam +>
|
||||
=^ cam +>
|
||||
%+ ap-call q.u.cug
|
||||
!>((slag p.u.cug q.u.wim))
|
||||
?^ cam (ap-lame q.u.cug u.cam)
|
||||
@ -1104,7 +1143,7 @@
|
||||
?~ cug
|
||||
:: ~& [%ap-take-none cog pax]
|
||||
+>.$
|
||||
=^ cam +>.$
|
||||
=^ cam +>.$
|
||||
%+ ap-call q.u.cug
|
||||
=+ den=!>((slag p.u.cug pax))
|
||||
?~(vux den (slop den u.vux))
|
||||
@ -1139,7 +1178,7 @@
|
||||
:- ~
|
||||
%_ +>.$
|
||||
zip (weld (flop p.muz) zip)
|
||||
hav p.sav
|
||||
hav p.sav
|
||||
==
|
||||
::
|
||||
++ ap-save :: verify core
|
||||
@ -1177,7 +1216,7 @@
|
||||
[%leaf (weld "gall: {<dap>}: " msg)]~
|
||||
::
|
||||
++ ap-term :: atomic vase
|
||||
|= {a/@tas b/@}
|
||||
|= {a/@tas b/@}
|
||||
^- vase
|
||||
[[%atom a `b] b]
|
||||
::
|
||||
@ -1191,21 +1230,18 @@
|
||||
$deal `%g
|
||||
$exec `%f
|
||||
$flog `%d
|
||||
$funk `%a
|
||||
$drop `%c
|
||||
$info `%c
|
||||
$merg `%c
|
||||
$mont `%c
|
||||
$dirk `%c
|
||||
$nuke `%a
|
||||
$ogre `%c
|
||||
$serv `%e
|
||||
$them `%e
|
||||
$wait `%b
|
||||
$want `%a
|
||||
$wont `%a :: XX for begin; remove
|
||||
$warp `%c
|
||||
$wipe `%f :: XX cache clear
|
||||
$jaelwomb `%j :: XX name/unpack
|
||||
==
|
||||
--
|
||||
--
|
||||
@ -1228,45 +1264,40 @@
|
||||
(mo-away:(mo-abed:mo p.p.q.hic hen) q.p.q.hic q.q.hic)
|
||||
(mo-come:(mo-abed:mo q.p.q.hic hen) p.p.q.hic q.q.hic)
|
||||
::
|
||||
$init
|
||||
$init
|
||||
:: ~& [%gall-init p.q.hic]
|
||||
[~ ..^$(pol.all (~(put by pol.all) p.q.hic [hen ~ ~ ~]))]
|
||||
::
|
||||
$went
|
||||
?. (~(has by pol.all) p.p.q.hic)
|
||||
~& [%gall-not-ours p.q.hic]
|
||||
[~ ..^$]
|
||||
?> ?=({?($k $l $r) @ $~} q.q.hic)
|
||||
=+ dap=i.t.q.q.hic
|
||||
=+ our=p.p.q.hic
|
||||
=+ him=q.p.q.hic
|
||||
=< mo-abet
|
||||
(mo-gawp:(mo-abed:mo our hen) him dap s.q.hic)
|
||||
[~ ..^$(pol.all (~(put by pol.all) p.q.hic %*(. *mast sys hen)))]
|
||||
::
|
||||
$west
|
||||
?. (~(has by pol.all) p.p.q.hic)
|
||||
~& [%gall-not-ours p.q.hic]
|
||||
[~ ..^$]
|
||||
?> ?=({?($k $l $r) @ $~} q.q.hic)
|
||||
?> ?=({?($ge $gh) @ $~} q.q.hic)
|
||||
=+ dap=i.t.q.q.hic
|
||||
=+ our=p.p.q.hic
|
||||
=+ him=q.p.q.hic
|
||||
=+ mes=((hard {@ud rook}) s.q.hic)
|
||||
?: ?=($ge i.q.q.hic)
|
||||
=+ mes=((hard {@ud rook}) r.q.hic)
|
||||
=< mo-abet
|
||||
(mo-gawk:(mo-abed:mo our hen) him dap mes)
|
||||
=+ mes=((hard {@ud roon}) r.q.hic)
|
||||
=< mo-abet
|
||||
(mo-gawk:(mo-abed:mo our hen) him dap mes)
|
||||
(mo-gawd:(mo-abed:mo our hen) him dap mes)
|
||||
::
|
||||
$wegh
|
||||
:_ ..^$ :_ ~
|
||||
:^ hen %give %mass
|
||||
:- %gall
|
||||
:- %|
|
||||
%+ turn ~(tap by pol.all) :: XX single-home
|
||||
%+ turn ~(tap by pol.all) :: XX single-home
|
||||
|= {our/@ mast} ^- mass
|
||||
:+ (scot %p our) %|
|
||||
:~ [%foreign [%& sap]]
|
||||
[%blocked [%| (sort ~(tap by (~(run by wub) |=(sofa [%& +<]))) aor)]]
|
||||
[%active [%| (sort ~(tap by (~(run by bum) |=(seat [%& +<]))) aor)]]
|
||||
==
|
||||
::
|
||||
$went !! :: XX fixme
|
||||
==
|
||||
::
|
||||
++ doze :: sleep until
|
||||
@ -1277,18 +1308,35 @@
|
||||
++ load :: recreate vane
|
||||
|= old/axle-n
|
||||
^+ ..^$
|
||||
?: ?=($2 -.old) ..^$(all old)
|
||||
%= $
|
||||
old => |=(seat-1 `seat`[*worm +<])
|
||||
=> |=(mast-1 +<(bum (~(run by bum) +>)))
|
||||
old(- %2, pol (~(run by pol.old) .))
|
||||
?- -.old
|
||||
$4 ..^$(all old)
|
||||
$3
|
||||
%= $
|
||||
old ^- axle-4
|
||||
=> |=(seat-3 `seat-4`[*misvale-data +<])
|
||||
=> |=(mast-3 +<(bum (~(run by bum) +>)))
|
||||
old(- %4, pol (~(run by pol.old) .))
|
||||
==
|
||||
::
|
||||
$2
|
||||
%= $
|
||||
old ^- axle-3
|
||||
=> |=(mast-2 [*(unit duct) +<])
|
||||
old(- %3, pol (~(run by pol.old) .))
|
||||
==
|
||||
::
|
||||
$1
|
||||
%= $
|
||||
old ^- axle-2
|
||||
=> |=(seat-1 `seat-2`[*worm +<])
|
||||
=> |=(mast-1 +<(bum (~(run by bum) +>)))
|
||||
old(- %2, pol (~(run by pol.old) .))
|
||||
==
|
||||
==
|
||||
::
|
||||
++ scry
|
||||
|= {fur/(unit (set monk)) ren/@tas why/shop syd/desk lot/coin tyl/path}
|
||||
|= {fur/(unit (set monk)) ren/@tas who/ship syd/desk lot/coin tyl/path}
|
||||
^- (unit (unit cage))
|
||||
?. ?=($& -.why) ~
|
||||
=* who p.why
|
||||
?: ?& =(%u ren)
|
||||
=(~ tyl)
|
||||
=([%$ %da now] lot)
|
||||
@ -1313,138 +1361,11 @@
|
||||
|= {tea/wire hen/duct hin/(hypo sign-arvo)}
|
||||
^+ [p=*(list move) q=..^$]
|
||||
~| [%gall-take tea]
|
||||
?> ?=({@ ?($sys $use) *} tea)
|
||||
?> ?=({@ ?($sys $use) *} tea)
|
||||
=+ our=(need (slaw %p i.tea))
|
||||
=+ mow=(mo-abed:mo our hen)
|
||||
?: ?=($sys i.t.tea)
|
||||
mo-abet:(mo-cyst:mow t.t.tea q.hin)
|
||||
?> ?=($use i.t.tea)
|
||||
mo-abet:(mo-cook:mow t.t.tea hin)
|
||||
::
|
||||
++ neon !:
|
||||
|= our/ship
|
||||
^- (vane task:able gift:able sign-arvo note-arvo axle axle)
|
||||
=| axle
|
||||
=* lex -
|
||||
|%
|
||||
++ load |=(axle +>)
|
||||
++ stay `axle`+<
|
||||
++ plow
|
||||
=| $: now/@da
|
||||
eny/@e
|
||||
sky/roof
|
||||
==
|
||||
|%
|
||||
++ doze ~
|
||||
++ peek
|
||||
|= $: lyc/(unit (set ship))
|
||||
car/term
|
||||
bem/beam
|
||||
==
|
||||
^- (unit (unit (cask vase)))
|
||||
=* who p.bem
|
||||
?: ?& =(%u car)
|
||||
=(~ s.bem)
|
||||
=([%da now] r.bem)
|
||||
(~(has by pol.all) who)
|
||||
(~(has by bum:(~(got by pol.all) who)) q.bem)
|
||||
==
|
||||
``[%null !>(~)]
|
||||
?. (~(has by pol.all) who)
|
||||
~
|
||||
?. =([%da now] r.bem)
|
||||
~
|
||||
?. (~(has by bum:(~(got by pol.all) who)) q.bem)
|
||||
[~ ~]
|
||||
?. ?=(^ s.bem)
|
||||
~
|
||||
(mo-peek:(mo-abed:mo who *duct) q.bem high+`who car s.bem)
|
||||
::
|
||||
++ spin
|
||||
=| $: hen/duct
|
||||
moz/(list (pair duct (wind note-arvo gift:able)))
|
||||
==
|
||||
|%
|
||||
++ call
|
||||
|= tac/task:able
|
||||
^+ +>
|
||||
=^ vam ..^^$
|
||||
^+ [p=*(list move) q=..^^$]
|
||||
?- -.tac
|
||||
$conf
|
||||
?. (~(has by pol.all) p.p.tac)
|
||||
~& [%gall-not-ours p.p.tac]
|
||||
[~ ..^^$]
|
||||
mo-abet:(mo-conf:(mo-abed:mo p.p.tac hen) q.p.tac q.tac)
|
||||
::
|
||||
$deal
|
||||
=< mo-abet
|
||||
?. (~(has by pol.all) q.p.tac) :: either to us
|
||||
?> (~(has by pol.all) p.p.tac) :: or from us
|
||||
(mo-away:(mo-abed:mo p.p.tac hen) q.p.tac q.tac)
|
||||
(mo-come:(mo-abed:mo q.p.tac hen) p.p.tac q.tac)
|
||||
::
|
||||
$init
|
||||
:: ~& [%gall-init p.tac]
|
||||
[~ ..^^$(pol.all (~(put by pol.all) p.tac [hen ~ ~ ~]))]
|
||||
::
|
||||
$went
|
||||
?. (~(has by pol.all) p.p.tac)
|
||||
~& [%gall-not-ours p.tac]
|
||||
[~ ..^^$]
|
||||
?> ?=({?($k $l $r) @ $~} q.tac)
|
||||
=+ dap=i.t.q.tac
|
||||
=+ our=p.p.tac
|
||||
=+ him=q.p.tac
|
||||
=< mo-abet
|
||||
(mo-gawp:(mo-abed:mo our hen) him dap s.tac)
|
||||
::
|
||||
$west
|
||||
?. (~(has by pol.all) p.p.tac)
|
||||
~& [%gall-not-ours p.tac]
|
||||
[~ ..^^$]
|
||||
?> ?=({?($k $l $r) @ $~} q.tac)
|
||||
=+ dap=i.t.q.tac
|
||||
=+ our=p.p.tac
|
||||
=+ him=q.p.tac
|
||||
=+ mes=((hard {@ud rook}) s.tac)
|
||||
=< mo-abet
|
||||
(mo-gawk:(mo-abed:mo our hen) him dap mes)
|
||||
::
|
||||
$wegh
|
||||
:_ ..^^$ :_ ~
|
||||
:^ hen %give %mass
|
||||
:- %gall
|
||||
:- %|
|
||||
%+ turn ~(tap by pol.all) :: XX single-home
|
||||
|= {our/@ mast} ^- mass
|
||||
:+ (scot %p our) %|
|
||||
:~ :- %foreign
|
||||
[%& sap]
|
||||
:- %blocked
|
||||
[%| (sort ~(tap by (~(run by wub) |=(sofa [%& +<]))) aor)]
|
||||
:- %active
|
||||
[%| (sort ~(tap by (~(run by bum) |=(seat [%& +<]))) aor)]
|
||||
==
|
||||
==
|
||||
+>.$(moz (weld `(list move)`vam moz))
|
||||
::
|
||||
++ take
|
||||
|= {tea/wire hin/sign-arvo}
|
||||
^+ +>
|
||||
=^ vam ..^^$
|
||||
^+ [p=*(list move) q=..^^$]
|
||||
~| [%gall-take tea]
|
||||
?> ?=({@ ?($sys $use) *} tea)
|
||||
=+ our=(need (slaw %p i.tea))
|
||||
=+ mow=(mo-abed:mo our hen)
|
||||
?: ?=($sys i.t.tea)
|
||||
mo-abet:(mo-cyst:mow t.t.tea hin)
|
||||
?> ?=($use i.t.tea)
|
||||
=+ vax=!>(hin)
|
||||
mo-abet:(mo-cook:mow t.t.tea -.vax hin)
|
||||
+>.$(moz (weld `(list move)`vam moz))
|
||||
--
|
||||
--
|
||||
--
|
||||
?- i.t.tea
|
||||
$sys mo-abet:(mo-cyst:mow t.t.tea q.hin)
|
||||
$use mo-abet:(mo-cook:mow t.t.tea hin)
|
||||
==
|
||||
--
|
||||
|
@ -97,43 +97,53 @@
|
||||
:: ::::
|
||||
++ able ^?
|
||||
|%
|
||||
++ card :: out cards
|
||||
$% {$went p/sack q/path r/@ud s/coop} :: response confirm
|
||||
{$west p/sack q/path r/@ud s/*} :: network request
|
||||
== ::
|
||||
++ note :: out request $->
|
||||
$? $: $d :: to %dill
|
||||
$% {$flog p/flog:dill} ::
|
||||
== == ::
|
||||
$: $a :: to %ames
|
||||
$% {$kick p/@da} ::
|
||||
== == ::
|
||||
$: $g :: to %gall
|
||||
$% {$deal p/sock q/cush:gall} ::
|
||||
== == ::
|
||||
$: @tas :: to any
|
||||
$% {$init p/@p} ::
|
||||
{$west p/sack q/path r/*} ::
|
||||
== == == ::
|
||||
++ gift :: out result <-$
|
||||
$% {$drop $~} :: drop packet
|
||||
{$hear p/lane q/@} :: receive packet
|
||||
{$east p/sock q/*} :: network response
|
||||
$% {$hear p/lane q/@} :: receive packet
|
||||
{$init p/@p} :: report install
|
||||
{$mass p/mass} :: memory usage
|
||||
{$send p/lane q/@} :: transmit packet
|
||||
{$waft p/ship q/path r/*} :: response message
|
||||
{$wart p/sock q/@tas r/path s/*} :: network request
|
||||
{$went p/ship q/cape} :: reaction message
|
||||
{$woot p/ship q/path r/coop} :: e2e reaction message
|
||||
== ::
|
||||
++ note :: out request $->
|
||||
$% {$c card} :: to %clay
|
||||
{$e card} :: to %eyre
|
||||
{$g card} :: to %gall
|
||||
{$woot p/ship q/coop} :: reaction message
|
||||
== ::
|
||||
++ sign :: in result _<-
|
||||
$? $: $g :: from %gall
|
||||
$% {$unto p/cuft:gall} ::
|
||||
{$mean p/ares} :: XX old clean up
|
||||
{$nice $~} ::
|
||||
== == ::
|
||||
$: @tas ::
|
||||
$% {$crud p/@tas q/(list tank)} :: by any
|
||||
{$mack p/(unit tang)} :: message ack
|
||||
== == == ::
|
||||
++ task :: in request ->$
|
||||
$% :: {$born p/@p q/@pG r/?} :: ticket birth
|
||||
{$barn $~} :: new unix process
|
||||
$% {$barn $~} :: new unix process
|
||||
{$crud p/@tas q/(list tank)} :: error with trace
|
||||
{$cash p/@p q/buck} :: civil license
|
||||
:: {$funk p/@p q/@p r/@} :: symtix from/to/key
|
||||
{$hear p/lane q/@} :: receive packet
|
||||
{$halo p/lane q/@ r/ares} :: hole with trace
|
||||
{$hole p/lane q/@} :: packet failed
|
||||
{$junk p/@} :: entropy
|
||||
{$kick p/@da} :: wake up
|
||||
{$nuke p/@p} :: toggle auto-block
|
||||
{$make p/(unit @t) q/@ud r/@ s/?} :: wild license
|
||||
{$sith p/@p q/@uw r/@uw} :: user/ticket/secret
|
||||
{$sith p/@p q/@uw r/?} :: imperial generator
|
||||
{$wake $~} :: timer activate
|
||||
{$want p/sock q/path r/*} :: send message
|
||||
{$wegh $~} :: report memory
|
||||
{$wont p/sock q/path r/*} :: e2e send message
|
||||
{$west p/sack q/path r/*} :: network request
|
||||
{$want p/sock q/path r/*} :: forward message
|
||||
== ::
|
||||
-- ::able
|
||||
::
|
||||
@ -164,6 +174,19 @@
|
||||
-- ::nu ::
|
||||
-- ::acru ::
|
||||
++ bait {p/skin q/@ud r/dove} :: fmt nrecvd spec
|
||||
++ bath :: convo per client
|
||||
$: sop/shed :: not stalled
|
||||
raz/(map path race) :: statements inbound
|
||||
ryl/(map path rill) :: statements outbound
|
||||
== ::
|
||||
++ boon :: fort output
|
||||
$% {$beer p/ship q/@uvG} :: gained ownership
|
||||
{$cake p/sock q/soap r/coop s/duct} :: e2e message result
|
||||
{$mead p/lane q/rock} :: accept packet
|
||||
{$milk p/sock q/soap r/*} :: e2e pass message
|
||||
{$ouzo p/lane q/rock} :: transmit packet
|
||||
{$wine p/sock q/tape} :: notify user
|
||||
== ::
|
||||
++ bray {p/life q/(unit life) r/ship s/@da} :: our parent us now
|
||||
++ buck {p/mace q/wyll} :: all security data
|
||||
++ cake {p/sock q/skin r/@} :: top level packet
|
||||
@ -177,6 +200,12 @@
|
||||
qim/(map hand code) :: inbound
|
||||
== ::
|
||||
++ code @uvI :: symmetric key
|
||||
++ corn :: flow by server
|
||||
$: hen/duct :: admin channel
|
||||
nys/(map flap bait) :: packets incoming
|
||||
olz/(map flap cape) :: packets completed
|
||||
wab/(map ship bath) :: relationship
|
||||
== ::
|
||||
++ deyd {p/@ q/step r/?} :: sig stage fake?
|
||||
++ dore :: foreign contact
|
||||
$: wod/road :: connection to
|
||||
@ -189,6 +218,14 @@
|
||||
$: rtt/@dr :: decaying avg rtt
|
||||
wid/@ud :: logical wdow msgs
|
||||
== ::
|
||||
++ fort :: formal state
|
||||
$: $0 :: version
|
||||
gad/duct :: client interface
|
||||
hop/@da :: network boot date
|
||||
bad/(set @p) :: bad ships
|
||||
ton/town :: security
|
||||
zac/(map ship corn) :: flows by server
|
||||
== ::
|
||||
++ gcos :: id description
|
||||
$% {$czar $~} :: 8-bit ship
|
||||
{$duke p/what} :: 32-bit ship
|
||||
@ -209,10 +246,8 @@
|
||||
++ life @ud :: regime number
|
||||
++ mace (list {p/life q/ring}) :: private secrets
|
||||
++ meal :: payload
|
||||
$% {$back p/cape q/flap r/@dr} :: acknowledgment
|
||||
{$buck p/coop q/flap r/@dr} :: e2e ack
|
||||
$% {$back p/coop q/flap r/@dr} :: ack
|
||||
{$bond p/life q/path r/@ud s/*} :: message
|
||||
{$bund p/life q/path r/@ud s/*} :: e2e message
|
||||
{$carp p/@ q/@ud r/@ud s/flap t/@} :: skin+inx+cnt+hash
|
||||
{$fore p/ship q/(unit lane) r/@} :: forwarded packet
|
||||
== ::
|
||||
@ -840,6 +875,7 @@
|
||||
{$pull $~} :: unsubscribe
|
||||
{$punk p/mark q/cage} :: translated poke
|
||||
{$pump $~} :: pump yes+no
|
||||
{$peer-not p/tang} :: poison pill peer
|
||||
== ::
|
||||
++ cuft :: internal gift
|
||||
$% {$coup p/(unit tang)} :: poke result
|
||||
|
@ -1287,6 +1287,9 @@ ol > li:before {
|
||||
content: "—";
|
||||
margin-right: .6rem; }
|
||||
|
||||
#body.post img {
|
||||
max-width: 100%; }
|
||||
|
||||
.urbit .post h1.title,
|
||||
.urbit .post p.preview,
|
||||
.urbit.post h1.title,
|
||||
@ -1309,6 +1312,15 @@ ol > li:before {
|
||||
.urbit.post img {
|
||||
border: 12px solid #000; }
|
||||
|
||||
.urbit .post img.full-width,
|
||||
.urbit.post img.full-width {
|
||||
width: 100%;
|
||||
border: 0; }
|
||||
|
||||
.urbit .post img.inline,
|
||||
.urbit.post img.inline {
|
||||
margin-bottom: 0; }
|
||||
|
||||
.urbit .post p.preview,
|
||||
.urbit.post p.preview {
|
||||
margin-bottom: .6rem;
|
||||
@ -1361,6 +1373,9 @@ ol > li:before {
|
||||
.sections h1:first-of-type {
|
||||
padding-bottom: 1rem; }
|
||||
|
||||
.sections .list h1 {
|
||||
padding-bottom: 0; }
|
||||
|
||||
.sections li h1 {
|
||||
font-size: 1.2rem; }
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user