mirror of
https://github.com/ilyakooo0/urbit.git
synced 2024-12-04 02:49:42 +03:00
Merge nextbreach into soqdoqblok
This commit is contained in:
commit
766afec656
@ -1,4 +1,4 @@
|
|||||||
!:
|
::
|
||||||
:: dill (4d), terminal handling
|
:: dill (4d), terminal handling
|
||||||
::
|
::
|
||||||
|= pit=vase
|
|= pit=vase
|
||||||
|
112
arvo/eyre.hoon
112
arvo/eyre.hoon
@ -4,6 +4,7 @@
|
|||||||
|= pit=vase
|
|= pit=vase
|
||||||
=> =~
|
=> =~
|
||||||
|% :: interfaces
|
|% :: interfaces
|
||||||
|
++ bead ,[p=(set beam) q=cage] :: computed result
|
||||||
++ chop ,[p=@ud q=@da] :: see
|
++ chop ,[p=@ud q=@da] :: see
|
||||||
++ gift :: out result <-$
|
++ gift :: out result <-$
|
||||||
$% [%thou p=httr] :: raw http response
|
$% [%thou p=httr] :: raw http response
|
||||||
@ -41,9 +42,10 @@
|
|||||||
++ riff ,[p=desk q=(unit rave)] :: see %clay
|
++ riff ,[p=desk q=(unit rave)] :: see %clay
|
||||||
++ sign :: in result $-<
|
++ sign :: in result $-<
|
||||||
$% [%crud p=@tas q=(list tank)] :: by any
|
$% [%crud p=@tas q=(list tank)] :: by any
|
||||||
|
[%dumb p=chop] :: by %gall
|
||||||
[%helo p=path q=prod] :: by %batz
|
[%helo p=path q=prod] :: by %batz
|
||||||
[%made p=(each bead (list tank))] :: by %ford
|
[%made p=(each bead (list tank))] :: by %ford
|
||||||
[%rasp p=cage] :: by %gall
|
[%rasp p=chop q=(unit cage)] :: by %gall
|
||||||
[%rush p=chop q=cage] :: by %gall
|
[%rush p=chop q=cage] :: by %gall
|
||||||
[%rust p=chop q=cage] :: by %gall
|
[%rust p=chop q=cage] :: by %gall
|
||||||
[%talk p=tank] :: by %batz
|
[%talk p=tank] :: by %batz
|
||||||
@ -141,7 +143,7 @@
|
|||||||
$: cnt=@ud :: updates produced
|
$: cnt=@ud :: updates produced
|
||||||
toy=@ud :: updates sent
|
toy=@ud :: updates sent
|
||||||
wan=(map ,@ud ,@ud) :: upno to reqno
|
wan=(map ,@ud ,@ud) :: upno to reqno
|
||||||
red=(map ,@ud (each cage cage)) :: ready for pickup
|
red=(map ,@ud (unit (each cage cage))) :: ready for pickup
|
||||||
== ::
|
== ::
|
||||||
-- ::
|
-- ::
|
||||||
|%
|
|%
|
||||||
@ -209,8 +211,8 @@
|
|||||||
?+ -.luv luv
|
?+ -.luv luv
|
||||||
%mid
|
%mid
|
||||||
=+ str=(trip q.q.luv)
|
=+ str=(trip q.q.luv)
|
||||||
=+ scr=|-(^-(tape ?~(mog "<head>" (xmlt & i.mog $(mog t.mog)))))
|
=+ scr=|-(^-(tape ?~(mog ~ (xmlt & i.mog $(mog t.mog)))))
|
||||||
=+ rep=(need (repg "<head>" str scr))
|
=+ rep=(need (repg "<head>" str (weld "<head>" scr)))
|
||||||
[%mid p.luv (tact rep)]
|
[%mid p.luv (tact rep)]
|
||||||
==
|
==
|
||||||
++ lofe :: variables in head
|
++ lofe :: variables in head
|
||||||
@ -279,6 +281,15 @@
|
|||||||
?- -.sin
|
?- -.sin
|
||||||
%crud
|
%crud
|
||||||
+>.$(mow [[hen %slip %d %flog sin] mow])
|
+>.$(mow [[hen %slip %d %flog sin] mow])
|
||||||
|
::
|
||||||
|
%dumb
|
||||||
|
?> ?=([%hoop @ @ @ @ ~] tea)
|
||||||
|
=+ ^= ouy
|
||||||
|
%- yolk:(gale (need (slaw %p i.t.tea)) i.t.t.tea)
|
||||||
|
(need (slaw %ud i.t.t.t.tea))
|
||||||
|
?~ ouy
|
||||||
|
+>.$
|
||||||
|
abet:work:abet:dumb:(yule:u.ouy i.t.t.t.t.tea)
|
||||||
::
|
::
|
||||||
%made
|
%made
|
||||||
?. ?=([%honk @ @ @ ~] tea)
|
?. ?=([%honk @ @ @ ~] tea)
|
||||||
@ -293,7 +304,11 @@
|
|||||||
(need (slaw %ud i.t.t.t.tea))
|
(need (slaw %ud i.t.t.t.tea))
|
||||||
?~ ouy
|
?~ ouy
|
||||||
+>.$
|
+>.$
|
||||||
abet:work:abet:abet:(hear:(yule:u.ouy i.t.t.t.t.tea) %& p.sin)
|
=+ woy=(yule:u.ouy i.t.t.t.t.tea)
|
||||||
|
=< abet =< work =< abet
|
||||||
|
?~ q.sin
|
||||||
|
dumb:woy
|
||||||
|
(hear:woy `[%& u.q.sin])
|
||||||
::
|
::
|
||||||
?(%rush %rust)
|
?(%rush %rust)
|
||||||
=+ heq=?:(?=(%rust -.sin) [%& q.sin] [%| q.sin])
|
=+ heq=?:(?=(%rust -.sin) [%& q.sin] [%| q.sin])
|
||||||
@ -303,7 +318,7 @@
|
|||||||
(need (slaw %ud i.t.t.t.tea))
|
(need (slaw %ud i.t.t.t.tea))
|
||||||
?~ ouy
|
?~ ouy
|
||||||
+>.$
|
+>.$
|
||||||
abet:work:abet:abet:(hear:(yule:u.ouy i.t.t.t.t.tea) heq)
|
abet:work:abet:(hear:(yule:u.ouy i.t.t.t.t.tea) `heq)
|
||||||
::
|
::
|
||||||
%thou :: remote return
|
%thou :: remote return
|
||||||
?> ?=([@ @ *] tea)
|
?> ?=([@ @ *] tea)
|
||||||
@ -1013,13 +1028,13 @@
|
|||||||
++ fapg :: dispatch %apg
|
++ fapg :: dispatch %apg
|
||||||
|= [fur=(unit term) you=@p paw=path]
|
|= [fur=(unit term) you=@p paw=path]
|
||||||
^- (unit seam)
|
^- (unit seam)
|
||||||
?> ?=(^ fur)
|
=+ for=?^(fur u.fur %html)
|
||||||
?> ?=(^ paw)
|
?> ?=(^ paw)
|
||||||
:- ~
|
:- ~
|
||||||
:* %apg
|
:* %apg
|
||||||
(need ((sand %tas) i.paw))
|
(need ((sand %tas) i.paw))
|
||||||
you
|
you
|
||||||
u.fur
|
for
|
||||||
(turn t.paw |=(a=@ `@ta`(need ((sand %ta) a))))
|
(turn t.paw |=(a=@ `@ta`(need ((sand %ta) a))))
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
@ -1337,13 +1352,22 @@
|
|||||||
+>.$(..ya (hone our num ses))
|
+>.$(..ya (hone our num ses))
|
||||||
+>.$
|
+>.$
|
||||||
::
|
::
|
||||||
++ busc :: seam result code
|
++ bush :: error response
|
||||||
|= som=seam
|
|= [cod=@ud msg=@t num=@ud]
|
||||||
^- @ud
|
^+ +>
|
||||||
?.(?=(%sil -.som) 200 p.som) :: 203 means a diff
|
=+ pup=(~(get by q.rey) num)
|
||||||
|
?~ pup +>.$
|
||||||
|
%= +>.$
|
||||||
|
q.rey
|
||||||
|
%+ ~(put by q.rey) num
|
||||||
|
%= u.pup
|
||||||
|
pez
|
||||||
|
`pest`[%fin %raw cod ~[content-type/'text/plain'] `(taco msg)]
|
||||||
|
==
|
||||||
|
==
|
||||||
::
|
::
|
||||||
++ bust
|
++ bust :: no-content response
|
||||||
|= num=@ud
|
|= [cod=@ud num=@ud]
|
||||||
^+ +>
|
^+ +>
|
||||||
=+ pup=(~(get by q.rey) num)
|
=+ pup=(~(get by q.rey) num)
|
||||||
?~ pup +>.$
|
?~ pup +>.$
|
||||||
@ -1351,7 +1375,7 @@
|
|||||||
%= +>.$
|
%= +>.$
|
||||||
q.rey
|
q.rey
|
||||||
%+ ~(put by q.rey) num
|
%+ ~(put by q.rey) num
|
||||||
u.pup(pez [%fin %raw 204 *mess `*octs])
|
u.pup(pez [%fin %raw cod *mess `*octs])
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
++ inch :: function built
|
++ inch :: function built
|
||||||
@ -1846,8 +1870,8 @@
|
|||||||
|= [num=@ud app=term you=ship nap=@ud suc=term cnt=@ud]
|
|= [num=@ud app=term you=ship nap=@ud suc=term cnt=@ud]
|
||||||
^+ +>
|
^+ +>
|
||||||
=+ yon=(yolk nap)
|
=+ yon=(yolk nap)
|
||||||
?~ yon (bust num)
|
?~ yon (bust 204 num)
|
||||||
abet:abet:(hire:(yule:u.yon suc) cnt num)
|
abet:(hire:(yule:u.yon suc) cnt num)
|
||||||
::
|
::
|
||||||
++ yokg :: main call
|
++ yokg :: main call
|
||||||
|= [num=@ud app=term you=ship pax=path]
|
|= [num=@ud app=term you=ship pax=path]
|
||||||
@ -1859,13 +1883,13 @@
|
|||||||
|= [num=@ud app=term you=ship nap=@ud cnt=@ud jon=json]
|
|= [num=@ud app=term you=ship nap=@ud cnt=@ud jon=json]
|
||||||
^+ +>
|
^+ +>
|
||||||
=+ yon=(yolk nap)
|
=+ yon=(yolk nap)
|
||||||
?~ yon (bust num)
|
?~ yon (bust 204 num)
|
||||||
abet:(post:u.yon cnt num jon)
|
abet:(post:u.yon cnt num jon)
|
||||||
::
|
::
|
||||||
++ yoks :: subscribe
|
++ yoks :: subscribe
|
||||||
|= [num=@ud app=term you=ship nap=@ud suc=term pax=path]
|
|= [num=@ud app=term you=ship nap=@ud suc=term pax=path]
|
||||||
=+ yon=(yolk nap)
|
=+ yon=(yolk nap)
|
||||||
?~ yon (bust num)
|
?~ yon (bust 204 num)
|
||||||
abet:(scud:u.yon suc num pax)
|
abet:(scud:u.yon suc num pax)
|
||||||
::
|
::
|
||||||
++ yoku :: unsubscribe
|
++ yoku :: unsubscribe
|
||||||
@ -1918,18 +1942,18 @@
|
|||||||
%post
|
%post
|
||||||
`note`[%mess [our app] you [%json !>(jon)]]
|
`note`[%mess [our app] you [%json !>(jon)]]
|
||||||
?. =(+(cnt) meg.siq)
|
?. =(+(cnt) meg.siq)
|
||||||
+>.$(..yo (bust num))
|
+>.$(..yo (bust 204 num))
|
||||||
abet:(hire:(yule %post) cnt num)
|
(hire:(yule %post) cnt num)
|
||||||
::
|
::
|
||||||
++ scud :: subscribe
|
++ scud :: subscribe
|
||||||
|= [suc=term num=@ud pax=path]
|
|= [suc=term num=@ud pax=path]
|
||||||
=. +>.$ (toss suc `note`[%show [our app] you pax])
|
=. +>.$ (toss suc `note`[%show [our app] you pax])
|
||||||
abet:(hire:(yule suc) 0 num)
|
(hire:(yule suc) 0 num)
|
||||||
::
|
::
|
||||||
++ self :: request main
|
++ self :: request main
|
||||||
|= pax=path
|
|= pax=path
|
||||||
^+ +>
|
^+ +>
|
||||||
abet:(hire:(yule:(toss %self [%show [our app] you pax]) %self) 0 nap)
|
(hire:(yule:(toss %self [%show [our app] you pax]) %self) 0 nap)
|
||||||
::
|
::
|
||||||
++ toss :: toss to gall
|
++ toss :: toss to gall
|
||||||
|= [suc=term noh=note]
|
|= [suc=term noh=note]
|
||||||
@ -1951,7 +1975,7 @@
|
|||||||
++ busk :: seam result
|
++ busk :: seam result
|
||||||
|= $: num=@ud
|
|= $: num=@ud
|
||||||
cnt=@ud
|
cnt=@ud
|
||||||
heq=(each cage cage)
|
huq=(unit (each cage cage))
|
||||||
==
|
==
|
||||||
^+ +>
|
^+ +>
|
||||||
=+ pup=(~(get by q.rey) num)
|
=+ pup=(~(get by q.rey) num)
|
||||||
@ -1980,19 +2004,28 @@
|
|||||||
suc
|
suc
|
||||||
(rsh 3 2 (scot %ui +(cnt)))
|
(rsh 3 2 (scot %ui +(cnt)))
|
||||||
==
|
==
|
||||||
|
?~ huq +>.$(..yo (bust 404 num))
|
||||||
%= +>.$
|
%= +>.$
|
||||||
q.rey
|
q.rey
|
||||||
%+ ~(put by q.rey) num
|
%+ ~(put by q.rey) num
|
||||||
^- pimp
|
^- pimp
|
||||||
%= pip
|
%= pip
|
||||||
pez %new
|
pez %new
|
||||||
vaz [%instance (trip (rsh 3 2 (scot %ui nap)))]~
|
vaz :~ [%ship :(weld "\"" (trip (rsh 3 1 (scot %p our))) "\"")]
|
||||||
|
[%port (trip (rsh 3 2 (scot %ui nap)))]
|
||||||
|
[%auto "true"]
|
||||||
|
[%oryx "oryx"]
|
||||||
|
:- %user
|
||||||
|
:: ?: =(our you)
|
||||||
|
:: "null"
|
||||||
|
:(weld "\"" (trip (rsh 3 1 (scot %p you))) "\"")
|
||||||
|
==
|
||||||
sip sip
|
sip sip
|
||||||
som ^- seam
|
som ^- seam
|
||||||
:+ %sil
|
:+ %sil
|
||||||
?:(-.heq 200 203)
|
?:(-.u.huq 200 203)
|
||||||
=+ bek=`beak`[our %main [%da now]]
|
=+ bek=`beak`[our %main [%da now]]
|
||||||
=+ don=`silk`[%done ~ `cage`p.heq]
|
=+ don=`silk`[%done ~ `cage`p.u.huq]
|
||||||
^- silk
|
^- silk
|
||||||
:^ %cast %mime bek
|
:^ %cast %mime bek
|
||||||
?~ fur.pip don
|
?~ fur.pip don
|
||||||
@ -2000,9 +2033,17 @@
|
|||||||
==
|
==
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
|
++ dumb :: reset
|
||||||
|
^+ ..yu
|
||||||
|
=+ dum=(~(tap by wan.wig) ~)
|
||||||
|
|- ^+ ..yu
|
||||||
|
?~ dum amok
|
||||||
|
$(dum t.dum, ..yo (bust 404 q.i.dum))
|
||||||
|
::
|
||||||
++ hear :: produce
|
++ hear :: produce
|
||||||
|= heq=(each cage cage)
|
|= huq=(unit (each cage cage))
|
||||||
^+ +>
|
^+ ..yu
|
||||||
|
=< abet
|
||||||
=+ cnt=cnt.wig
|
=+ cnt=cnt.wig
|
||||||
=+ dul=(~(get by wan.wig) cnt)
|
=+ dul=(~(get by wan.wig) cnt)
|
||||||
:: ~& :~ %yu-hear
|
:: ~& :~ %yu-hear
|
||||||
@ -2012,13 +2053,14 @@
|
|||||||
:: ==
|
:: ==
|
||||||
=: cnt.wig +(cnt.wig)
|
=: cnt.wig +(cnt.wig)
|
||||||
wan.wig ?~(dul wan.wig (~(del by wan.wig) cnt.wig))
|
wan.wig ?~(dul wan.wig (~(del by wan.wig) cnt.wig))
|
||||||
red.wig (~(put by red.wig) cnt.wig heq)
|
red.wig (~(put by red.wig) cnt.wig huq)
|
||||||
==
|
==
|
||||||
?~(dul +>.$ (busk u.dul cnt heq))
|
?~(dul +>.$ (busk u.dul cnt huq))
|
||||||
::
|
::
|
||||||
++ hire :: consume
|
++ hire :: consume
|
||||||
|= [cnt=@ud num=@ud]
|
|= [cnt=@ud num=@ud]
|
||||||
^+ +>
|
^+ ..yu
|
||||||
|
=< abet
|
||||||
:: ~& :~ %yu-hire
|
:: ~& :~ %yu-hire
|
||||||
:: [%instance nap]
|
:: [%instance nap]
|
||||||
:: [%produced cnt.wig]
|
:: [%produced cnt.wig]
|
||||||
@ -2028,16 +2070,16 @@
|
|||||||
:: ==
|
:: ==
|
||||||
?: |((lth +(cnt) toy.wig) (gth cnt toy.wig))
|
?: |((lth +(cnt) toy.wig) (gth cnt toy.wig))
|
||||||
~& [%hire-improper [%request cnt] [%dispatched toy.wig]]
|
~& [%hire-improper [%request cnt] [%dispatched toy.wig]]
|
||||||
+>.$(..yo (bust num))
|
+>.$(..yo (bust 204 num))
|
||||||
?: (gte cnt cnt.wig)
|
?: (gte cnt cnt.wig)
|
||||||
:: ~& %hire-wait
|
:: ~& %hire-wait
|
||||||
=+ old=(~(get by wan.wig) cnt)
|
=+ old=(~(get by wan.wig) cnt)
|
||||||
=. wan.wig (~(put by wan.wig) cnt num)
|
=. wan.wig (~(put by wan.wig) cnt num)
|
||||||
+>.$(..yo ?~(old ..yo (bust u.old)))
|
+>.$(..yo ?~(old ..yo (bust 204 u.old)))
|
||||||
=+ rud=(~(get by red.wig) cnt)
|
=+ rud=(~(get by red.wig) cnt)
|
||||||
?~ rud
|
?~ rud
|
||||||
:: ~& %hire-bust
|
:: ~& %hire-bust
|
||||||
+>.$(..yo (bust num))
|
+>.$(..yo (bust 204 num))
|
||||||
:: ~& %hire-send
|
:: ~& %hire-send
|
||||||
(busk num cnt u.rud)
|
(busk num cnt u.rud)
|
||||||
--
|
--
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
=> =~
|
=> =~
|
||||||
:: structures
|
:: structures
|
||||||
|%
|
|%
|
||||||
|
++ bead ,[p=(set beam) q=cage] :: computed result
|
||||||
++ gift :: out result <-$
|
++ gift :: out result <-$
|
||||||
$% [%made p=(each bead (list tank))] :: computed result
|
$% [%made p=(each bead (list tank))] :: computed result
|
||||||
== ::
|
== ::
|
||||||
@ -591,9 +592,14 @@
|
|||||||
(fine cof [p.kas vax])
|
(fine cof [p.kas vax])
|
||||||
::
|
::
|
||||||
%done [cof %0 p.kas q.kas]
|
%done [cof %0 p.kas q.kas]
|
||||||
%dune
|
%dude
|
||||||
?~ q.kas (flaw cof [%leaf "not ready"]~)
|
=+ dog=$(kas q.kas)
|
||||||
[cof %0 p.kas u.q.kas]
|
?. ?=(%2 -.q.dog) dog
|
||||||
|
dog(p.q [p.kas p.q.dog])
|
||||||
|
::
|
||||||
|
%dune
|
||||||
|
?~ q.kas [cof [%2 [%leaf "no data"]~]]
|
||||||
|
$(kas [%done p.kas u.q.kas])
|
||||||
::
|
::
|
||||||
%mute (kale cof p.kas q.kas)
|
%mute (kale cof p.kas q.kas)
|
||||||
%pass
|
%pass
|
||||||
|
360
arvo/gall.hoon
360
arvo/gall.hoon
@ -8,17 +8,17 @@
|
|||||||
$: %0 :: state version
|
$: %0 :: state version
|
||||||
pol=(map ship mast) :: apps by ship
|
pol=(map ship mast) :: apps by ship
|
||||||
== ::
|
== ::
|
||||||
|
++ bead ,[p=(set beam) q=cage] :: computed result
|
||||||
++ bone ,@ud :: opaque duct
|
++ bone ,@ud :: opaque duct
|
||||||
++ chop ,[p=@ud q=@da] :: revision/date
|
++ chop ,[p=@ud q=@da] :: revision/date
|
||||||
++ gift :: out result <-$
|
++ gift :: out result <-$
|
||||||
$% [%back p=?] :: %mess ack good/bad
|
$% [%back p=?] :: %mess ack good/bad
|
||||||
[%crud p=@tas q=(list tank)] :: error
|
[%crud p=@tas q=(list tank)] :: physical error
|
||||||
[%rasp p=cage] :: reaction message
|
[%dumb p=chop] :: close duct
|
||||||
[%rump p=chop] :: updates stop
|
[%rasp p=chop q=(unit cage)] :: reaction message
|
||||||
[%rush p=chop q=cage] :: difference
|
[%rush p=chop q=cage] :: difference
|
||||||
[%rust p=chop q=cage] :: full update
|
[%rust p=chop q=cage] :: full update
|
||||||
[%meta p=vase] :: meta-gift
|
[%meta p=vase] :: meta-gift
|
||||||
|
|
||||||
== ::
|
== ::
|
||||||
++ hasp ,[p=ship q=term] :: app identity
|
++ hasp ,[p=ship q=term] :: app identity
|
||||||
++ kiss :: in request ->$
|
++ kiss :: in request ->$
|
||||||
@ -29,8 +29,9 @@
|
|||||||
[%nuke p=hasp] :: clear duct
|
[%nuke p=hasp] :: clear duct
|
||||||
== ::
|
== ::
|
||||||
++ knob :: pending action
|
++ knob :: pending action
|
||||||
$% [%boot ~] :: boot/reboot
|
$% [%boot ~] :: begin boot
|
||||||
[%crud p=@tas q=(list tank)] :: error
|
[%crud p=@tas q=(list tank)] :: error
|
||||||
|
[%load p=cage] :: continue boot
|
||||||
[%mess p=ship q=cage] :: message
|
[%mess p=ship q=cage] :: message
|
||||||
[%show p=ship q=path] :: subscribe
|
[%show p=ship q=path] :: subscribe
|
||||||
[%nuke ~] :: clear duct
|
[%nuke ~] :: clear duct
|
||||||
@ -60,12 +61,15 @@
|
|||||||
++ seat :: the living app
|
++ seat :: the living app
|
||||||
$: huv=(unit vase) :: application vase
|
$: huv=(unit vase) :: application vase
|
||||||
qic=(unit toil) :: current project
|
qic=(unit toil) :: current project
|
||||||
oot=(map duct (set path)) :: live fords
|
onz=(unit (pair duct path)) :: live fords
|
||||||
vey=(qeu toil) :: pending projects
|
vey=(qeu toil) :: pending projects
|
||||||
nuc=(set duct) :: nuked ducts
|
nuc=(set duct) :: nuked ducts
|
||||||
tik=@ud :: build number
|
tik=@ud :: build number
|
||||||
|
act=@ud :: action number
|
||||||
|
lat=@da :: last change
|
||||||
orm=(unit ,@da) :: build date
|
orm=(unit ,@da) :: build date
|
||||||
sup=(map bone (pair ship path)) :: subscribers
|
sup=(map bone (pair ship path)) :: subscribers
|
||||||
|
peq=(map bone ,@uvI) :: peekers
|
||||||
ped=(set (pair ship desk)) :: active depends
|
ped=(set (pair ship desk)) :: active depends
|
||||||
zam=scar :: opaque ducts
|
zam=scar :: opaque ducts
|
||||||
== ::
|
== ::
|
||||||
@ -345,7 +349,7 @@
|
|||||||
^- silk
|
^- silk
|
||||||
[%done ~ cay]
|
[%done ~ cay]
|
||||||
::
|
::
|
||||||
++ deal :: advance tick
|
++ deal :: reboot
|
||||||
^+ .
|
^+ .
|
||||||
=. tik.sat +(tik.sat)
|
=. tik.sat +(tik.sat)
|
||||||
=+ pys=(~(tap by sup.sat) ~)
|
=+ pys=(~(tap by sup.sat) ~)
|
||||||
@ -371,7 +375,7 @@
|
|||||||
|=(a=(pair ship desk) (~(has in ped.sat) a))
|
|=(a=(pair ship desk) (~(has in ped.sat) a))
|
||||||
|= a=(pair ship desk)
|
|= a=(pair ship desk)
|
||||||
:- hun.mat
|
:- hun.mat
|
||||||
:^ %toss %c (away %s %drug (scot %p p.a) q.a ~)
|
:^ %toss %c (away %w %drug (scot %p p.a) q.a ~)
|
||||||
[%warp [our p.a] q.a ~ %| [%da now] [%da (add now ~d1000)]]
|
[%warp [our p.a] q.a ~ %| [%da now] [%da (add now ~d1000)]]
|
||||||
=+ ^= old ^- (list move)
|
=+ ^= old ^- (list move)
|
||||||
%+ turn
|
%+ turn
|
||||||
@ -379,7 +383,7 @@
|
|||||||
|=(a=(pair ship desk) (~(has in pen) a))
|
|=(a=(pair ship desk) (~(has in pen) a))
|
||||||
|= a=(pair ship desk)
|
|= a=(pair ship desk)
|
||||||
:- hun.mat
|
:- hun.mat
|
||||||
:^ %toss %c (away %s %drug (scot %p p.a) q.a ~)
|
:^ %toss %c (away %w %drug (scot %p p.a) q.a ~)
|
||||||
[%warp [our p.a] q.a ~]
|
[%warp [our p.a] q.a ~]
|
||||||
%_(+>.$ ped.sat pen, mow :(weld new old mow))
|
%_(+>.$ ped.sat pen, mow :(weld new old mow))
|
||||||
::
|
::
|
||||||
@ -398,29 +402,16 @@
|
|||||||
::
|
::
|
||||||
++ ford :: exec to ford
|
++ ford :: exec to ford
|
||||||
|= [pax=path kas=silk]
|
|= [pax=path kas=silk]
|
||||||
(gawk %f [%s pax] [%exec our `kas])
|
|
||||||
::
|
|
||||||
++ gawk :: toss a note
|
|
||||||
|= [lal=term pax=path noy=note]
|
|
||||||
^+ +>
|
^+ +>
|
||||||
%_ +>
|
%_ +>
|
||||||
mow [[hen %toss lal (away pax) noy] mow]
|
mow :_(mow [hen %toss %f (away pax) [%exec our `kas]])
|
||||||
oot.sat =+ vut=(~(get by oot.sat) hen)
|
onz.sat `[hen pax]
|
||||||
=+ vit=?^(vut u.vut *(set path))
|
|
||||||
?< (~(has in vit) pax)
|
|
||||||
(~(put by oot.sat) hen (~(put in vit) pax))
|
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
++ give :: give a gift
|
++ give :: give a gift
|
||||||
|= gip=gift
|
|= gip=gift
|
||||||
%_(+> mow [[hen %give gip] mow])
|
%_(+> mow [[hen %give gip] mow])
|
||||||
::
|
::
|
||||||
++ gone %_(. qic.sat ~) :: done work
|
|
||||||
++ game :: invoke core
|
|
||||||
|= [[arm=term pax=path] vax=vase sam=vase]
|
|
||||||
%+ ford pax
|
|
||||||
[%call (harm arm (conf (core vax))) (cove %$ sam)]
|
|
||||||
::
|
|
||||||
++ harm :: arm as silk
|
++ harm :: arm as silk
|
||||||
|= [arm=term kas=silk]
|
|= [arm=term kas=silk]
|
||||||
^- silk
|
^- silk
|
||||||
@ -431,23 +422,112 @@
|
|||||||
:+ %boil %core
|
:+ %boil %core
|
||||||
[[our %main [%da now]] app %app ~]
|
[[our %main [%da now]] app %app ~]
|
||||||
::
|
::
|
||||||
|
++ mack :: apply standard
|
||||||
|
|= qin=sign
|
||||||
|
?> ?=(%made -.qin)
|
||||||
|
^- [(unit (list tank)) _+>]
|
||||||
|
?- -.p.qin
|
||||||
|
& :- ~
|
||||||
|
%- obey:(morn (slot 3 q.q.p.p.qin))
|
||||||
|
(slot 2 q.q.p.p.qin)
|
||||||
|
| [`p.p.qin (give %crud %made p.p.qin)]
|
||||||
|
==
|
||||||
|
::
|
||||||
|
++ meek :: apply peek
|
||||||
|
|= qin=sign
|
||||||
|
^- [(unit cage) _+>]
|
||||||
|
?> ?=(%made -.qin)
|
||||||
|
?- -.p.qin
|
||||||
|
& =+ vax=`vase`q.q.p.p.qin
|
||||||
|
?. &(?=(^ q.vax) ?=(@ -.q.vax))
|
||||||
|
[~ (give %crud %peek-lame *(list tank))]
|
||||||
|
:- `[((hard logo) -.q.vax) (slot 3 vax)]
|
||||||
|
+>.$
|
||||||
|
| [~ (give %crud %made p.p.qin)]
|
||||||
|
==
|
||||||
|
::
|
||||||
|
++ mick :: apply w/depends
|
||||||
|
|= qin=sign
|
||||||
|
?> ?=(%made -.qin)
|
||||||
|
^- [(unit (set beam)) _+>]
|
||||||
|
?- -.p.qin
|
||||||
|
& :- `p.p.p.qin
|
||||||
|
%- obey:(morn (slot 3 q.q.p.p.qin))
|
||||||
|
(slot 2 q.q.p.p.qin)
|
||||||
|
| [~ (give %crud %made p.p.qin)]
|
||||||
|
==
|
||||||
|
::
|
||||||
|
++ murk :: apply park
|
||||||
|
|= qin=sign
|
||||||
|
^- [(unit cage) _+>]
|
||||||
|
?> ?=(%made -.qin)
|
||||||
|
?- -.p.qin
|
||||||
|
& [`q.p.p.qin +>.$]
|
||||||
|
| [~ (give %crud %made p.p.qin)]
|
||||||
|
==
|
||||||
|
::
|
||||||
++ more :: accept result
|
++ more :: accept result
|
||||||
|= $: pax=path :: internal position
|
|= $: pax=path :: internal position
|
||||||
hin=(hypo sign) :: typed event
|
hin=(hypo sign) :: typed event
|
||||||
==
|
==
|
||||||
^+ +>
|
^+ +>
|
||||||
:: ~& [%more pax -.q.hin]
|
?+ -.pax !!
|
||||||
=. oot.sat
|
%s :: core operation
|
||||||
?: ?=([%s %drug *] pax) oot.sat
|
?> ?& ?=([@ *] t.pax)
|
||||||
=+ vut=(~(get by oot.sat) hen)
|
!=(~ qic.sat)
|
||||||
?~ vut
|
=(`[hen pax] onz.sat)
|
||||||
~& [%more-lost-a our app hen] !!
|
==
|
||||||
?. (~(has in u.vut) pax)
|
=: onz.sat ~
|
||||||
~& [%more-lost our app hen pax] !!
|
qic.sat ~
|
||||||
?: =(~ u.vut)
|
==
|
||||||
(~(del by oot.sat) hen)
|
?+ i.t.pax !!
|
||||||
(~(put by oot.sat) hen (~(del in u.vut) pax))
|
%park
|
||||||
?: ?=([%u *] pax)
|
=^ gyd +>.$ (murk q.hin)
|
||||||
|
?~ gyd
|
||||||
|
+>.$
|
||||||
|
(quen %load u.gyd)
|
||||||
|
::
|
||||||
|
%peek
|
||||||
|
?> ?=([@ *] t.t.pax)
|
||||||
|
=+ you=(need (slaw %p i.t.t.pax))
|
||||||
|
=^ gyd +>.$ (meek q.hin)
|
||||||
|
?~ gyd
|
||||||
|
(give [%dumb [tik.sat lat.sat]])
|
||||||
|
=+ kee=[you t.t.t.pax]
|
||||||
|
=+ ash=(sham q.q.u.gyd)
|
||||||
|
?: =(`ash (~(get by peq.sat) ost))
|
||||||
|
+>.$
|
||||||
|
%- %= give
|
||||||
|
peq.sat (~(put by peq.sat) ost ash)
|
||||||
|
sup.sat (~(put by sup.sat) ost kee)
|
||||||
|
==
|
||||||
|
[%rust [tik.sat lat.sat] u.gyd]
|
||||||
|
::
|
||||||
|
%peer
|
||||||
|
?> ?=([@ *] t.t.pax)
|
||||||
|
=+ you=(need (slaw %p i.t.t.pax))
|
||||||
|
=^ gud +>.$ (mack q.hin)
|
||||||
|
?^ gud
|
||||||
|
(give [%dumb [tik.sat lat.sat]])
|
||||||
|
+>.$(sup.sat (~(put by sup.sat) ost [you t.t.t.pax]))
|
||||||
|
::
|
||||||
|
%poke
|
||||||
|
=^ gud +>.$ (mack q.hin)
|
||||||
|
?^ gud (give %rasp [tik.sat lat.sat] ~)
|
||||||
|
+>.$
|
||||||
|
::
|
||||||
|
%prep
|
||||||
|
=^ gad +>.$ (mick q.hin)
|
||||||
|
?~ gad (drum ~)
|
||||||
|
deal:(drum u.gad)
|
||||||
|
::
|
||||||
|
%pull
|
||||||
|
=^ gud +>.$ (mack q.hin)
|
||||||
|
?^ gud +>.$
|
||||||
|
+>.$(sup.sat (~(del by sup.sat) ost))
|
||||||
|
==
|
||||||
|
::
|
||||||
|
%u :: user request
|
||||||
?. ?=(%ruse -.q.hin)
|
?. ?=(%ruse -.q.hin)
|
||||||
~& [%more-card -.q.hin pax] !!
|
~& [%more-card -.q.hin pax] !!
|
||||||
%_ +>.$
|
%_ +>.$
|
||||||
@ -455,21 +535,11 @@
|
|||||||
%- ~(put to vey.sat)
|
%- ~(put to vey.sat)
|
||||||
[hen [%take t.pax (spec (slot 3 hin))]]
|
[hen [%take t.pax (spec (slot 3 hin))]]
|
||||||
==
|
==
|
||||||
?> ?=([%s @ *] pax)
|
|
||||||
?+ i.t.pax !!
|
|
||||||
%boot
|
|
||||||
?> ?=([~ * %boot ~] qic.sat)
|
|
||||||
?> ?=(%made -.q.hin)
|
|
||||||
?- -.p.q.hin
|
|
||||||
& ~& [%boot-good our app tik.sat]
|
|
||||||
deal:(drum:(morn:gone q.q.p.p.q.hin) p.p.p.q.hin)
|
|
||||||
| ~& [%boot-lost our app tik.sat]
|
|
||||||
(drum:(mort:gone p.p.q.hin) ~)
|
|
||||||
==
|
|
||||||
::
|
::
|
||||||
%drug
|
%w :: autoboot
|
||||||
?> ?=(%writ -.q.hin)
|
?> ?& ?=([%drug @ @ ~] t.pax)
|
||||||
?> ?=([@ @ ~] t.t.pax)
|
?=(%writ -.q.hin)
|
||||||
|
==
|
||||||
=+ :* our=(need (slaw %p i.t.t.pax))
|
=+ :* our=(need (slaw %p i.t.t.pax))
|
||||||
syd=(need ((sand %tas) i.t.t.t.pax))
|
syd=(need ((sand %tas) i.t.t.t.pax))
|
||||||
==
|
==
|
||||||
@ -477,66 +547,53 @@
|
|||||||
?~ p.q.hin
|
?~ p.q.hin
|
||||||
+>.$
|
+>.$
|
||||||
+>.$(vey.sat (~(put to vey.sat) hen %boot ~))
|
+>.$(vey.sat (~(put to vey.sat) hen %boot ~))
|
||||||
::
|
|
||||||
%step
|
|
||||||
?> ?=(%made -.q.hin)
|
|
||||||
?- -.p.q.hin
|
|
||||||
& :: ~& %step-good
|
|
||||||
%- obey:(morn:gone (slot 3 q.q.p.p.q.hin))
|
|
||||||
(slot 2 q.q.p.p.q.hin)
|
|
||||||
| :: ~& %step-fail
|
|
||||||
(give %crud %made p.p.q.hin)
|
|
||||||
==
|
|
||||||
::
|
|
||||||
%show
|
|
||||||
?> ?=(%made -.q.hin)
|
|
||||||
?> ?=([@ *] t.t.pax)
|
|
||||||
=+ you=(need (slaw %p i.t.t.pax))
|
|
||||||
?- -.p.q.hin
|
|
||||||
& =. sup.sat (~(put by sup.sat) ost you t.t.t.pax)
|
|
||||||
%- obey:(morn:gone (slot 3 q.q.p.p.q.hin))
|
|
||||||
(slot 2 q.q.p.p.q.hin)
|
|
||||||
| :: ~& %step-fail
|
|
||||||
(give %crud %made p.p.q.hin)
|
|
||||||
==
|
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
++ morn :: successful boot
|
++ morn :: install core
|
||||||
|= vax=vase
|
|= vax=vase
|
||||||
^+ +>
|
^+ +>
|
||||||
%_(+> huv.sat `vax)
|
=+ new=?~(huv.sat & !=(+>+.q.vax +>+.q.u.huv.sat))
|
||||||
|
=. huv.sat `vax
|
||||||
|
?. new +>.$
|
||||||
|
=: act.sat +(act.sat)
|
||||||
|
lat.sat now
|
||||||
|
==
|
||||||
|
=+ pex=(~(tap by peq.sat) ~)
|
||||||
|
|- ^+ +>.^$
|
||||||
|
?~ pex +>.^$
|
||||||
|
~& [%morn-peek p.i.pex (need (~(get by sup.sat) p.i.pex))]
|
||||||
|
%= $
|
||||||
|
pex t.pex
|
||||||
|
+>.^$ %- quem(hen (need (~(get by r.zam.sat) p.i.pex)))
|
||||||
|
[%show (need (~(get by sup.sat) p.i.pex))]
|
||||||
|
==
|
||||||
::
|
::
|
||||||
++ mort :: failed boot
|
++ mort :: failed boot
|
||||||
|= tan=(list tank)
|
|= tan=(list tank)
|
||||||
(give %crud %boot-lost tan)
|
(give %crud %boot-lost tan)
|
||||||
::
|
::
|
||||||
++ nile [%done ~ [%$ [%cube 0 [%atom %n]] ~]] :: null silk
|
++ nile [%done ~ [%$ [%cube 0 [%atom %n]] ~]] :: null silk
|
||||||
++ obey :: process result
|
++ obey :: process app moves
|
||||||
|= vax=vase
|
|= vax=vase
|
||||||
%_(+> mow (weld (flop (said vax)) mow))
|
%_(+> mow (weld (flop (said vax)) mow))
|
||||||
::
|
::
|
||||||
++ quem :: queue action
|
++ quem :: queue action
|
||||||
|= kon=knob :: content
|
|= kon=knob :: content
|
||||||
^+ +>
|
^+ +>
|
||||||
?. ?=(%nuke -.kon)
|
=. +> ?. ?=(%nuke -.kon) +>
|
||||||
+>.$(vey.sat (~(put to vey.sat) hen kon))
|
?. &(?=(^ onz.sat) =(hen p.u.onz.sat)) +>
|
||||||
?: (~(has in nuc.sat) hen)
|
%= +>
|
||||||
~& [%quem-renuke hen]
|
onz.sat ~
|
||||||
+>.$
|
mow
|
||||||
=+ vut=(~(get by oot.sat) hen)
|
:_(mow [hen %toss %f (away q.u.onz.sat) [%exec our ~]])
|
||||||
=+ ^= ded ^- (list path)
|
==
|
||||||
?~(vut ~ (~(tap by u.vut) ~))
|
+>.$(vey.sat (~(put to vey.sat) hen kon))
|
||||||
|- ^+ +>.^$
|
::
|
||||||
?~ ded
|
++ quen :: push on front
|
||||||
%= +>.^$
|
|= kon=knob
|
||||||
qic.sat ?.(&(?=(^ qic.sat) =(hen p.u.qic.sat)) qic.sat ~)
|
^+ +>
|
||||||
nuc.sat (~(put in nuc.sat) hen)
|
=+ yov=(~(tap by vey.sat) ~) :: XX ++pun
|
||||||
vey.sat (~(put to vey.sat) hen kon)
|
+>.$(vey.sat (~(gas to *(qeu toil)) `_yov`[[hen kon] yov]))
|
||||||
==
|
|
||||||
%= $
|
|
||||||
ded t.ded
|
|
||||||
mow [[hen [%toss %f (away i.ded) [%exec our ~]]] mow]
|
|
||||||
==
|
|
||||||
::
|
::
|
||||||
++ said
|
++ said
|
||||||
|= vud=vase
|
|= vud=vase
|
||||||
@ -555,22 +612,25 @@
|
|||||||
|= vig=vase
|
|= vig=vase
|
||||||
^- gift
|
^- gift
|
||||||
?+ q.vig [%meta vig]
|
?+ q.vig [%meta vig]
|
||||||
|
[%dumb *] [%dumb [tik.sat lat.sat]]
|
||||||
[%rasp *]
|
[%rasp *]
|
||||||
:+ %rasp
|
=+ sec=(spec (slot 3 vig))
|
||||||
((hard lode) +<.q.vig)
|
:+ %rasp [tik.sat lat.sat]
|
||||||
(slot 7 vig)
|
:+ ~
|
||||||
|
((hard logo) -.q.sec)
|
||||||
|
(slot 3 sec)
|
||||||
::
|
::
|
||||||
[%rush *]
|
[%rush *]
|
||||||
:^ %rush
|
=+ sec=(spec (slot 3 vig))
|
||||||
[tik.sat now]
|
:+ %rush [tik.sat lat.sat]
|
||||||
((hard lode) +<.q.vig)
|
:- ((hard logo) -.q.sec)
|
||||||
(slot 7 vig)
|
(slot 3 sec)
|
||||||
::
|
::
|
||||||
[%rust *]
|
[%rust *]
|
||||||
:^ %rust
|
=+ sec=(spec (slot 3 vig))
|
||||||
[tik.sat now]
|
:+ %rust [tik.sat lat.sat]
|
||||||
((hard lode) +<.q.vig)
|
:- ((hard logo) -.q.sec)
|
||||||
(slot 7 vig)
|
(slot 3 sec)
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
++ sump
|
++ sump
|
||||||
@ -587,13 +647,14 @@
|
|||||||
::
|
::
|
||||||
[%give p=[p=@tas q=*]]
|
[%give p=[p=@tas q=*]]
|
||||||
[%give (sumo (spec (slot 3 caq)))]
|
[%give (sumo (spec (slot 3 caq)))]
|
||||||
::
|
|
||||||
[%slip p=@tas q=[p=@tas q=*]]
|
|
||||||
:+ %slip
|
|
||||||
(need ((sand %tas) ((hard ,@) p.q.caq)))
|
|
||||||
[%meta (spec (slot 7 caq))]
|
|
||||||
==
|
==
|
||||||
::
|
::
|
||||||
|
++ warm :: vase has arm
|
||||||
|
|= cog=@tas
|
||||||
|
^- ?
|
||||||
|
?~ huv.sat |
|
||||||
|
!=(~ q:(~(fino ut p.u.huv.sat) 0 %free cog))
|
||||||
|
::
|
||||||
++ work :: eat queue
|
++ work :: eat queue
|
||||||
|- ^+ +
|
|- ^+ +
|
||||||
?: |(?=(^ qic.sat) =(~ vey.sat)) +.$ :: nothing to do
|
?: |(?=(^ qic.sat) =(~ vey.sat)) +.$ :: nothing to do
|
||||||
@ -601,6 +662,12 @@
|
|||||||
?: (~(has in nuc.sat) p.yev) $
|
?: (~(has in nuc.sat) p.yev) $
|
||||||
work:(yawn:(bing p.yev) q.yev)
|
work:(yawn:(bing p.yev) q.yev)
|
||||||
::
|
::
|
||||||
|
++ yawl :: invoke core
|
||||||
|
|= [[arm=term pax=path] vax=vase sam=vase]
|
||||||
|
^+ +>
|
||||||
|
%+ ford [%s arm pax]
|
||||||
|
[%call (harm arm (conf (core vax))) (cove %$ sam)]
|
||||||
|
::
|
||||||
++ yawn :: start event
|
++ yawn :: start event
|
||||||
|= kon=knob
|
|= kon=knob
|
||||||
^+ +>
|
^+ +>
|
||||||
@ -609,43 +676,64 @@
|
|||||||
?- -.kon
|
?- -.kon
|
||||||
%boot
|
%boot
|
||||||
=. orm.sat `now
|
=. orm.sat `now
|
||||||
%+ ford /boot
|
%+ ford /s/park
|
||||||
^- silk
|
^- silk
|
||||||
:+ %call
|
:- home
|
||||||
(harm %prep (conf home))
|
?~ huv.sat nile
|
||||||
?~ huv.sat
|
?: =(~ q.u.huv.sat) nile
|
||||||
nile
|
:- nile
|
||||||
[nile (harm %save (conf (core u.huv.sat)))]
|
?. (warm %park)
|
||||||
|
[%done ~ %$ (slot 13 u.huv.sat)]
|
||||||
|
(harm %park (conf (core u.huv.sat)))
|
||||||
|
::
|
||||||
|
%load
|
||||||
|
=+ [hom=(slot 2 q.p.kon) old=(slot 3 q.p.kon)]
|
||||||
|
%+ ford /s/prep
|
||||||
|
?. (warm(huv.sat `hom) %prep)
|
||||||
|
:- nile
|
||||||
|
?: =(~ q.old)
|
||||||
|
(core hom)
|
||||||
|
:+ %mute `silk`(core hom)
|
||||||
|
:~ [[%$ 13]~ (cave (slot 3 old))]
|
||||||
|
==
|
||||||
|
[%call (harm %prep (conf (core hom))) [nile (cave old)]]
|
||||||
::
|
::
|
||||||
%crud
|
%crud
|
||||||
?~ huv.sat
|
(give(qic.sat ~) %crud p.kon q.kon)
|
||||||
~& [%crud-none our app]
|
|
||||||
gone:(give %crud p.kon q.kon)
|
|
||||||
%^ game [%pain /step] u.huv.sat
|
|
||||||
!>([ost use p.kon])
|
|
||||||
::
|
::
|
||||||
%nuke
|
%nuke
|
||||||
:: ~& %yawn-nuke
|
?. (warm %pull)
|
||||||
gone :: send unsubscribe
|
+>.$(qic.sat ~)
|
||||||
|
?> ?=(^ huv.sat)
|
||||||
|
(yawl [%pull ~] u.huv.sat [[%atom %ud] ost])
|
||||||
::
|
::
|
||||||
%mess
|
%mess
|
||||||
?~ huv.sat
|
=+ ^= cog ^- term
|
||||||
~& [%mess-none our app]
|
?: |(?=(^ p.q.kon) =(%$ p.q.kon))
|
||||||
gone:(give %back |)
|
%poke
|
||||||
%^ game [%poke /step] u.huv.sat
|
(cat 3 'poke-' p.q.kon)
|
||||||
:(slop [[%atom %ud] ost] [[%atom %p] p.kon] q.q.kon)
|
?. (warm cog)
|
||||||
|
(give(qic.sat ~) %rasp [tik.sat lat.sat] ~)
|
||||||
|
?> ?=(^ huv.sat)
|
||||||
|
=+ sam=:(slop [[%atom %ud] ost] [[%atom %p] p.kon] q.q.kon)
|
||||||
|
~& [%mess-poke cog]
|
||||||
|
%+ ford /s/poke
|
||||||
|
[%call (harm cog (conf (core u.huv.sat))) (cove %$ sam)]
|
||||||
::
|
::
|
||||||
%show
|
%show
|
||||||
?~ huv.sat
|
?: (warm %peer)
|
||||||
~& [%show-none our app]
|
=+ sam=!>([ost p.kon q.kon])
|
||||||
gone
|
?> ?=(^ huv.sat)
|
||||||
%^ game [%peer [%show (scot %p p.kon) q.kon]] u.huv.sat
|
=. peq.sat (~(del by peq.sat) ost)
|
||||||
!>([ost p.kon q.kon])
|
(yawl [%peer (scot %p p.kon) q.kon] u.huv.sat sam)
|
||||||
|
?: (warm %peek)
|
||||||
|
=+ sam=!>([p.kon q.kon])
|
||||||
|
?> ?=(^ huv.sat)
|
||||||
|
(yawl [%peek (scot %p p.kon) q.kon] u.huv.sat sam)
|
||||||
|
(give(qic.sat ~) %dumb [tik.sat lat.sat])
|
||||||
::
|
::
|
||||||
%take
|
%take
|
||||||
?> ?=(^ huv.sat)
|
!!
|
||||||
%^ game [%peck /step] u.huv.sat
|
|
||||||
:(slop [[%atom %ud] ost] !>((ride use say)) !>(p.kon) q.kon)
|
|
||||||
==
|
==
|
||||||
--
|
--
|
||||||
--
|
--
|
||||||
|
@ -100,6 +100,7 @@
|
|||||||
++ mart (list ,[n=mane v=tape]) :: XML attributes
|
++ mart (list ,[n=mane v=tape]) :: XML attributes
|
||||||
++ marx $|(@tas [n=mane a=mart]) :: XML tag
|
++ marx $|(@tas [n=mane a=mart]) :: XML tag
|
||||||
++ metl ?(%gold %iron %zinc %lead) :: core variance
|
++ metl ?(%gold %iron %zinc %lead) :: core variance
|
||||||
|
++ noun ,*
|
||||||
++ null ,~ :: null, nil, etc
|
++ null ,~ :: null, nil, etc
|
||||||
++ odor ,@ta :: atom format
|
++ odor ,@ta :: atom format
|
||||||
++ tarp ,[d=@ud h=@ud m=@ud s=@ud f=(list ,@ux)] :: parsed time
|
++ tarp ,[d=@ud h=@ud m=@ud s=@ud f=(list ,@ux)] :: parsed time
|
||||||
@ -1917,6 +1918,12 @@
|
|||||||
b
|
b
|
||||||
$(a r.a, b [n.a $(a l.a)])
|
$(a r.a, b [n.a $(a l.a)])
|
||||||
::
|
::
|
||||||
|
+- tur :: turn
|
||||||
|
|* b=$+([* *] *)
|
||||||
|
|-
|
||||||
|
?~ a ~
|
||||||
|
[n=[p=p.n.a q=(b p.n.a q.n.a)] l=$(a l.a) r=$(a r.a)]
|
||||||
|
::
|
||||||
+- uni :: union
|
+- uni :: union
|
||||||
~/ %uni
|
~/ %uni
|
||||||
|* b=_a
|
|* b=_a
|
||||||
@ -1984,7 +1991,7 @@
|
|||||||
=+ b=get(+< l.a)
|
=+ b=get(+< l.a)
|
||||||
bal(+< ^+(a [p.b q.b r.a]))
|
bal(+< ^+(a [p.b q.b r.a]))
|
||||||
::
|
::
|
||||||
+- put :: insert new head
|
+- put :: insert new tail
|
||||||
|* b=*
|
|* b=*
|
||||||
|- ^+ a
|
|- ^+ a
|
||||||
?~ a
|
?~ a
|
||||||
@ -9236,12 +9243,13 @@
|
|||||||
++ glob ,[p=logo q=ship r=mark] :: global brand
|
++ glob ,[p=logo q=ship r=mark] :: global brand
|
||||||
++ herd (hypo curd) :: typed card
|
++ herd (hypo curd) :: typed card
|
||||||
++ hide :: standard app state
|
++ hide :: standard app state
|
||||||
$: own=[p=ship q=@tas] :: static identity
|
$: $: our=ship :: owner/operator
|
||||||
|
app=@tas :: app identity
|
||||||
|
== ::
|
||||||
sup=(map bone (pair ship path)) :: subscription set
|
sup=(map bone (pair ship path)) :: subscription set
|
||||||
$= seq :: dynamic sequence
|
|
||||||
$: tik=@ud :: boot number
|
$: tik=@ud :: boot number
|
||||||
num=@ud :: action number
|
act=@ud :: action number
|
||||||
eny=@ :: entropy
|
eny=@uvI :: entropy
|
||||||
lat=@da :: date of last tick
|
lat=@da :: date of last tick
|
||||||
== == ::
|
== == ::
|
||||||
++ hilt ?(0 1 2) :: lead iron gold
|
++ hilt ?(0 1 2) :: lead iron gold
|
||||||
|
@ -2023,7 +2023,6 @@
|
|||||||
raz=(map path race) :: statements inbound
|
raz=(map path race) :: statements inbound
|
||||||
ryl=(map path rill) :: statements outbound
|
ryl=(map path rill) :: statements outbound
|
||||||
== ::
|
== ::
|
||||||
++ bead ,[p=(set beam) q=cage] :: computed result
|
|
||||||
++ beam ,[[p=ship q=desk r=case] s=path] :: global name
|
++ beam ,[[p=ship q=desk r=case] s=path] :: global name
|
||||||
++ beak ,[p=ship q=desk r=case] :: garnish with beak
|
++ beak ,[p=ship q=desk r=case] :: garnish with beak
|
||||||
++ bird :: packet in travel
|
++ bird :: packet in travel
|
||||||
@ -2410,6 +2409,7 @@
|
|||||||
[%call p=silk q=silk] :: slam
|
[%call p=silk q=silk] :: slam
|
||||||
[%cast p=logo q=beak r=silk] :: translate
|
[%cast p=logo q=beak r=silk] :: translate
|
||||||
[%done p=(set beam) q=cage] :: literal
|
[%done p=(set beam) q=cage] :: literal
|
||||||
|
[%dude p=tank q=silk] :: error wrap
|
||||||
[%dune p=(set beam) q=(unit cage)] :: unit literal
|
[%dune p=(set beam) q=(unit cage)] :: unit literal
|
||||||
[%mute p=silk q=(list (pair wing silk))] :: mutant
|
[%mute p=silk q=(list (pair wing silk))] :: mutant
|
||||||
[%pass p=silk q=sill] :: twig construction
|
[%pass p=silk q=sill] :: twig construction
|
||||||
|
@ -1,38 +1,103 @@
|
|||||||
!:
|
!:
|
||||||
=> |%
|
=> |%
|
||||||
++ foobug-state
|
++ axle
|
||||||
$% [%0 bug=@ud]
|
$% [%0 p=@ud]
|
||||||
==
|
==
|
||||||
|
++ gilt
|
||||||
|
$% [%json p=json]
|
||||||
|
[%hymn p=manx]
|
||||||
|
==
|
||||||
|
++ gift
|
||||||
|
$% [%rust gilt]
|
||||||
|
[%rasp gilt]
|
||||||
|
==
|
||||||
|
++ move ,[p=bone q=[%give p=gift]]
|
||||||
--
|
--
|
||||||
|= *
|
|= *
|
||||||
|_ [hid=hide foo=foobug-state]
|
|_ [hid=hide vat=axle]
|
||||||
++ prep
|
++ page
|
||||||
|= old=(unit foobug-state)
|
|
||||||
?~ old +>
|
|
||||||
~& [%prep-hid hid]
|
|
||||||
+>(foo u.old)
|
|
||||||
::
|
|
||||||
++ save
|
|
||||||
^- foobug-state
|
|
||||||
foo(bug +(bug.foo))
|
|
||||||
::
|
|
||||||
++ peer
|
|
||||||
|= [ost=bone you=ship pax=path]
|
|
||||||
~& [%peer [ost you pax]]
|
|
||||||
:_ +> :_ ~
|
|
||||||
:+ ost %give
|
|
||||||
:- %rust
|
|
||||||
:- %html
|
|
||||||
%- crip
|
|
||||||
%+ xmlt |
|
|
||||||
:_ ~
|
|
||||||
^- manx
|
^- manx
|
||||||
;html
|
;html
|
||||||
;head
|
;head
|
||||||
;title: Hi, everyone!
|
;title: Foobug!
|
||||||
==
|
==
|
||||||
;body
|
;body
|
||||||
;p: Hello, world (instance {<bug.foo>})
|
;p: Word: {<p.vat>}.
|
||||||
|
;button(onclick "goof()"): Goof!
|
||||||
|
;script
|
||||||
|
; var c = 0;
|
||||||
|
; var d = 1;
|
||||||
|
; var x = 0;
|
||||||
|
;
|
||||||
|
; function pickup() {
|
||||||
|
; xhr = new XMLHttpRequest();
|
||||||
|
;
|
||||||
|
; console.log("WTF???");
|
||||||
|
; xhr.open("GET", "/zod/goe/foobug/"+port+"/frog/"+d);
|
||||||
|
; xhr.onload = function() {
|
||||||
|
; console.log("pickup");
|
||||||
|
; console.log(this)
|
||||||
|
; change(JSON.parse(this.responseText))
|
||||||
|
; update();
|
||||||
|
; d++;
|
||||||
|
; pickup();
|
||||||
|
; }
|
||||||
|
; xhr.send();
|
||||||
|
; }
|
||||||
|
;
|
||||||
|
; function dude() {
|
||||||
|
; xhr = new XMLHttpRequest();
|
||||||
|
;
|
||||||
|
; xhr.open("POST", "/zod/pos/foobug/"+port+"/frog/goof");
|
||||||
|
; xhr.setRequestHeader("content-type", "text/json")
|
||||||
|
; xhr.onload = function() {
|
||||||
|
; console.log("dude");
|
||||||
|
; console.log(this)
|
||||||
|
; change(JSON.parse(this.responseText))
|
||||||
|
; update();
|
||||||
|
; pickup();
|
||||||
|
; }
|
||||||
|
; xhr.send("{\"a\":1}")
|
||||||
|
; }
|
||||||
|
; dude();
|
||||||
|
;
|
||||||
|
; function change(jon) {
|
||||||
|
; x = jon.x;
|
||||||
|
; }
|
||||||
|
;
|
||||||
|
; function update() {
|
||||||
|
; document.getElementsByTagName("p")[0].innerHTML = "WORD: " + x;
|
||||||
|
; }
|
||||||
|
;
|
||||||
|
; function goof() {
|
||||||
|
; xhr = new XMLHttpRequest();
|
||||||
|
; xhr.onload = function() {
|
||||||
|
; console.log("hi");
|
||||||
|
; console.log(arguments)
|
||||||
|
; c++
|
||||||
|
; }
|
||||||
|
; xhr.open("POST",
|
||||||
|
; "/zod/pom/foobug/"+port+"/"+c)
|
||||||
|
; xhr.setRequestHeader("content-type", "text/json")
|
||||||
|
; xhr.send("{\"a\":1}")
|
||||||
|
; }
|
||||||
|
==
|
||||||
==
|
==
|
||||||
==
|
==
|
||||||
|
::
|
||||||
|
++ peer
|
||||||
|
|= [ost=bone you=ship pax=path]
|
||||||
|
^- [(list move) _+>]
|
||||||
|
?: =(~ pax)
|
||||||
|
[[ost %give %rust %hymn page]~ +>]
|
||||||
|
:_ +>
|
||||||
|
[ost %give %rust %json `json`(joba %x [%n (rsh 3 2 (scot %ui p.vat))])]~
|
||||||
|
::
|
||||||
|
++ poke-json
|
||||||
|
|= [ost=bone you=ship jon=json]
|
||||||
|
^- [(list move) _+>]
|
||||||
|
~& [%poke [%state p.vat] ost you jon]
|
||||||
|
:_ +>(p.vat +(p.vat))
|
||||||
|
:~ [ost %give %rasp %json jon]
|
||||||
|
==
|
||||||
--
|
--
|
||||||
|
44
main/app/philbug/app.js
Normal file
44
main/app/philbug/app.js
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
|
||||||
|
window.onload = function() {
|
||||||
|
data = {}
|
||||||
|
|
||||||
|
change = function(_data) {
|
||||||
|
for(i in _data) {
|
||||||
|
data[i] = _data[i]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
update = function() {
|
||||||
|
for (var i in data) {
|
||||||
|
if ($('#'+i).length < 1) {
|
||||||
|
var e = document.createElement('tr')
|
||||||
|
e.id = i
|
||||||
|
$('#cont tbody').append(e)
|
||||||
|
}
|
||||||
|
$('#'+i).html("<td>~"+i+"</td><td>"+data[i]+"</td>")
|
||||||
|
}
|
||||||
|
$('#cont tbody').append([].sort.call($('#cont tr'), function (a, b) {
|
||||||
|
return parseInt(b.childNodes[1].innerText) -
|
||||||
|
parseInt(a.childNodes[1].innerText)
|
||||||
|
}))
|
||||||
|
}
|
||||||
|
|
||||||
|
goof = function(e) {
|
||||||
|
d = $.map($(".sel"), function(el) {return el.id})
|
||||||
|
window.urb.send(d)
|
||||||
|
}
|
||||||
|
|
||||||
|
window.urb.subscribe("frog","goof", function(err,res) {
|
||||||
|
if(err)
|
||||||
|
return console.log('cannot connect to frog/goof')
|
||||||
|
change(res.data)
|
||||||
|
update()
|
||||||
|
|
||||||
|
return true
|
||||||
|
})
|
||||||
|
|
||||||
|
$('#cont').on('click', 'tr', function (e) {
|
||||||
|
if (!e.ctrlKey) { $('.sel').removeClass('sel') }
|
||||||
|
$(this).addClass('sel')
|
||||||
|
})
|
||||||
|
}
|
101
main/app/philbug/core.hoon
Normal file
101
main/app/philbug/core.hoon
Normal file
@ -0,0 +1,101 @@
|
|||||||
|
!:
|
||||||
|
=> |%
|
||||||
|
++ axle
|
||||||
|
$% [%0 p=(map ,@p ,@ud)]
|
||||||
|
==
|
||||||
|
++ gilt
|
||||||
|
$% [%json p=json]
|
||||||
|
[%hymn p=manx]
|
||||||
|
==
|
||||||
|
++ gift
|
||||||
|
$% [%rust gilt]
|
||||||
|
[%rasp gilt]
|
||||||
|
==
|
||||||
|
++ move ,[p=bone q=[%give p=gift]]
|
||||||
|
--
|
||||||
|
|= *
|
||||||
|
|_ [hid=hide vat=axle]
|
||||||
|
++ incl
|
||||||
|
|= wal=wall
|
||||||
|
%+ turn wal
|
||||||
|
|= tape ;script(type "text/javascript", src +<);
|
||||||
|
::
|
||||||
|
++ root
|
||||||
|
/(scot %p our.hid)/main/(scot %da lat.hid)/app/[app.hid]
|
||||||
|
::
|
||||||
|
++ page
|
||||||
|
^- manx
|
||||||
|
;html
|
||||||
|
;head
|
||||||
|
;title: Foobug!
|
||||||
|
;style
|
||||||
|
; .sel {background: lightgray}
|
||||||
|
; #cont {border-collapse: collapse}
|
||||||
|
==
|
||||||
|
;* %- incl :~
|
||||||
|
"//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.1/jquery.min.js"
|
||||||
|
==
|
||||||
|
;script ;- (trip ;;(,@ .^(%cx (welp root /urb/js))))
|
||||||
|
==
|
||||||
|
;script ;- (trip ;;(,@ .^(%cx (welp root /app/js))))
|
||||||
|
==
|
||||||
|
==
|
||||||
|
;body
|
||||||
|
;p: Hello.
|
||||||
|
;table#cont ;tbody
|
||||||
|
;* %+ turn
|
||||||
|
%+ sort (~(tap by p.vat) ~)
|
||||||
|
|= [p=[u=@p n=@ud] q=[u=@p n=@ud]] (gth n.p n.q)
|
||||||
|
|= [u=@p n=@ud]
|
||||||
|
;tr(id (slag 1 <u>)):(td:(-<u>) td:(-<n>))
|
||||||
|
== ==
|
||||||
|
;p: Select a ship
|
||||||
|
;button(onclick "goof()"): Give 5 points
|
||||||
|
==
|
||||||
|
==
|
||||||
|
::
|
||||||
|
++ peer
|
||||||
|
|= [ost=bone you=ship pax=path]
|
||||||
|
^- [(list move) _+>]
|
||||||
|
?: =(~ pax)
|
||||||
|
=. p.vat (~(put by p.vat) you (fall (~(get by p.vat) you) _@ud))
|
||||||
|
[[ost %give %rust %hymn page]~ +>]
|
||||||
|
:_ +>
|
||||||
|
~[(send-vat ost (turn (~(tap by p.vat)) |=([p=@p q=@ud] p)))]
|
||||||
|
::
|
||||||
|
++ poke-json
|
||||||
|
|= [ost=bone you=ship jon=json]
|
||||||
|
^- [(list move) _+>]
|
||||||
|
~& [%poke [%state p.vat] ost you]
|
||||||
|
=+ j=(,[%a p=(list ,[%s p=@t])] jon)
|
||||||
|
=. p.vat
|
||||||
|
%- ~(tur by p.vat)
|
||||||
|
|= [u=@p n=@ud]
|
||||||
|
?. (lien p.j |=([%s p=@t] =((slav %p (cat 3 '~' p)) u)))
|
||||||
|
n
|
||||||
|
(add 5 n)
|
||||||
|
:_ +>+
|
||||||
|
:- [ost %give %rasp %json jon]
|
||||||
|
%+ turn
|
||||||
|
^- (list bone)
|
||||||
|
%+ ~(rep by sup.hid) *(list bone)
|
||||||
|
|= [p=[p=bone q=[ship path]] q=(list bone)] ^- (list bone)
|
||||||
|
?. =(/goof +.q.p) q
|
||||||
|
[p.p q]
|
||||||
|
|= o=bone
|
||||||
|
%+ send-vat o
|
||||||
|
%+ turn p.j
|
||||||
|
|= [%s p=@t]
|
||||||
|
(slav %p (cat 3 '~' p))
|
||||||
|
++ send-vat
|
||||||
|
|= [o=bone l=(list ,@p)]
|
||||||
|
:* o %give %rust %json %o
|
||||||
|
^- (map ,@t jval)
|
||||||
|
%- mo
|
||||||
|
%+ turn l
|
||||||
|
|= p=@p
|
||||||
|
:- (rsh 3 1 (scot %p p)) :- %n
|
||||||
|
%^ rsh 3 2
|
||||||
|
(scot %ui (fall (~(get by p.vat) p) _@ud))
|
||||||
|
==
|
||||||
|
--
|
111
main/app/philbug/urb.js
Normal file
111
main/app/philbug/urb.js
Normal file
@ -0,0 +1,111 @@
|
|||||||
|
window.urb = {
|
||||||
|
ship: ship,
|
||||||
|
port: port,
|
||||||
|
auto: auto,
|
||||||
|
oryx: oryx,
|
||||||
|
user: user,
|
||||||
|
appn: "foobug",
|
||||||
|
seqn: 0,
|
||||||
|
seqp: 1,
|
||||||
|
dely: 0,
|
||||||
|
|
||||||
|
req: function(method,url,data,json,cb) {
|
||||||
|
var xhr = new XMLHttpRequest()
|
||||||
|
xhr.open(method.toUpperCase(), url)
|
||||||
|
if(json)
|
||||||
|
xhr.setRequestHeader("content-type", "text/json")
|
||||||
|
if(data)
|
||||||
|
xhr.send(JSON.stringify(data))
|
||||||
|
else
|
||||||
|
xhr.send()
|
||||||
|
if(cb) {
|
||||||
|
xhr.onload = function() {
|
||||||
|
cb(null,{
|
||||||
|
"status":this.status,
|
||||||
|
"data":JSON.parse(this.responseText)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
xhr.onerror = function() {
|
||||||
|
cb({
|
||||||
|
"status":this.status,
|
||||||
|
"data":this.responseText
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
subscribe: function(stream,path,cb) {
|
||||||
|
if(!cb)
|
||||||
|
throw new Error("You must supply a callback to urb.subscribe.")
|
||||||
|
|
||||||
|
var method, perm, url, $this
|
||||||
|
|
||||||
|
method = "post"
|
||||||
|
perm = "pis"
|
||||||
|
url = [this.ship,perm,this.user,this.appn,this.port]
|
||||||
|
if(stream) {
|
||||||
|
url.push(stream)
|
||||||
|
if(path)
|
||||||
|
url.push(path)
|
||||||
|
}
|
||||||
|
url = "/"+url.join("/")
|
||||||
|
|
||||||
|
|
||||||
|
$this = this
|
||||||
|
this.req(method,url,{},true,function(err,data) {
|
||||||
|
cb.apply(this,arguments)
|
||||||
|
if(!err) { $this.poll(stream,cb); }
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
send: function(data,cb) {
|
||||||
|
if(!data) { data = {}; }
|
||||||
|
if(!cb) { cb = function() {}; }
|
||||||
|
|
||||||
|
var method, perm, url, $this
|
||||||
|
|
||||||
|
method = "post"
|
||||||
|
perm = "pim"
|
||||||
|
url = [this.ship,perm,this.user,this.appn,this.port,this.seqn]
|
||||||
|
url = "/"+url.join("/")
|
||||||
|
|
||||||
|
this.seqn++
|
||||||
|
|
||||||
|
$this = this
|
||||||
|
this.req(method,url,data,true,function(err,data) {
|
||||||
|
if(err) { $this.seqn--; }
|
||||||
|
cb.apply(this,arguments)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
|
||||||
|
poll: function(stream,cb) {
|
||||||
|
if(!stream)
|
||||||
|
throw new Error("You must supply a stream to urb.poll.")
|
||||||
|
if(!cb)
|
||||||
|
throw new Error("You must supply a callback to urb.poll.")
|
||||||
|
|
||||||
|
var method, perm, url, $this
|
||||||
|
|
||||||
|
method = "get"
|
||||||
|
perm = "gie"
|
||||||
|
if(!stream) { return false; }
|
||||||
|
url = [this.ship,perm,this.user,this.appn,this.port,stream,this.seqp]
|
||||||
|
url = "/"+url.join("/")
|
||||||
|
|
||||||
|
$this = this
|
||||||
|
this.req(method,url,null,false,function(err,data) {
|
||||||
|
if(cb.apply(this,arguments) === false) { return; }
|
||||||
|
|
||||||
|
if(err)
|
||||||
|
$this.dely += 1000
|
||||||
|
else {
|
||||||
|
$this.dely = 0
|
||||||
|
$this.seqp++
|
||||||
|
}
|
||||||
|
|
||||||
|
setTimeout(function() {
|
||||||
|
$this.poll(stream,cb)
|
||||||
|
},$this.dely)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
1
main/sys/hymn/ref/gate.hoon
Normal file
1
main/sys/hymn/ref/gate.hoon
Normal file
@ -0,0 +1 @@
|
|||||||
|
manx
|
3
main/sys/hymn/tan/html/gate.hoon
Normal file
3
main/sys/hymn/tan/html/gate.hoon
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
|= *
|
||||||
|
|= man=manx
|
||||||
|
(crip (xmlt | man ~))
|
4
main/sys/hymn/tan/mime/gate.hoon
Normal file
4
main/sys/hymn/tan/mime/gate.hoon
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
|= *
|
||||||
|
|= man=manx
|
||||||
|
=+ htm=(crip (xmlt | man ~))
|
||||||
|
[/text/html (met 3 htm) htm]
|
Loading…
Reference in New Issue
Block a user