2014-03-12 23:50:39 +04:00
|
|
|
!: :: %eyre, http servant
|
|
|
|
!? 164
|
|
|
|
::::
|
2013-12-15 09:42:27 +04:00
|
|
|
|= pit=vase
|
2013-09-29 00:21:18 +04:00
|
|
|
^- vane :: kernel instrument
|
|
|
|
=> =~
|
2014-03-12 23:50:39 +04:00
|
|
|
|% :: structures
|
2013-09-29 00:21:18 +04:00
|
|
|
++ bolo :: eyre state
|
2014-03-12 23:50:39 +04:00
|
|
|
$: gub=@t :: random identity
|
|
|
|
ged=duct :: client interface
|
|
|
|
ney=@uvI :: rolling entropy
|
|
|
|
dop=(map host ship) :: host aliasing
|
|
|
|
own=(map ship serf) :: live servers
|
|
|
|
ask=[p=@ud q=(map ,@ud ,[p=duct q=hiss])] :: outgoing by number
|
|
|
|
kes=(map duct ,@ud) :: outgoing by duct
|
|
|
|
== ::
|
|
|
|
++ cred :: credential
|
|
|
|
$: sec=? :: https in url
|
|
|
|
hut=? :: host defines ship
|
|
|
|
aut=(map ,@ta (list ,@t)) :: client identities
|
|
|
|
hot=host :: parsed host
|
|
|
|
orx=oryx :: CSRF secret
|
|
|
|
== ::
|
|
|
|
++ cyst :: client session
|
|
|
|
$: ced=cred :: credential
|
|
|
|
cug=(list ,@t) :: unacked cookies
|
|
|
|
lax=@da :: last used
|
|
|
|
rey=[p=@ud q=(map ,@ud pimp)] :: live requests
|
|
|
|
== ::
|
|
|
|
++ dude ,[p=@tas q=@] :: client identity
|
2014-03-13 05:04:58 +04:00
|
|
|
++ loco ,[p=? q=(unit ,@tas) r=path] :: logical construct
|
2014-03-12 23:50:39 +04:00
|
|
|
++ pest :: request in progress
|
|
|
|
$| $? %new :: virgin
|
2014-03-14 21:49:21 +04:00
|
|
|
== ::
|
2014-03-12 23:50:39 +04:00
|
|
|
$% [%err p=@ud q=(list tank)] :: error report
|
|
|
|
[%fin p=love] :: ready to send
|
|
|
|
[%raw p=hiss] :: wild url
|
|
|
|
== ::
|
|
|
|
++ pimp :: traced request
|
|
|
|
$: ful=? :: | === HEAD
|
|
|
|
hen=duct :: event trace
|
|
|
|
sam=seam :: logical request
|
|
|
|
pez=pest :: request state
|
|
|
|
== ::
|
|
|
|
++ serf :: servant per ship
|
|
|
|
$: pef=@t :: server prefix
|
|
|
|
wup=(map logo cyst) :: secure sessions
|
|
|
|
:: wez=(map duct root) :: all routes
|
|
|
|
== ::
|
|
|
|
-- ::
|
|
|
|
|%
|
|
|
|
++ coss :: cookie search
|
|
|
|
|= [nam=@t mah=math]
|
|
|
|
^- (unit logo)
|
|
|
|
=+ ^= cok ^- (list ,@t)
|
|
|
|
=+ cok=(~(get by mah) 'cookie')
|
2014-03-14 21:49:21 +04:00
|
|
|
?~(cok ~ u.cok)
|
2014-03-12 23:50:39 +04:00
|
|
|
|- ^- (unit logo)
|
|
|
|
?~ cok ~
|
|
|
|
~& [%cookie i.cok]
|
|
|
|
=+ mar=`(unit (list ,[p=@t q=@t]))`(rush i.cok cock:epur)
|
|
|
|
?~ mar $(cok t.cok)
|
|
|
|
|- ^- (unit logo)
|
|
|
|
?~ u.mar ^$(cok t.cok)
|
|
|
|
?:(=(nam p.i.u.mar) [~ q.i.u.mar] $(u.mar t.u.mar))
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ ecco :: eat headers
|
2013-12-15 09:42:27 +04:00
|
|
|
|= hed=(list ,[p=@t q=@t])
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ mah=*math
|
|
|
|
|- ^- math
|
|
|
|
?~ hed mah
|
|
|
|
=+ cus=(cass (rip 3 p.i.hed))
|
|
|
|
=+ zeb=(~(get by mah) cus)
|
|
|
|
$(hed t.hed, mah (~(put by mah) cus ?~(zeb [q.i.hed ~] [q.i.hed u.zeb])))
|
|
|
|
::
|
2014-03-12 23:50:39 +04:00
|
|
|
++ loft :: love to response
|
|
|
|
|= luv=love
|
|
|
|
^- httr
|
|
|
|
?- -.luv
|
|
|
|
%mid [200 ~[content-type/(moon p.luv)] [~ q.luv]]
|
|
|
|
%ham [200 ~[content-type/'text/html'] [~ (tact (xmlt p.luv ~))]]
|
|
|
|
%raw p.luv
|
2014-03-14 21:49:21 +04:00
|
|
|
%wan !!
|
|
|
|
%zap :+ p.luv
|
2014-03-12 23:50:39 +04:00
|
|
|
~[content-type/'text/plain']
|
|
|
|
:- ~
|
|
|
|
%- tell
|
2014-03-14 21:49:21 +04:00
|
|
|
|- ^- wall
|
|
|
|
?~ q.luv ~
|
2014-03-12 23:50:39 +04:00
|
|
|
(weld (~(win re i.q.luv) 0 120) $(q.luv t.q.luv))
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
::
|
2014-03-12 23:50:39 +04:00
|
|
|
++ lobo :: vase to love
|
|
|
|
|= [ext=@tas vax=vase]
|
|
|
|
^- (unit love)
|
|
|
|
?+ ext ~
|
2014-03-14 21:49:21 +04:00
|
|
|
%html
|
2014-03-12 23:50:39 +04:00
|
|
|
?. (~(nest ut [%atom %$]) | p.vax) ~
|
|
|
|
?> ?=(@ q.vax)
|
|
|
|
[~ %mid /text/html (met 3 q.vax) q.vax]
|
|
|
|
==
|
2013-09-29 00:21:18 +04:00
|
|
|
--
|
2014-03-12 23:50:39 +04:00
|
|
|
|% :: functions
|
|
|
|
++ ye :: per event
|
2014-03-14 21:49:21 +04:00
|
|
|
=| $: $: $: wru=(unit writ) :: event authority
|
2014-03-12 23:50:39 +04:00
|
|
|
tea=wire :: event place
|
|
|
|
hen=duct :: event floor
|
|
|
|
fav=card :: event data
|
|
|
|
== ::
|
|
|
|
$: now=@da :: event date
|
|
|
|
eny=@ :: unique entropy
|
|
|
|
sky=$+(* (unit)) :: system namespace
|
2014-03-14 21:49:21 +04:00
|
|
|
== ::
|
2014-03-12 23:50:39 +04:00
|
|
|
mow=(list move) :: pending actions
|
|
|
|
== ::
|
|
|
|
bolo :: all vane state
|
|
|
|
== ::
|
|
|
|
=* bol ->
|
|
|
|
|%
|
|
|
|
++ abet
|
|
|
|
^- [(list move) bolo]
|
|
|
|
[(flop mow) bol]
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2014-03-12 23:50:39 +04:00
|
|
|
++ adit
|
|
|
|
.(ney (mix eny ney))
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2014-03-12 23:50:39 +04:00
|
|
|
++ apex
|
|
|
|
|- ^+ +
|
2014-03-14 21:49:21 +04:00
|
|
|
?+ -.fav
|
2014-03-12 23:50:39 +04:00
|
|
|
~|([%ye-bad -.fav] !!)
|
|
|
|
::
|
|
|
|
%born +(ged hen) :: register external
|
|
|
|
%that :: outbound response
|
|
|
|
?> ?=([@ @ @ ~] tea) ::
|
|
|
|
=+ :* our=(slaw %p i.tea) :: ship
|
|
|
|
ses=i.t.tea :: session
|
|
|
|
num=(slaw %ud i.t.t.tea) :: request in session
|
|
|
|
== ::
|
|
|
|
!!
|
|
|
|
::
|
|
|
|
%them :: outbound request
|
|
|
|
?~ p.fav
|
|
|
|
=+ sud=(need (~(get by kes) hen))
|
|
|
|
%= +.$
|
|
|
|
mow :_(mow [~ ged [%thus sud ~]])
|
|
|
|
q.ask (~(del by q.ask) sud)
|
|
|
|
kes (~(del by kes) hen)
|
|
|
|
==
|
|
|
|
%= +.$
|
|
|
|
mow :_(mow [~ ged [%thus p.ask p.fav]])
|
|
|
|
p.ask +(p.ask)
|
|
|
|
q.ask (~(put by q.ask) p.ask hen u.p.fav)
|
|
|
|
kes (~(put by kes) hen p.ask)
|
|
|
|
==
|
|
|
|
::
|
|
|
|
%they :: inbound response
|
|
|
|
=+ kas=(need (~(get by q.ask) p.fav))
|
|
|
|
%= +.$
|
|
|
|
mow :_(mow [~ p.kas [%thou q.fav]])
|
|
|
|
q.ask (~(del by q.ask) p.kas)
|
|
|
|
==
|
|
|
|
::
|
|
|
|
%this :: inbound request
|
|
|
|
=* sec p.fav :: ? :: https bit
|
|
|
|
=* heq r.fav :: httq :: request content
|
|
|
|
=+ ryp=`quri`(rash q.heq zest:epur)
|
|
|
|
=+ mah=(ecco r.heq)
|
|
|
|
=+ ^= pul ^- purl
|
|
|
|
?- -.ryp
|
|
|
|
& ?>(=(sec p.p.p.ryp) p.ryp)
|
|
|
|
| =+ hot=(~(get by mah) %host)
|
|
|
|
?> ?=([~ @ ~] hot)
|
|
|
|
[[sec (rash i.u.hot thor:epur)] p.ryp q.ryp]
|
|
|
|
==
|
|
|
|
(hell pul [p.heq mah s.heq])
|
|
|
|
==
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2014-03-12 23:50:39 +04:00
|
|
|
++ doss :: host to ship
|
|
|
|
|= hot=host
|
|
|
|
^- (unit ship)
|
|
|
|
=+ gow=(~(get by dop) hot)
|
|
|
|
?^ gow gow
|
|
|
|
?. &(?=(& -.hot) ?=(^ p.hot)) ~
|
|
|
|
(rush (cat 3 '~' i.p.hot) fed:ag)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2014-03-12 23:50:39 +04:00
|
|
|
++ fail :: request failed
|
|
|
|
|= [sas=@ud str=tape]
|
|
|
|
^+ +>
|
|
|
|
%- muff
|
2013-09-29 00:21:18 +04:00
|
|
|
:- %thou
|
|
|
|
^- httr
|
2014-03-12 23:50:39 +04:00
|
|
|
[sas ~[content-type/'text/plain'] [~ (tact str)]]
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2014-03-12 23:50:39 +04:00
|
|
|
++ hell :: request, no ship
|
|
|
|
|= [pul=purl moh=moth]
|
|
|
|
^+ +>
|
|
|
|
=^ wiq q.q.pul
|
|
|
|
?~ q.q.pul [~ ~]
|
2014-03-13 05:04:58 +04:00
|
|
|
=+ nam=(cat 3 '~' i.q.q.pul)
|
|
|
|
=+ gow=(rush i.q.q.pul fed:ag)
|
2014-03-12 23:50:39 +04:00
|
|
|
^- [(unit ship) (list ,@t)]
|
|
|
|
?~(gow [~ q.q.pul] [gow t.q.q.pul])
|
|
|
|
(huff ?^(wiq wiq (doss r.p.pul)) ?=(^ wiq) pul moh)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2014-03-12 23:50:39 +04:00
|
|
|
++ huff :: request by ship
|
|
|
|
|= [oar=(unit ship) hut=? pul=purl moh=moth]
|
|
|
|
^+ +>
|
|
|
|
=* sec p.p.pul
|
|
|
|
?~ oar
|
|
|
|
(fail 400 "urbit: url does not match a vessel")
|
|
|
|
=+ ^= sef ^- serf
|
|
|
|
=+ suf=(~(get by own) u.oar)
|
|
|
|
?^ suf u.suf
|
|
|
|
=+ sef=*serf
|
|
|
|
sef(pef (cat 3 gub (rsh 3 1 (scot %p u.oar))))
|
|
|
|
=+ ^= saw ^- [p=logo q=cyst]
|
|
|
|
=+ lig=(coss pef.sef q.moh)
|
2014-03-14 21:49:21 +04:00
|
|
|
?^ lig
|
2014-03-12 23:50:39 +04:00
|
|
|
=+ cyz=(need (~(get by wup.sef) u.lig))
|
|
|
|
[u.lig cyz(cug ~)]
|
|
|
|
=+ ses=(rsh 6 1 (scot %p (end 6 1 ney)))
|
|
|
|
:- ses
|
|
|
|
^- cyst
|
|
|
|
:* ^- cred
|
|
|
|
:* sec
|
|
|
|
hut
|
2014-03-14 21:49:21 +04:00
|
|
|
~
|
2014-03-12 23:50:39 +04:00
|
|
|
r.p.pul
|
|
|
|
?.(sec %$ (rsh 3 1 (scot %p (end 6 1 (shaf %oryx ses)))))
|
|
|
|
==
|
|
|
|
::
|
|
|
|
:_ ~
|
|
|
|
%^ cat 3
|
|
|
|
(cat 3 (cat 3 pef.sef '=') ses)
|
|
|
|
(cat 3 '; HttpOnly' ?.(sec '' '; Secure'))
|
|
|
|
::
|
|
|
|
now
|
|
|
|
[1 ~]
|
|
|
|
==
|
|
|
|
abet:work:(~(into ya [u.oar p.saw] sef q.saw) pul moh)
|
|
|
|
::
|
2014-03-13 05:04:58 +04:00
|
|
|
++ lend :: load directory node
|
|
|
|
|= pax=path
|
|
|
|
((hard arch) (need (sky %cy pax)))
|
|
|
|
::
|
|
|
|
++ lick :: load file
|
|
|
|
|= pax=path
|
|
|
|
(need (sky %cx path))
|
|
|
|
::
|
|
|
|
++ loot :: load extension tree
|
|
|
|
|= pax=path
|
|
|
|
=| [tex=path all=(list path)]
|
|
|
|
|- ^- (list path)
|
|
|
|
=+ arc=(lend pax)
|
|
|
|
=+ ryx=(~(tap by r.arc) ~)
|
|
|
|
=- ?~(q.arc orx [tex orx])
|
|
|
|
^= orx
|
|
|
|
|- ^- (list path)
|
|
|
|
?~ ryx all
|
|
|
|
%= ^$
|
|
|
|
pax (weld pax `path`[p.i.ryx ~])
|
|
|
|
tex [p.i.ryx tex]
|
|
|
|
all $(ryx t.ryx)
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ loud :: locations by file
|
|
|
|
|= [ext=@tas pre=path mid=path]
|
|
|
|
^- (list ,[p=path q=path r=loco])
|
2014-03-14 21:49:21 +04:00
|
|
|
=| suf=path
|
2014-03-13 05:04:58 +04:00
|
|
|
|- ^- (list ,[p=path q=path r=loco])
|
|
|
|
=+ pax=(weld pre (flop mid))
|
|
|
|
=+ lot=(loot pax)
|
|
|
|
=- ?^ tol tol
|
|
|
|
?~ mid ~
|
|
|
|
$(mid t.mid, suf [i.mid suf])
|
|
|
|
^= tol
|
|
|
|
|- ^- (list ,[p=path q=path r=loco])
|
|
|
|
?~ lot ~
|
|
|
|
=+ mor=$(lot t.lot)
|
|
|
|
?~ i.lot mor
|
|
|
|
=+ axp=(weld pax `path`(flop i.lot))
|
|
|
|
?: ?=([%hoon @ ~] i.lot)
|
|
|
|
:_(mor [mid suf | ?:(=(ext i.t.i.lot) ~ [~ i.t.i.lot]) axp])
|
|
|
|
?: ?=([@ ~] i.lot)
|
|
|
|
:_(mor [mid suf & ?:(=(ext i.i.lot) ~ [~ i.i.lot]) axp])
|
|
|
|
mor
|
|
|
|
::
|
|
|
|
++ loup :: weak synthesis
|
|
|
|
|= [ext=@tas toe=tube]
|
|
|
|
^- (unit gank)
|
|
|
|
=+ pre=`path`[p.toe q.toe r.toe ~]
|
|
|
|
=+ syn=(weld pre `path`[%syn ~])
|
|
|
|
=+ luc=(loud ext syn (flop s.toe))
|
|
|
|
=+ ^= waz
|
|
|
|
|- ^- $: p=(list ,[p=path q=path r=path])
|
|
|
|
q=(list ,[p=path q=path r=path])
|
|
|
|
r=(list ,[p=path q=path r=[p=@tas q=path]])
|
|
|
|
s=(list ,[p=path q=path r=[p=@tas q=path]])
|
|
|
|
==
|
|
|
|
?~ luc [~ ~ ~ ~]
|
|
|
|
=+ mor=$(luc t.luc)
|
|
|
|
?- -.r.i.luc
|
2014-03-14 21:49:21 +04:00
|
|
|
& ?~ q.r.i.luc
|
2014-03-13 05:04:58 +04:00
|
|
|
[[[p.i.luc q.i.luc r.r.i.luc] p.mor] q.mor r.mor s.mor]
|
|
|
|
[p.mor q.mor [[p.i.luc q.i.luc u.q.r.i.luc r.r.i.luc] r.mor] s.mor]
|
2014-03-14 21:49:21 +04:00
|
|
|
| ?~ q.r.i.luc
|
2014-03-13 05:04:58 +04:00
|
|
|
[p.mor [[p.i.luc q.i.luc r.r.i.luc] q.mor] r.mor s.mor]
|
|
|
|
[p.mor q.mor r.mor [[p.i.luc q.i.luc u.q.r.i.luc r.r.i.luc] s.mor]]
|
|
|
|
==
|
|
|
|
?^ p.waz :: direct load
|
|
|
|
=+ fil=(need (sky %cx r.i.p.waz))
|
|
|
|
[~ %& ^-(vase [?@(fil [%atom %$] %noun) fil])]
|
|
|
|
?^ q.waz :: indirect load
|
|
|
|
=+ src=(need (sky %cx r.i.q.waz))
|
|
|
|
=+ sam=!>([ext pre p.i.q.waz q.i.q.waz])
|
|
|
|
[~ `gank`(musk r.i.q.waz src sam)]
|
2014-03-14 21:49:21 +04:00
|
|
|
~
|
2014-03-13 05:04:58 +04:00
|
|
|
::
|
2014-03-12 23:50:39 +04:00
|
|
|
++ muff :: return card
|
|
|
|
|= fav=card
|
|
|
|
+>(mow :_(mow [wru hen fav]))
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2014-03-12 23:50:39 +04:00
|
|
|
++ ya :: session engine
|
|
|
|
=| [[our=ship ses=logo] serf cyst]
|
|
|
|
=* sef ->-
|
|
|
|
=* cyz ->+
|
|
|
|
|%
|
|
|
|
++ abet :: resolve engine
|
|
|
|
^+ ..ya
|
|
|
|
%= ..ya
|
|
|
|
own
|
|
|
|
(~(put by own) our sef(wup (~(put by wup) ses cyz)))
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ funk :: functional request
|
|
|
|
|= [imp=? uxt=(unit term) paw=(list ,@t) quy=quay]
|
|
|
|
^- (unit seam)
|
2014-03-14 21:49:21 +04:00
|
|
|
?~ paw
|
2014-03-12 23:50:39 +04:00
|
|
|
~& %no-funk
|
|
|
|
~
|
2014-03-14 21:49:21 +04:00
|
|
|
?. ((sane %tas) i.paw)
|
2014-03-12 23:50:39 +04:00
|
|
|
~& %mad-desk
|
|
|
|
~
|
|
|
|
=^ cuz t.paw
|
|
|
|
^- [(unit ,@ta) (list ,@t)]
|
|
|
|
?: imp
|
|
|
|
[[~ (scot %da now)] t.paw]
|
|
|
|
?~ t.paw
|
|
|
|
[~ ~]
|
|
|
|
=+ zac=(slay i.t.paw)
|
|
|
|
?. ?=([~ %$ ?(%ud %da %tas) *] zac) [~ ~]
|
|
|
|
[[~ i.t.paw] t.t.paw]
|
2014-03-14 21:49:21 +04:00
|
|
|
?~ cuz
|
2014-03-12 23:50:39 +04:00
|
|
|
~& %funk-case
|
|
|
|
~
|
2014-03-14 21:49:21 +04:00
|
|
|
?. (levy t.paw (sane %ta))
|
|
|
|
~& %funk-path
|
2014-03-12 23:50:39 +04:00
|
|
|
~
|
|
|
|
:+ ~ %fun
|
|
|
|
:- ?~(uxt %html u.uxt)
|
|
|
|
^- tube
|
|
|
|
:* (scot %p our)
|
|
|
|
i.paw
|
|
|
|
u.cuz
|
|
|
|
%+ weld
|
|
|
|
`path`t.paw
|
|
|
|
^- path
|
|
|
|
:_ ~
|
|
|
|
%~ rent co
|
|
|
|
:~ %many
|
|
|
|
[%blob ced]
|
|
|
|
:- %many
|
2014-03-14 21:49:21 +04:00
|
|
|
%+ turn quy
|
2014-03-12 23:50:39 +04:00
|
|
|
|= [a=@t b=@t]
|
|
|
|
`coin`[%many [%$ %t a] [%$ %t b] ~]
|
2014-03-14 21:49:21 +04:00
|
|
|
==
|
2014-03-12 23:50:39 +04:00
|
|
|
==
|
|
|
|
::
|
|
|
|
++ holy :: structured request
|
|
|
|
|= [pul=purl moh=moth]
|
|
|
|
^- (unit seam)
|
|
|
|
?~ q.q.pul ~
|
|
|
|
=* nep i.q.q.pul
|
|
|
|
=* paw t.q.q.pul
|
|
|
|
=+ [one=(end 3 1 nep) two=(cut 3 [1 1] nep) tri=(cut 3 [2 1] nep)]
|
|
|
|
?. ?& ?- p.moh
|
|
|
|
%conn |
|
|
|
|
%delt |
|
|
|
|
%get =(%g one)
|
|
|
|
%head =(%g one)
|
|
|
|
%opts |
|
|
|
|
%post =(%p one)
|
|
|
|
%put =(%t one)
|
|
|
|
%trac |
|
|
|
|
==
|
|
|
|
?+ two ~
|
|
|
|
%e & :: stranger
|
|
|
|
%g p.p.pul :: guest
|
|
|
|
%n !=(~ aut.ced) :: neighbor
|
|
|
|
%s =+ urb=(~(get by aut.ced) %$) :: self
|
|
|
|
?~(urb | (levy u.urb |=(a=@ =(our a))))
|
|
|
|
==
|
|
|
|
?= $? %a :: application
|
|
|
|
%c :: console
|
|
|
|
%f :: functional
|
|
|
|
%l :: login
|
|
|
|
%n :: now
|
|
|
|
==
|
|
|
|
tri
|
|
|
|
=(3 (met 3 nep))
|
|
|
|
==
|
|
|
|
~& [%holy-bad nep]
|
|
|
|
~
|
|
|
|
?- tri
|
|
|
|
?(%f %n) (funk =(%n tri) p.q.pul paw r.pul)
|
|
|
|
?(%a %c %l) !!
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ step :: step in work
|
|
|
|
|- ^+ +
|
|
|
|
=^ zib +.$
|
|
|
|
=+ yub=q.rey
|
|
|
|
|- ^- [(list ,[p=@ud q=pimp]) _+.^$]
|
|
|
|
?~ yub [~ +.^$]
|
|
|
|
=^ sin +.^$ $(yub l.yub)
|
2014-03-14 21:49:21 +04:00
|
|
|
=^ dex +.^$ $(yub r.yub)
|
2014-03-12 23:50:39 +04:00
|
|
|
=^ top +.^$ (wink q.n.yub)
|
|
|
|
=+ pot=`(list ,[p=@ud q=pimp])`?~(top ~ [[p.n.yub u.top] ~])
|
|
|
|
[:(weld pot dex sin) +.^$]
|
|
|
|
+.$(q.rey (~(gas by `_q.rey`~) zib))
|
|
|
|
::
|
|
|
|
++ wink :: advance request
|
|
|
|
|= pip=pimp
|
|
|
|
^- [(unit pimp) _+>]
|
|
|
|
?- pez.pip
|
|
|
|
%new
|
|
|
|
?- -.sam.pip
|
|
|
|
%fun
|
|
|
|
:_ +>.$
|
|
|
|
:- ~
|
|
|
|
%= pip
|
|
|
|
pez
|
|
|
|
^- pest
|
|
|
|
=+ syt=(loup p.sam.pip q.sam.pip)
|
|
|
|
?~ syt
|
|
|
|
[%err 404 [[%leaf "not found"] ~]]
|
|
|
|
?- -.u.syt
|
|
|
|
| [%err 500 p.u.syt]
|
|
|
|
&
|
|
|
|
=+ luy=(lobo p.sam.pip p.u.syt)
|
|
|
|
?~ luy [%err 500 [[%leaf "inappropriate file"] ~]]
|
|
|
|
[%fin u.luy]
|
|
|
|
==
|
|
|
|
==
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
2014-03-12 23:50:39 +04:00
|
|
|
::
|
|
|
|
[%err *]
|
|
|
|
[~ +>.$(..ya (muff [%thou (loft `love`[%zap +.pez.pip])]))]
|
|
|
|
::
|
|
|
|
[%fin *]
|
|
|
|
=+ har=(loft p.pez.pip)
|
|
|
|
=. q.har (weld (turn cug |=(a=@t ['set-cookie' a])) q.har)
|
|
|
|
[~ +>.$(..ya (muff [%thou har]))]
|
|
|
|
::
|
|
|
|
[%raw *]
|
|
|
|
:_ +>.$
|
|
|
|
^- (unit pimp)
|
|
|
|
:- ~
|
|
|
|
=+ hoy=(holy p.pez.pip)
|
|
|
|
?~ hoy
|
|
|
|
pip(pez [%err 404 [[%leaf "invalid request"] ~]])
|
|
|
|
pip(sam u.hoy, pez %new)
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ work
|
|
|
|
|- ^+ +
|
|
|
|
=+ sez=step
|
|
|
|
?: =(rey.sez rey) sez
|
|
|
|
$(+ sez)
|
|
|
|
::
|
|
|
|
++ into
|
2014-03-14 21:49:21 +04:00
|
|
|
|= [pul=purl moh=moth]
|
2014-03-12 23:50:39 +04:00
|
|
|
^+ +>
|
|
|
|
=+ num=p.rey
|
|
|
|
%= +>.$
|
|
|
|
p.rey +(num)
|
|
|
|
q.rey
|
|
|
|
%+ ~(put by q.rey) num
|
|
|
|
^- pimp
|
|
|
|
:* !?=(%head p.moh)
|
|
|
|
hen
|
|
|
|
*seam
|
|
|
|
`pest`[%raw pul moh]
|
|
|
|
==
|
|
|
|
==
|
|
|
|
--
|
|
|
|
--
|
|
|
|
--
|
|
|
|
. ==
|
|
|
|
=| bolo
|
|
|
|
=* bol -
|
|
|
|
|= [now=@da eny=@ sky=$+(* (unit))] :: activate
|
|
|
|
^? :: opaque core
|
|
|
|
|% ::
|
|
|
|
++ beat :: process move
|
|
|
|
|= [wru=(unit writ) tea=wire hen=duct fav=curd]
|
|
|
|
=> .(fav ((hard card) fav))
|
|
|
|
?: ?=(%crud -.fav)
|
|
|
|
[[[wru [/d hen] %flog fav] ~] ..^$]
|
|
|
|
^- [p=(list move) q=vane]
|
|
|
|
=. gub ?.(=(0 gub) gub (cat 3 (scot %p (end 6 1 eny)) '-'))
|
2014-03-14 21:49:21 +04:00
|
|
|
=^ mos bol
|
2014-03-12 23:50:39 +04:00
|
|
|
abet:apex:~(adit ye [[wru tea hen fav] [now eny sky] ~] bol)
|
|
|
|
[mos ..^$]
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2013-12-09 01:23:03 +04:00
|
|
|
++ come
|
2014-01-06 05:52:37 +04:00
|
|
|
|= [sam=? old=vase]
|
2013-09-29 00:21:18 +04:00
|
|
|
^- vane
|
2014-01-07 00:37:42 +04:00
|
|
|
(load old)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ doze
|
2013-12-15 09:42:27 +04:00
|
|
|
|= [now=@da hen=duct]
|
2013-09-29 00:21:18 +04:00
|
|
|
^- (unit ,@da)
|
|
|
|
~
|
|
|
|
::
|
|
|
|
++ load
|
2013-12-15 09:42:27 +04:00
|
|
|
|= new=vase
|
2013-09-29 00:21:18 +04:00
|
|
|
^- vane
|
2014-03-14 21:49:21 +04:00
|
|
|
?. (~(nest ut -:!>(`bolo`+>-.^$)) | p.new)
|
2014-03-12 23:50:39 +04:00
|
|
|
~& %eyre-reset
|
|
|
|
..^$
|
2013-09-29 00:21:18 +04:00
|
|
|
..^$(+>- (bolo q.new))
|
|
|
|
::
|
2013-12-09 01:23:03 +04:00
|
|
|
++ raze
|
2013-09-29 00:21:18 +04:00
|
|
|
^- vane
|
|
|
|
..$(+>- *bolo)
|
|
|
|
::
|
|
|
|
++ scry
|
2013-12-15 09:42:27 +04:00
|
|
|
|= [our=ship ren=@tas who=ship syd=disc lot=coin tyl=path]
|
2013-09-29 00:21:18 +04:00
|
|
|
^- (unit)
|
|
|
|
~
|
|
|
|
::
|
|
|
|
++ stay `vase`!>(`bolo`+>-.$)
|
2014-01-07 00:37:42 +04:00
|
|
|
++ vern [164 0]
|
2013-09-29 00:21:18 +04:00
|
|
|
--
|