2016-07-25 00:23:28 +03:00
|
|
|
:: :: ::
|
|
|
|
:::: /hoon/ames/arvo :::::: vane prelude
|
|
|
|
!: :: ::
|
|
|
|
|= pit/vase :: kernel vase
|
|
|
|
=> =~ ::
|
|
|
|
:: :: ::
|
|
|
|
:::: :::::: ames structures
|
|
|
|
:: :: ::
|
|
|
|
|% ::
|
2016-07-26 02:34:38 +03:00
|
|
|
++ bait {p/skin q/@ud r/dove} :: fmt nrecvd spec
|
2016-07-25 00:23:28 +03:00
|
|
|
++ bath :: per friend
|
|
|
|
$: fon/(map bole lock) :: inbound locks
|
|
|
|
zam/scar :: outbound boles
|
|
|
|
sal/(map bole colt) :: outbound flows
|
|
|
|
nup/(map bole pump) :: outbound pumps
|
|
|
|
== ::
|
|
|
|
++ bole bone :: inbound opaque
|
|
|
|
++ boon :: internal effect
|
|
|
|
$% {$acid $~} :: drop input
|
|
|
|
{$beer p/ship q/@uvG} :: gained ownership
|
|
|
|
{$coke p/sock q/duct r/path s/coop} :: forward ack
|
|
|
|
{$cola p/sock q/bole r/path s/coop} :: reverse ack
|
|
|
|
{$mead p/lane q/rock} :: forward to self
|
|
|
|
{$malt p/sock q/duct r/path s/*} :: response
|
|
|
|
{$milk p/sock q/bole r/path s/*} :: request
|
|
|
|
{$ouzo p/lane q/rock} :: transmit packet
|
|
|
|
{$wine p/sock q/tape} :: notify user
|
|
|
|
== ::
|
|
|
|
++ cake {p/sock q/skin r/@} :: top level packet
|
|
|
|
++ clot :: symmetric key state
|
|
|
|
$: yed/(unit {p/hand q/code}) :: outbound
|
|
|
|
heg/(map hand code) :: proposed
|
|
|
|
qim/(map hand code) :: inbound
|
|
|
|
== ::
|
2016-07-26 02:34:38 +03:00
|
|
|
++ coal :: live packet state
|
|
|
|
$: vig/? :: true iff virgin
|
|
|
|
tiq/tick :: message number
|
|
|
|
far/@ud :: fragment number
|
|
|
|
wen/@da :: date when lost
|
2016-07-25 00:23:28 +03:00
|
|
|
== ::
|
|
|
|
++ colt :: outbound state
|
2016-07-26 02:34:38 +03:00
|
|
|
$: seq/tick :: next tick to fill
|
|
|
|
lac/tick :: acked tick until
|
2016-07-25 00:23:28 +03:00
|
|
|
mis/(map tick (pair path coop)) :: nonsequential acks
|
2016-07-26 02:34:38 +03:00
|
|
|
pum/puma :: flow control
|
|
|
|
cob/(map tick comb) :: live messages
|
|
|
|
liv/(qeu coal) :: live packets
|
|
|
|
== ::
|
|
|
|
++ comb :: live message
|
|
|
|
$: num/frag :: number of fragments
|
|
|
|
sen/frag :: sent pointer
|
|
|
|
ded/(set frag) :: sent but lost
|
|
|
|
ack/frag :: number received
|
|
|
|
cup/(unit coop) :: ack if any
|
|
|
|
rox/(map frag rock) :: raw fragments
|
2016-07-25 00:23:28 +03:00
|
|
|
== ::
|
|
|
|
++ corn :: flow by server
|
|
|
|
$: hen/duct :: admin channel
|
|
|
|
wab/(map ship bath) :: relationship
|
|
|
|
pod/pond :: scheduling pond
|
|
|
|
== ::
|
|
|
|
++ corp (unit (each cape coop)) :: ack record
|
|
|
|
++ door :: foreign contact
|
|
|
|
$: wod/road :: connection to
|
|
|
|
wyl/will :: inferred mirror
|
|
|
|
caq/clot :: symmetric key state
|
|
|
|
== ::
|
|
|
|
++ dove {p/@ud q/(map @ud @)} :: count 13-blocks
|
|
|
|
++ flap @uvH :: network packet id
|
|
|
|
++ flea (pair bole tick) :: message id
|
2016-07-26 02:34:38 +03:00
|
|
|
++ frag @ud :: fragment number
|
2016-07-25 00:23:28 +03:00
|
|
|
++ fort :: formal state
|
|
|
|
$: $0 :: version
|
|
|
|
gad/duct :: client interface
|
|
|
|
hop/@da :: network boot date
|
|
|
|
ton/town :: security
|
|
|
|
zac/(map ship corn) :: flows by server
|
|
|
|
== ::
|
|
|
|
++ lock :: inbound sequencer
|
|
|
|
$: laq/tick :: acknowledged until
|
|
|
|
nys/(map tick bait) :: inbound partials
|
|
|
|
laz/(unit (trel flea flap lane)) :: awaiting app
|
|
|
|
exc/(map tick ares) :: negative acks
|
|
|
|
== ::
|
|
|
|
++ meal :: payload
|
|
|
|
$% {$back p/bone q/flap r/coop s/@dr} :: acknowledgment
|
|
|
|
{$bond p/flea q/path r/*} :: message
|
|
|
|
{$carp p/moan q/(pair @ud @)} :: fragment
|
|
|
|
{$fore p/ship q/(unit lane) r/@} :: forwarded packet
|
|
|
|
== ::
|
|
|
|
++ moan :: message invariant
|
|
|
|
$: {kos/bole liq/tick} :: flow identity
|
|
|
|
syn/@ :: skin number
|
|
|
|
cnt/@ :: number of packets
|
|
|
|
== ::
|
|
|
|
++ road :: secured oneway route
|
|
|
|
$: exp/@da :: expiration date
|
|
|
|
lun/(unit lane) :: route to friend
|
|
|
|
lew/will :: will of friend
|
|
|
|
== ::
|
|
|
|
++ pipe (pair ship bole) :: session identity
|
|
|
|
++ pith :: ack effect
|
|
|
|
$: byt/@ud :: packet bytes
|
|
|
|
lop/@ud :: num out-of-order
|
|
|
|
rut/(unit @dr) :: roundtrip update
|
|
|
|
== ::
|
|
|
|
++ plan :: session state
|
|
|
|
$: unc/(map flap tick) :: packet to message
|
|
|
|
nem/(map tick (pair @ud path)) :: number unacked /msg
|
|
|
|
chu/(qeu pony) :: queued packets
|
|
|
|
== ::
|
|
|
|
++ plod :: burst statistics
|
|
|
|
$: byt/@ud :: bytes moved
|
|
|
|
:: bys/@ud :: bandwidth/second
|
|
|
|
rtm/@dr :: minimum rtt
|
|
|
|
rtg/@dr :: average rtt
|
|
|
|
rts/@dr :: smoothed rtt
|
|
|
|
== ::
|
|
|
|
++ plow :: burst state
|
|
|
|
$: fax/@da :: start of burst
|
|
|
|
lax/@da :: last ack
|
|
|
|
pad/plod :: statistics
|
|
|
|
== ::
|
|
|
|
++ pond (tree (pair @da pipe)) :: scheduler
|
|
|
|
++ pole (pair flap rock) :: hashed packet
|
|
|
|
++ pony (qual (unit @da) ? tick pole) :: sent/virgin/seq/pack
|
|
|
|
++ pomp :: traverse update
|
|
|
|
$: byt/@ud :: bytes received
|
|
|
|
boz/@ud :: packets lost
|
|
|
|
rut/(unit @dr) :: round-trip update
|
|
|
|
== ::
|
2016-07-26 02:34:38 +03:00
|
|
|
++ puma :: packet pump
|
|
|
|
$: nex/(unit @da) :: next wake; derived
|
|
|
|
win/@ud :: logical window bytes
|
|
|
|
old/plod :: long-running state
|
|
|
|
sac/plow :: current flow
|
|
|
|
== ::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ pump :: new packet pump
|
|
|
|
$: nex/(unit @da) :: next wake; derived
|
|
|
|
win/@ud :: logical window bytes
|
|
|
|
old/plod :: long-running state
|
|
|
|
sac/plow :: current flow
|
|
|
|
plan :: data
|
|
|
|
== ::
|
|
|
|
++ shed :: packet sender
|
|
|
|
$: $: rtt/@dr :: smoothed rtt
|
|
|
|
rto/@dr :: retransmit timeout
|
|
|
|
rtn/(unit @da) :: next timeout
|
|
|
|
rue/(unit @da) :: last heard from
|
|
|
|
== ::
|
|
|
|
$: nus/@ud :: number sent
|
|
|
|
nif/@ud :: number live
|
|
|
|
nep/@ud :: next expected
|
|
|
|
caw/@ud :: logical window
|
|
|
|
cag/@ud :: congest thresh
|
|
|
|
== ::
|
|
|
|
$: diq/(map flap @ud) :: packets sent
|
|
|
|
pyz/(map flea @ud) :: message/unacked
|
|
|
|
puq/(qeu {p/@ud q/soul}) :: packet queue
|
|
|
|
== ::
|
|
|
|
== ::
|
|
|
|
++ skin ?($none $open $fast $full) :: encoding stem
|
|
|
|
++ soul :: packet in travel
|
|
|
|
$: fel/flea :: message identity
|
|
|
|
cha/path :: channel
|
|
|
|
nux/@ud :: xmission count
|
|
|
|
liv/? :: deemed live
|
|
|
|
lys/@da :: last sent
|
|
|
|
pac/rock :: packet data
|
|
|
|
== ::
|
|
|
|
++ sufi :: domestic host
|
|
|
|
$: hoy/(list ship) :: hierarchy
|
|
|
|
val/wund :: private keys
|
|
|
|
law/will :: server will
|
|
|
|
seh/(map hand {p/ship q/@da}) :: key cache
|
|
|
|
hoc/(map ship door) :: neighborhood
|
|
|
|
== ::
|
|
|
|
++ tick @ud :: message sequence no
|
|
|
|
++ town :: all security state
|
|
|
|
$: lit/@ud :: imperial modulus
|
|
|
|
any/@ :: entropy
|
|
|
|
urb/(map ship sufi) :: all keys and routes
|
|
|
|
fak/? ::
|
|
|
|
== ::
|
|
|
|
++ wund (list {p/life q/ring r/acru}) :: mace in action
|
|
|
|
--
|
|
|
|
:: :: ::
|
|
|
|
:::: :::::: arvo structures
|
|
|
|
:: :: ::
|
|
|
|
|% ::
|
|
|
|
++ flam |=(a/flap `@p`(mug a)) :: debug flap
|
|
|
|
++ msec |=(a/@dr `@ud`(div a (div ~s1 1.000))) :: debug @dr
|
|
|
|
++ move {p/duct q/(wind note-arvo gift-ames)} :: local move
|
|
|
|
++ se :: simple scheduler
|
|
|
|
|_ a/pond :: l.n.a < n.a < r.n.a
|
|
|
|
++ cor :: schedule order
|
|
|
|
|= {t/@da v/pipe}
|
|
|
|
|= {t/@da v/pipe}
|
|
|
|
|((lth ^t t) &(=(^t t) (gor ^v v)))
|
|
|
|
::
|
|
|
|
++ dal :: delete match
|
|
|
|
|= {t/@da v/pipe}
|
|
|
|
^+ a
|
|
|
|
?~ a ~
|
|
|
|
?. =([t v] n.a)
|
|
|
|
?: ((cor [t v]) n.a)
|
|
|
|
[n.a $(a l.a) r.a]
|
|
|
|
[n.a l.a $(a r.a)]
|
|
|
|
|- ^- ?($~ _a)
|
|
|
|
?~ l.a r.a
|
|
|
|
?~ r.a l.a
|
|
|
|
?: (vor n.l.a n.r.a)
|
|
|
|
[n.l.a l.l.a $(l.a r.l.a)]
|
|
|
|
[n.r.a $(r.a l.r.a) r.r.a]
|
|
|
|
::
|
|
|
|
++ put :: insert
|
|
|
|
|= {t/@da v/pipe} :: XX duplicates ++by
|
|
|
|
^+ a
|
|
|
|
?~ a [[t v] ~ ~]
|
|
|
|
?< =([t v] n.a)
|
|
|
|
?: ((cor [t v]) n.a)
|
|
|
|
=+ d=$(a l.a)
|
|
|
|
?> ?=(^ d)
|
|
|
|
?: (vor n.a n.d)
|
|
|
|
[n.a d r.a]
|
|
|
|
[n.d l.d [n.a r.d r.a]]
|
|
|
|
=+ d=$(a r.a)
|
|
|
|
?> ?=(^ d)
|
|
|
|
?: (vor n.a n.d)
|
|
|
|
[n.a l.a d]
|
|
|
|
[n.d [n.a l.a l.d] r.d]
|
|
|
|
::
|
|
|
|
++ til :: next wake
|
|
|
|
|- ^- (unit @da)
|
|
|
|
?~(a ~ ?~(l.a `p.n.a $(a l.a)))
|
|
|
|
::
|
|
|
|
++ tip :: raw behead
|
|
|
|
|= t/@da
|
|
|
|
^- (pair (list pipe) pond)
|
|
|
|
?~ a [~ ~]
|
|
|
|
=+ l=$(a l.a)
|
|
|
|
?. (lte p.n.a t)
|
|
|
|
[p.l [n.a q.l r.a]]
|
|
|
|
?> =(~ q.l)
|
|
|
|
=+ r=$(a r.a)
|
|
|
|
:_(q.r (weld p.l `(list pipe)`[q.n.a p.r]))
|
|
|
|
::
|
|
|
|
++ top |=(t/@da =^(b a (tip t) [(flop p.b) a])) :: ordered behead
|
|
|
|
--
|
2014-06-03 09:07:32 +04:00
|
|
|
--
|
2013-09-29 00:21:18 +04:00
|
|
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
|
|
:: section 4aA, identity logic ::
|
|
|
|
::
|
|
|
|
|%
|
|
|
|
++ grip :: extend will
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {wet/will law/will}
|
2013-09-29 00:21:18 +04:00
|
|
|
^- will
|
|
|
|
?~ wet law
|
|
|
|
?: =(wet law) law
|
|
|
|
?^ t.wet
|
|
|
|
?>((meld i.wet i.t.wet) [i.wet $(wet t.wet)])
|
|
|
|
?~ law
|
|
|
|
?>((pier i.wet) [i.wet ~])
|
|
|
|
?~ q.p.q.i.wet
|
|
|
|
?>((meld i.wet i.law) [i.wet law])
|
|
|
|
=+ rul=(sein r.p.q.i.wet)
|
|
|
|
|- ^- will
|
|
|
|
?: ?& =(rul r.p.q.i.law)
|
|
|
|
=(p.p.q.i.law u.q.p.q.i.wet)
|
|
|
|
==
|
|
|
|
?>((meld i.wet i.law) [i.wet law])
|
|
|
|
?>(?=(^ t.law) $(law t.law))
|
|
|
|
::
|
|
|
|
++ meld :: verify connect
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {new/deed old/deed}
|
2015-12-08 10:35:55 +03:00
|
|
|
^- $&
|
2013-09-29 00:21:18 +04:00
|
|
|
?> (melt new old)
|
2014-04-10 04:28:22 +04:00
|
|
|
?> =((shaf %meld (sham q.new)) (need (sure:as:(haul r.q.old) *code p.new)))
|
2013-09-29 00:21:18 +04:00
|
|
|
%&
|
|
|
|
::
|
|
|
|
++ melt :: proper connect
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {new/deed old/deed}
|
2013-09-29 00:21:18 +04:00
|
|
|
^- ?
|
|
|
|
=+ rac=(clan r.p.q.new)
|
2014-06-04 05:11:30 +04:00
|
|
|
?& =(r.new r.old) :: match fake
|
|
|
|
?~ q.p.q.new
|
2013-12-09 01:23:03 +04:00
|
|
|
?& =(r.p.q.old r.p.q.new)
|
2013-09-29 00:21:18 +04:00
|
|
|
&(!=(%earl rac) =(p.p.q.old (dec p.p.q.new)))
|
|
|
|
==
|
|
|
|
?& &(!=(%pawn rac) !=(%czar rac))
|
|
|
|
|(=(0 p.p.q.new) =(%earl rac))
|
|
|
|
=(r.p.q.old (sein r.p.q.new))
|
|
|
|
=(p.p.q.old u.q.p.q.new)
|
|
|
|
==
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ pare :: shorten against
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {fou/will law/will}
|
2013-09-29 00:21:18 +04:00
|
|
|
:: ~& [%pare-fou fou]
|
|
|
|
:: ~& [%pare-law law]
|
|
|
|
^- will
|
2013-12-09 01:23:03 +04:00
|
|
|
=+ [ouf=(flop fou) wal=(flop law)]
|
|
|
|
%- flop
|
2013-09-29 00:21:18 +04:00
|
|
|
|- ^- will
|
|
|
|
?~ ouf wal
|
2016-07-25 00:23:28 +03:00
|
|
|
?~ wal ~
|
2013-09-29 00:21:18 +04:00
|
|
|
?. =(i.wal i.ouf) ouf
|
|
|
|
$(wal t.wal, ouf t.ouf)
|
|
|
|
::
|
2014-06-04 03:39:28 +04:00
|
|
|
++ pier !: :: initial deed
|
2015-12-20 23:50:45 +03:00
|
|
|
|= wed/deed
|
2015-12-08 10:35:55 +03:00
|
|
|
^- $&
|
2013-09-29 00:21:18 +04:00
|
|
|
?> =+ rac=(clan r.p.q.wed)
|
2014-04-10 04:28:22 +04:00
|
|
|
=+ loy=(haul r.q.wed)
|
2014-06-04 03:39:28 +04:00
|
|
|
?: &(r.wed =(rac %czar)) %&
|
2013-09-29 00:21:18 +04:00
|
|
|
?> =(0 p.p.q.wed)
|
2015-12-06 00:01:00 +03:00
|
|
|
?> =(fig:ex:loy ?+(rac !! $czar (zeno r.p.q.wed), $pawn r.p.q.wed))
|
2014-04-10 04:28:22 +04:00
|
|
|
?> =((shaf %self (sham q.wed)) (need (sure:as:loy *code p.wed)))
|
2013-09-29 00:21:18 +04:00
|
|
|
%&
|
|
|
|
%&
|
|
|
|
::
|
|
|
|
++ real :: validate
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {mac/mace law/will}
|
2013-09-29 00:21:18 +04:00
|
|
|
?> ?& |- ^- ?
|
|
|
|
?~ mac &
|
|
|
|
?> ?& ?=(^ law)
|
|
|
|
(lth p.p.q.i.law 9) :: 9-lives rule
|
|
|
|
=(p.p.q.i.law p.i.mac)
|
2014-04-10 04:28:22 +04:00
|
|
|
=(r.q.i.law pub:ex:(weur q.i.mac))
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
$(mac t.mac, law t.law)
|
|
|
|
==
|
2013-12-09 01:23:03 +04:00
|
|
|
%&
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ rice :: mace at life
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {mar/life mac/mace}
|
2013-09-29 00:21:18 +04:00
|
|
|
^- (unit mace)
|
|
|
|
?~ mac ~
|
|
|
|
?: =(mar p.i.mac) [~ mac]
|
|
|
|
?: (gth mar p.i.mac) ~
|
|
|
|
$(mac t.mac)
|
|
|
|
::
|
|
|
|
++ rick :: will at life
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {mar/life lag/ship law/will}
|
2013-09-29 00:21:18 +04:00
|
|
|
^- (unit will)
|
|
|
|
?~ law ~
|
|
|
|
?: =(mar p.p.q.i.law) [~ law]
|
|
|
|
?: (gth mar p.p.q.i.law) ~
|
2015-12-06 00:01:00 +03:00
|
|
|
?: |(?=($~ q.p.q.i.law) !=(lag r.p.q.i.law)) ~
|
2013-09-29 00:21:18 +04:00
|
|
|
$(law t.law)
|
|
|
|
::
|
|
|
|
++ zeno :: imperial keyprint
|
2015-12-20 23:50:45 +03:00
|
|
|
|= zar/@pD
|
2013-09-29 00:21:18 +04:00
|
|
|
^- @uvH ^- @
|
|
|
|
%+ snag zar
|
2015-12-08 10:35:55 +03:00
|
|
|
^- (list @uw)
|
2016-05-18 22:50:24 +03:00
|
|
|
:~ 0wN.Kdp5k.p5ncD.4Wsih.bFQFu :: 0, ~zod, urbit.org
|
|
|
|
0w0 :: 1, ~nec, Curtis Yarvin
|
|
|
|
0w0 :: 2, ~bud, Tlon Investor 1
|
|
|
|
0w0 :: 3, ~wes, Tlon Investor 2
|
|
|
|
0w0 :: 4, ~sev, Tlon Investor 2
|
|
|
|
0wt.cKYxs.Yb5VZ.boSwm.l0yYc :: 5, ~per, Tlon Investor 3
|
|
|
|
0w0 :: 6, ~sut, Tlon Investor 4
|
|
|
|
0w0 :: 7, ~let, Tlon Investor 4
|
|
|
|
0w0 :: 8, ~ful, Tlon Investor 4
|
|
|
|
0w0 :: 9, ~pen, Tlon Investor 4
|
|
|
|
0w0 :: 10, ~syt, Tlon Investor 4
|
|
|
|
0w0 :: 11, ~dur, Tlon Investor 4
|
|
|
|
0w0 :: 12, ~wep, Sam Putman
|
|
|
|
0w0 :: 13, ~ser, Tlon Investor 5
|
|
|
|
0w3j.H0sty.jHa3F.JlD26.4LPwV :: 14, ~wyl, Zimran Ahmed
|
|
|
|
0w3F.QdvV-.toAsR.hvUNk.fHjW6 :: 15, ~sun, Colin Smith
|
|
|
|
0w0 :: 16, ~ryp, Tlon Investor 6
|
|
|
|
0w0 :: 17, ~syx, Tlon Investor 6
|
|
|
|
0w0 :: 18, ~dyr, Tlon Investor 6
|
|
|
|
0w0 :: 19, ~nup, Tlon Investor 6
|
|
|
|
0w0 :: 20, ~heb, Tlon Investor 6
|
|
|
|
0w0 :: 21, ~peg, Tlon Investor 6
|
|
|
|
0w0 :: 22, ~lup, Tlon Investor 6
|
|
|
|
0w0 :: 23, ~dep, Tlon Investor 6
|
|
|
|
0w0 :: 24, ~dys, Mike Gogulski
|
|
|
|
0w0 :: 25, ~put, Tlon Investor 7
|
|
|
|
0w0 :: 26, ~lug, Tlon Investor 8
|
|
|
|
0w0 :: 27, ~hec, Tlon Investor 8
|
|
|
|
0w0 :: 28, ~ryt, Tlon Investor 8
|
|
|
|
0w0 :: 29, ~tyv, Tlon Investor 8
|
|
|
|
0w0 :: 30, ~syd, Jennifer Kollmer
|
|
|
|
0wp.BgRGJ.kslnv.PLAqb.TRKbr :: 31, ~nex, Prakhar Goel
|
|
|
|
0w0 :: 32, ~lun, Tlon Investor 9
|
|
|
|
0w0 :: 33, ~mep, Tlon Investor 9
|
|
|
|
0w0 :: 34, ~lut, Tlon Investor 9
|
|
|
|
0w0 :: 35, ~sep, Tlon Investor 9
|
|
|
|
0w0 :: 36, ~pes, Jennifer Kollmer
|
|
|
|
0w2J.WSHlR.t5VHN.X8GKE.DB-yz :: 37, ~del, Kingdon Barrett
|
|
|
|
0w1w.KF-J1.5I63F.khFyv.h0n4J :: 38, ~sul, John Burnham
|
2016-05-19 02:47:34 +03:00
|
|
|
0w3x.XaJbE.xaOn3.zXbaG.5xUiY :: 39, ~ped, Jeremy Wall
|
2016-05-18 22:50:24 +03:00
|
|
|
0w2.Mr2Id.SX8xI.MAs-j.5Y-1W :: 40, ~tem, Tlon Investor 10
|
|
|
|
0w0 :: 41, ~led, Nick Caruso
|
|
|
|
0w0 :: 42, ~tul, Susan Yarvin
|
|
|
|
0w0 :: 43, ~met, Susan Yarvin
|
|
|
|
0w0 :: 44, ~wen, Susan Yarvin
|
|
|
|
0w0 :: 45, ~byn, Susan Yarvin
|
|
|
|
0w0 :: 46, ~hex, James Torre
|
2016-06-26 03:34:37 +03:00
|
|
|
0w0 :: 47, ~feb, urbit.org
|
2016-05-18 22:50:24 +03:00
|
|
|
0wK.GoKEY.rMjfn.ZcvFQ.n4BmX :: 48, ~pyl, Michael Hartl
|
|
|
|
0w0 :: 49, ~dul, Jennifer Kollmer
|
|
|
|
0w0 :: 50, ~het, Jennifer Kollmer
|
|
|
|
0w0 :: 51, ~mev, Herbert Yarvin
|
|
|
|
0w0 :: 52, ~rut, Herbert Yarvin
|
|
|
|
0w2L.M6-o5.DDTFL.R4sFL.7Zuay :: 53, ~tyl, Tlon Investor 11
|
|
|
|
0w0 :: 54, ~wyd, Curtis Yarvin
|
|
|
|
0w0 :: 55, ~tep, Sibyl Kollmer
|
|
|
|
0w0 :: 56, ~bes, Sibyl Kollmer
|
|
|
|
0w0 :: 57, ~dex, Jared Hance
|
|
|
|
0w0 :: 58, ~sef, Owen Rescher
|
|
|
|
0w0 :: 59, ~wyc, Galen Wolfe-Pauly
|
|
|
|
0w0 :: 60, ~bur, Galen Wolfe-Pauly
|
|
|
|
0w0 :: 61, ~der, Galen Wolfe-Pauly
|
|
|
|
0w0 :: 62, ~nep, Galen Wolfe-Pauly
|
|
|
|
0w0 :: 63, ~pur, Herbert Yarvin
|
2016-05-19 03:06:23 +03:00
|
|
|
0w30.VtXvV.S~xIV.iMCL~.j9zTC :: 64, ~rys, Charlie Cummings
|
2016-05-18 22:50:24 +03:00
|
|
|
0w0 :: 65, ~reb, Herbert Yarvin
|
|
|
|
0wp.LslIa.IFSM9.mIp-z.KBIBh :: 66, ~den, Michael Hartl
|
|
|
|
0w0 :: 67, ~nut, Henry Yarvin
|
|
|
|
0w0 :: 68, ~sub, Henry Yarvin
|
|
|
|
0w0 :: 69, ~pet, Henry Yarvin
|
|
|
|
0w0 :: 70, ~rul, Henry Yarvin
|
|
|
|
0w0 :: 71, ~syn, Henry Ault
|
|
|
|
0w0 :: 72, ~reg, Henry Ault
|
|
|
|
0w0 :: 73, ~tyd, Henry Ault
|
|
|
|
0w0 :: 74, ~sup, Henry Ault
|
|
|
|
0w0 :: 75, ~sem, Michael Livshin
|
|
|
|
0w0 :: 76, ~wyn, Anton Dyudin
|
|
|
|
0w0 :: 77, ~rec, Anton Dyudin
|
|
|
|
0w0 :: 78, ~meg, Anton Dyudin
|
|
|
|
0w2L.tavpW.Lk4R-.elm7E.4KEqZ :: 79, ~net, Anthony Martinez
|
|
|
|
0w0 :: 80, ~sec, Curtis Yarvin
|
|
|
|
0w0 :: 81, ~mul, Curtis Yarvin
|
2016-05-19 22:40:35 +03:00
|
|
|
0w1F.Tqroo.wyq2m.cBaTM.9MbG- :: 82, ~nym, Max Greer
|
2016-05-18 22:50:24 +03:00
|
|
|
0w0 :: 83, ~tev, Sibyl Kollmer
|
|
|
|
0w2x.~ldho.Oo7kE.QqNSx.XteFh :: 84, ~web, Ar Vicco
|
|
|
|
0w0 :: 85, ~sum, Philip Monk
|
|
|
|
0w0 :: 86, ~mut, Philip Monk
|
|
|
|
0w0 :: 87, ~nyx, Philip Monk
|
|
|
|
0w30.UUr19.iBPlD.wfyJD.2CWPv :: 88, ~rex, Tlon Investor 12
|
|
|
|
0w0 :: 89, ~teb, Sibyl Kollmer
|
|
|
|
0w0 :: 90, ~fus, Tlon Corporation
|
|
|
|
0w0 :: 91, ~hep, urbit.org
|
|
|
|
0w0 :: 92, ~ben, urbit.org
|
|
|
|
0w0 :: 93, ~mus, urbit.org
|
|
|
|
0w0 :: 94, ~wyx, urbit.org
|
|
|
|
0w0 :: 95, ~sym, urbit.org
|
|
|
|
0w0 :: 96, ~sel, urbit.org
|
|
|
|
0w0 :: 97, ~ruc, urbit.org
|
|
|
|
0w0 :: 98, ~dec, urbit.org
|
|
|
|
0w1L.NQ-5f.ABF9R.kVwVJ.zRfn2 :: 99, ~wex, Pax Dickinson
|
|
|
|
0w0 :: 100, ~syr, urbit.org
|
|
|
|
0w0 :: 101, ~wet, urbit.org
|
|
|
|
0w0 :: 102, ~dyl, urbit.org
|
|
|
|
0w0 :: 103, ~myn, urbit.org
|
|
|
|
0w0 :: 104, ~mes, urbit.org
|
|
|
|
0w0 :: 105, ~det, urbit.org
|
|
|
|
0w0 :: 106, ~bet, urbit.org
|
|
|
|
0w0 :: 107, ~bel, urbit.org
|
|
|
|
0w0 :: 108, ~tux, Tlon Investor 13
|
|
|
|
0w1D.JV9n0.9z~YK.yAWyi.c9~Lu :: 109, ~tug, Philip Monk
|
|
|
|
0w0 :: 110, ~myr, urbit.org
|
|
|
|
0w0 :: 111, ~pel, urbit.org
|
|
|
|
0w0 :: 112, ~syp, urbit.org
|
|
|
|
0w0 :: 113, ~ter, urbit.org
|
|
|
|
0w0 :: 114, ~meb, urbit.org
|
|
|
|
0w0 :: 115, ~set, urbit.org
|
|
|
|
0w0 :: 116, ~dut, urbit.org
|
|
|
|
0w0 :: 117, ~deg, urbit.org
|
|
|
|
0w0 :: 118, ~tex, urbit.org
|
|
|
|
0w0 :: 119, ~sur, urbit.org
|
|
|
|
0w0 :: 120, ~fel, urbit.org
|
|
|
|
0w0 :: 121, ~tud, urbit.org
|
|
|
|
0w0 :: 122, ~nux, urbit.org
|
|
|
|
0w0 :: 123, ~rux, urbit.org
|
|
|
|
0w0 :: 124, ~ren, urbit.org
|
|
|
|
0w0 :: 125, ~wyt, urbit.org
|
|
|
|
0w0 :: 126, ~nub, urbit.org
|
|
|
|
0w0 :: 127, ~med, urbit.org
|
|
|
|
0w20.GGLXx.aqxaQ.w4Iob.wdmmr :: 128, ~lyt, Arthur Breitman
|
|
|
|
0w0 :: 129, ~dus, urbit.org
|
|
|
|
0w0 :: 130, ~neb, urbit.org
|
|
|
|
0w0 :: 131, ~rum, urbit.org
|
|
|
|
0w0 :: 132, ~tyn, urbit.org
|
|
|
|
0w0 :: 133, ~seg, urbit.org
|
|
|
|
0w0 :: 134, ~lyx, urbit.org
|
|
|
|
0w0 :: 135, ~pun, urbit.org
|
|
|
|
0w0 :: 136, ~res, urbit.org
|
2016-06-26 03:34:37 +03:00
|
|
|
0w0 :: 137, ~red, Alex Kravets
|
2016-05-18 22:50:24 +03:00
|
|
|
0w3J.15iJA.0pbNk.mZXyh.A~uKb :: 138, ~fun, Aaron Beckerman
|
|
|
|
0w0 :: 139, ~rev, urbit.org
|
|
|
|
0w3m.Cqumo.ZC7-e.794A4.Bqhh8 :: 140, ~ref, Matt Brubeck
|
|
|
|
0w0 :: 141, ~mec, urbit.org
|
|
|
|
0w0 :: 142, ~ted, urbit.org
|
|
|
|
0w2d.GLlYg.-MwtO.ZCPBE.OqGB9 :: 143, ~rus, Stephen Burnham
|
|
|
|
0w0 :: 144, ~bex, urbit.org
|
|
|
|
0w0 :: 145, ~leb, Justin LeBlanc
|
|
|
|
0w0 :: 146, ~dux, urbit.org
|
|
|
|
0w0 :: 147, ~ryn, urbit.org
|
|
|
|
0w0 :: 148, ~num, Tlon
|
|
|
|
0w0 :: 149, ~pyx, Katherine McFall
|
|
|
|
0w2g.gLmg4.MtrHQ.A5VmH.WPk6G :: 150, ~ryg, Dan Haffey
|
|
|
|
0w0 :: 151, ~ryx, Tlon
|
|
|
|
0w0 :: 152, ~fep, Tlon
|
|
|
|
0w2j.T1u2s.BfXjV.ldOGR.aiZrQ :: 153, ~tyr, Steve Dee
|
|
|
|
0w0 :: 154, ~tus, Tlon
|
|
|
|
0w0 :: 155, ~tyc, Tlon
|
|
|
|
0w0 :: 156, ~leg, Tlon
|
|
|
|
0w0 :: 157, ~nem, Tlon
|
|
|
|
0w0 :: 158, ~fer, Tlon
|
|
|
|
0w0 :: 159, ~mer, Tlon
|
|
|
|
0w0 :: 160, ~ten, Tlon
|
|
|
|
0w0 :: 161, ~lus, Tlon
|
|
|
|
0w0 :: 162, ~nus, Tlon
|
|
|
|
0w0 :: 163, ~syl, Tlon
|
|
|
|
0w0 :: 164, ~tec, Tlon
|
|
|
|
0w0 :: 165, ~mex, Tlon
|
|
|
|
0w0 :: 166, ~pub, Tlon
|
|
|
|
0w0 :: 167, ~rym, Tlon
|
|
|
|
0w0 :: 168, ~tuc, Tlon
|
|
|
|
0w0 :: 169, ~fyl, Tlon
|
|
|
|
0w0 :: 170, ~lep, Tlon
|
|
|
|
0w0 :: 171, ~deb, Tlon
|
|
|
|
0w0 :: 172, ~ber, Tlon
|
|
|
|
0w0 :: 173, ~mug, Tlon
|
|
|
|
0w0 :: 174, ~hut, Tlon
|
|
|
|
0w0 :: 175, ~tun, Tlon
|
|
|
|
0w0 :: 176, ~byl, Tlon
|
|
|
|
0w0 :: 177, ~sud, Tlon
|
|
|
|
0w0 :: 178, ~pem, Tlon
|
|
|
|
0w0 :: 179, ~dev, Tlon
|
|
|
|
0w0 :: 180, ~lur, Tlon
|
|
|
|
0w0 :: 181, ~def, Tlon
|
|
|
|
0w0 :: 182, ~bus, Tlon
|
|
|
|
0w0 :: 183, ~bep, Tlon
|
|
|
|
0w0 :: 184, ~run, Tlon
|
|
|
|
0w0 :: 185, ~mel, Tlon
|
|
|
|
0w0 :: 186, ~pex, Tlon
|
|
|
|
0w0 :: 187, ~dyt, Tlon
|
|
|
|
0w0 :: 188, ~byt, Tlon
|
|
|
|
0w0 :: 189, ~typ, Tlon
|
|
|
|
0w0 :: 190, ~lev, Tlon
|
|
|
|
0w0 :: 191, ~myl, Tlon
|
|
|
|
0w0 :: 192, ~wed, Tlon
|
|
|
|
0w0 :: 193, ~duc, Tlon
|
|
|
|
0w0 :: 194, ~fur, Tlon
|
|
|
|
0w0 :: 195, ~fex, Tlon
|
|
|
|
0w0 :: 196, ~nul, Tlon
|
|
|
|
0w0 :: 197, ~luc, Tlon
|
|
|
|
0w0 :: 198, ~len, Tlon
|
|
|
|
0w0 :: 199, ~ner, Tlon
|
|
|
|
0wv.aixe9.7gG2w.7cJiy.i3Mg8 :: 200, ~lex, Michael Hartl
|
|
|
|
0w0 :: 201, ~rup, Owen Rescher
|
|
|
|
0w0 :: 202, ~ned, Tlon
|
|
|
|
0w0 :: 203, ~lec, Tlon
|
|
|
|
0w0 :: 204, ~ryd, Tlon
|
|
|
|
0w1U.n361n.FC3jj.9cX26.V1Wif :: 205, ~lyd, Adam Bliss
|
|
|
|
0w0 :: 206, ~fen, Tlon
|
|
|
|
0w0 :: 207, ~wel, Tlon
|
|
|
|
0w0 :: 208, ~nyd, Tlon
|
|
|
|
0w0 :: 209, ~hus, Tlon
|
|
|
|
0w0 :: 210, ~rel, Tlon
|
|
|
|
0w0 :: 211, ~rud, Tlon
|
|
|
|
0w0 :: 212, ~nes, Tlon
|
|
|
|
0w16.~8NZV.VyMmf.4toMO.pui1R :: 213, ~hes, Tlon Investor 14
|
|
|
|
0w0 :: 214, ~fet, Tlon
|
|
|
|
0w0 :: 215, ~des, Tlon
|
|
|
|
0w0 :: 216, ~ret, Tlon
|
|
|
|
0w0 :: 217, ~dun, Tlon
|
|
|
|
0w0 :: 218, ~ler, Tlon
|
|
|
|
0w10.w0AUz.QVdks.HCNvf.ja~TO :: 219, ~nyr, Ivan Matosevic
|
|
|
|
0w0 :: 220, ~seb, Tlon
|
|
|
|
0w0 :: 221, ~hul, Tlon
|
|
|
|
0w0 :: 222, ~ryl, Tlon
|
|
|
|
0w0 :: 223, ~lud, Tlon
|
|
|
|
0w0 :: 224, ~rem, Tlon
|
|
|
|
0w0 :: 225, ~lys, Tlon
|
|
|
|
0w3C.YXlEl.pFbYV.9pYWI.d7cla :: 226, ~fyn, Stephen Burnham
|
|
|
|
0w0 :: 227, ~wer, Tlon
|
|
|
|
0w0 :: 228, ~ryc, Tlon
|
|
|
|
0w0 :: 229, ~sug, Tlon
|
|
|
|
0w0 :: 230, ~nys, Tlon
|
|
|
|
0w0 :: 231, ~nyl, Tlon
|
|
|
|
0w0 :: 232, ~lyn, Tlon
|
|
|
|
0w0 :: 233, ~dyn, Tlon
|
|
|
|
0w0 :: 234, ~dem, Tlon
|
|
|
|
0w0 :: 235, ~lux, Tlon Investor 15
|
|
|
|
0w0 :: 236, ~fed, Tlon
|
|
|
|
0w0 :: 237, ~sed, Tlon
|
|
|
|
0w0 :: 238, ~bec, Tlon
|
|
|
|
0w0 :: 239, ~mun, Tlon
|
|
|
|
0w0 :: 240, ~lyr, Tlon
|
|
|
|
0w0 :: 241, ~tes, Tlon
|
|
|
|
0w0 :: 242, ~mud, Ian Rowan
|
|
|
|
0w4.yybWD.F1BgE.ynzlF.47neH :: 243, ~nyt, Byrne Hobart
|
|
|
|
0w0 :: 244, ~byr, Tlon
|
|
|
|
0w0 :: 245, ~sen, Tlon
|
|
|
|
0w0 :: 246, ~weg, Tlon
|
|
|
|
0w28.bRVMq.Oi3tM.zOCNV.j00Yq :: 247, ~fyr, Anton Dyudin
|
|
|
|
0w0 :: 248, ~mur, Tlon
|
|
|
|
0w0 :: 249, ~tel, Tlon
|
2016-07-13 19:53:50 +03:00
|
|
|
0w3D.onYhb.3wvaz.62Ct8.nt3iJ :: 250, ~rep, Raymond Pasco
|
2016-05-18 22:50:24 +03:00
|
|
|
0w0 :: 251, ~teg, Tlon
|
|
|
|
0w0 :: 252, ~pec, Tlon
|
|
|
|
0w0 :: 253, ~nel, Tlon
|
|
|
|
0w0 :: 254, ~nev, Tlon
|
|
|
|
0wY.a0HAU.7Lbkf.6V514.OsJBv :: 255, ~fes, John Burnham
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
--
|
|
|
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
|
|
:: section 4aB, packet format ::
|
|
|
|
::
|
|
|
|
|%
|
|
|
|
++ bite :: packet to cake
|
2015-12-20 23:50:45 +03:00
|
|
|
|= pac/rock ^- cake
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ [mag=(end 5 1 pac) bod=(rsh 5 1 pac)]
|
|
|
|
=+ :* vez=(end 0 3 mag) :: protocol version
|
|
|
|
chk=(cut 0 [3 20] mag) :: checksum
|
|
|
|
wix=(bex +((cut 0 [23 2] mag))) :: width of receiver
|
|
|
|
vix=(bex +((cut 0 [25 2] mag))) :: width of sender
|
|
|
|
tay=(cut 0 [27 5] mag) :: message type
|
|
|
|
==
|
2016-07-25 00:23:28 +03:00
|
|
|
?> =(7 vez)
|
2013-09-29 00:21:18 +04:00
|
|
|
?> =(chk (end 0 20 (mug bod)))
|
|
|
|
:+ [(end 3 wix bod) (cut 3 [wix vix] bod)]
|
|
|
|
(kins tay)
|
|
|
|
(rsh 3 (add wix vix) bod)
|
|
|
|
::
|
2015-12-20 23:50:45 +03:00
|
|
|
++ kins |=(tay/@ (snag tay `(list skin)`[%none %open %fast %full ~]))
|
|
|
|
++ ksin |=(sin/skin `@`?-(sin $none 0, $open 1, $fast 2, $full 3))
|
2013-09-29 00:21:18 +04:00
|
|
|
++ spit :: cake to packet
|
2015-12-20 23:50:45 +03:00
|
|
|
|= kec/cake ^- @
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ wim=(met 3 p.p.kec)
|
|
|
|
=+ dum=(met 3 q.p.kec)
|
|
|
|
=+ yax=?:((lte wim 2) 0 ?:((lte wim 4) 1 ?:((lte wim 8) 2 3)))
|
|
|
|
=+ qax=?:((lte dum 2) 0 ?:((lte dum 4) 1 ?:((lte dum 8) 2 3)))
|
|
|
|
=+ wix=(bex +(yax))
|
|
|
|
=+ vix=(bex +(qax))
|
|
|
|
=+ bod=:(mix p.p.kec (lsh 3 wix q.p.kec) (lsh 3 (add wix vix) r.kec))
|
|
|
|
=+ tay=(ksin q.kec)
|
|
|
|
%+ mix
|
|
|
|
%+ can 0
|
2016-07-25 00:23:28 +03:00
|
|
|
:~ [3 7]
|
2013-09-29 00:21:18 +04:00
|
|
|
[20 (mug bod)]
|
|
|
|
[2 yax]
|
|
|
|
[2 qax]
|
|
|
|
[5 tay]
|
|
|
|
==
|
|
|
|
(lsh 5 1 bod)
|
|
|
|
--
|
|
|
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
|
|
:: section 4aC, PKI engine ::
|
|
|
|
::
|
|
|
|
|%
|
|
|
|
++ go :: go
|
2015-12-20 23:50:45 +03:00
|
|
|
|_ ton/town :: ames state
|
2013-09-29 00:21:18 +04:00
|
|
|
++ as :: as:go
|
2015-12-20 23:50:45 +03:00
|
|
|
|_ {our/ship saf/sufi} :: per server
|
2013-09-29 00:21:18 +04:00
|
|
|
++ born :: born:as:go
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {now/@da her/@p tic/@pG ges/gens pub/pass} :: register user
|
2015-12-15 01:21:10 +03:00
|
|
|
^- {(unit will) _+>}
|
2013-09-29 00:21:18 +04:00
|
|
|
?. =(our (sein her)) [~ +>.$]
|
|
|
|
=+ nes=sen
|
2015-05-13 11:02:34 +03:00
|
|
|
=+ ryt=(end 6 1 (shaf %tick (mix her (shax sec:ex:q.nes))))
|
|
|
|
?. =(tic ryt)
|
|
|
|
~& [%ames-wrong-ticket `@p`ryt]
|
2013-09-29 00:21:18 +04:00
|
|
|
[~ +>.$]
|
|
|
|
=+ rad=(~(get by hoc.saf) her)
|
|
|
|
?^ rad
|
2014-06-01 00:22:49 +04:00
|
|
|
?. ?=(^ lew.wod.u.rad)
|
|
|
|
$(hoc.saf (~(del by hoc.saf) her)) :: XX how can this be?
|
2013-09-29 00:21:18 +04:00
|
|
|
?. =(pub r.q.i.lew.wod.u.rad) [~ +>.$]
|
2013-12-09 01:23:03 +04:00
|
|
|
[[~ lew.wod.u.rad] +>.$]
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ syp=[[0 [~ p.nes] her now] ges pub]
|
2014-06-04 03:39:28 +04:00
|
|
|
=+ ded=[(sign:as:q.nes *code (shaf %meld (sham syp))) syp fak.ton]
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ wil=[ded law.saf]
|
|
|
|
?> =(wil (grip wil ~))
|
|
|
|
:- [~ wil]
|
2014-06-19 22:53:16 +04:00
|
|
|
+>.$(hoc.saf (~(put by hoc.saf) her [[~31337.1.1 ~ wil] ~ *clot]))
|
2013-12-09 01:23:03 +04:00
|
|
|
::
|
2013-09-29 00:21:18 +04:00
|
|
|
++ lax :: lax:as:go
|
2016-07-25 00:23:28 +03:00
|
|
|
|_ {her/ship dur/door} :: security engine
|
2013-09-29 00:21:18 +04:00
|
|
|
++ cluy :: cluy:lax:as:go
|
2015-12-20 23:50:45 +03:00
|
|
|
^- {p/life q/gens r/acru} :: client crypto
|
2013-09-29 00:21:18 +04:00
|
|
|
?~ lew.wod.dur !!
|
2014-06-04 05:11:30 +04:00
|
|
|
?. =(fak.ton r.i.lew.wod.dur) ~|([%client-wrong-fake her] !!)
|
2013-12-09 01:23:03 +04:00
|
|
|
:+ p.p.q.i.lew.wod.dur
|
|
|
|
q.q.i.lew.wod.dur
|
2014-04-10 04:28:22 +04:00
|
|
|
(haul r.q.i.lew.wod.dur)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ clon
|
|
|
|
^- life
|
|
|
|
?~(lew.wod.dur 0 p.p.q.i.lew.wod.dur)
|
|
|
|
::
|
|
|
|
++ deng
|
2015-12-20 23:50:45 +03:00
|
|
|
|= law/will
|
2013-09-29 00:21:18 +04:00
|
|
|
%_(+> lew.wod.dur (grip law lew.wod.dur))
|
|
|
|
::
|
|
|
|
++ griz :: griz:lax:as:go
|
2015-12-20 23:50:45 +03:00
|
|
|
|= now/@da :: generate key for
|
|
|
|
^- {p/code q/_+>}
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ key=(shas %enty (mix now any.ton))
|
|
|
|
:- key
|
|
|
|
%= +>.$
|
|
|
|
any.ton (shax (mix now any.ton))
|
|
|
|
heg.caq.dur (~(put by heg.caq.dur) (shaf %hand key) key)
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ pode :: pode:lax:as:go
|
2015-12-20 23:50:45 +03:00
|
|
|
|= now/@da :: timeout route
|
2013-12-30 10:56:13 +04:00
|
|
|
^+ +>
|
2013-12-30 21:16:02 +04:00
|
|
|
?: (lth her 256) +>
|
2013-12-30 10:56:13 +04:00
|
|
|
+>(lun.wod.dur ~)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ kuch :: kuch:lax:as:go
|
2015-12-20 23:50:45 +03:00
|
|
|
|= had/hand :: hear key tag
|
2015-12-15 01:21:10 +03:00
|
|
|
^- (unit {code _+>})
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ wey=(~(get by heg.caq.dur) had)
|
|
|
|
?^ wey
|
|
|
|
=+ key=u.wey
|
|
|
|
:+ ~ key
|
|
|
|
%= ..kuch
|
|
|
|
yed.caq.dur [~ had u.wey]
|
|
|
|
heg.caq.dur (~(del by heg.caq.dur) had)
|
|
|
|
qim.caq.dur (~(put by qim.caq.dur) had key)
|
|
|
|
==
|
|
|
|
=+ dyv=(~(get by qim.caq.dur) had)
|
|
|
|
?~ dyv ~
|
|
|
|
[~ u.dyv ..kuch]
|
|
|
|
::
|
|
|
|
++ wasc :: wasc:lax:as:go
|
2015-12-20 23:50:45 +03:00
|
|
|
|= key/code :: hear foreign code
|
2013-09-29 00:21:18 +04:00
|
|
|
^+ +>
|
|
|
|
=+ had=(shaf %hand key)
|
2014-01-07 05:09:03 +04:00
|
|
|
%_ ..wasc
|
|
|
|
yed.caq.dur [~ had key]
|
|
|
|
qim.caq.dur (~(put by qim.caq.dur) had key)
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
::
|
|
|
|
++ wast :: wast:lax:as:go
|
2015-12-20 23:50:45 +03:00
|
|
|
|= ryn/lane :: set route
|
2013-09-29 00:21:18 +04:00
|
|
|
^+ +>
|
|
|
|
%= +>
|
|
|
|
lun.wod.dur
|
2015-12-08 10:35:55 +03:00
|
|
|
?: ?=({$ix *} ryn)
|
|
|
|
?: ?| ?=($~ lun.wod.dur)
|
|
|
|
?=({$ix *} u.lun.wod.dur)
|
|
|
|
?& ?=({$if *} u.lun.wod.dur)
|
2014-06-04 01:01:40 +04:00
|
|
|
(gth p.ryn (add ~s10 p.u.lun.wod.dur))
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
==
|
|
|
|
[~ ryn]
|
|
|
|
lun.wod.dur
|
|
|
|
[~ ryn]
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ wist :: wist:lax:as:go
|
2016-07-25 00:23:28 +03:00
|
|
|
|= $: now/@da :: route via
|
2015-12-20 23:50:45 +03:00
|
|
|
waz/(list @p)
|
|
|
|
ryn/(unit lane)
|
|
|
|
pac/rock
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
^- (list boon)
|
|
|
|
?: =(our her) [[%ouzo *lane pac] ~]
|
|
|
|
?~ waz ~
|
|
|
|
=+ dyr=?:(=(her i.waz) dur (gur i.waz))
|
|
|
|
?. ?& !=(our i.waz)
|
|
|
|
?=(^ lun.wod.dyr)
|
|
|
|
==
|
2016-07-25 00:23:28 +03:00
|
|
|
:: ~& [%wist-skip i.waz lun.wod.dyr]
|
2013-09-29 00:21:18 +04:00
|
|
|
$(waz t.waz)
|
2015-12-06 00:01:00 +03:00
|
|
|
:_ ?: ?=($ix -.u.lun.wod.dyr)
|
2013-09-29 00:21:18 +04:00
|
|
|
$(waz t.waz)
|
|
|
|
~
|
|
|
|
:+ %ouzo u.lun.wod.dyr
|
|
|
|
?: &(=(i.waz her) =(~ ryn)) pac
|
|
|
|
=+ mal=(jam `meal`[%fore her ryn pac])
|
|
|
|
%- spit
|
|
|
|
^- cake
|
|
|
|
:* [our i.waz]
|
|
|
|
?~ yed.caq.dyr [%none mal]
|
|
|
|
:- %fast
|
|
|
|
%^ cat 7
|
2013-12-09 01:23:03 +04:00
|
|
|
p.u.yed.caq.dyr
|
2014-05-09 04:13:25 +04:00
|
|
|
(en:crua q.u.yed.caq.dyr mal)
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
::
|
|
|
|
++ xeno :: xeno:lax:as:go
|
|
|
|
^- (list ship) :: foreign canon
|
|
|
|
(saxo her)
|
|
|
|
::
|
|
|
|
++ xong :: xong:lax:as:go
|
|
|
|
^- (list ship) :: route unto
|
|
|
|
=+ [fro=xen too=xeno]
|
|
|
|
=+ ^= oot ^- (list ship)
|
2015-12-20 23:50:45 +03:00
|
|
|
=| oot/(list ship)
|
2013-09-29 00:21:18 +04:00
|
|
|
|- ^+ oot
|
|
|
|
?~ too ~
|
2015-12-20 23:50:45 +03:00
|
|
|
?: (lien fro |=(a/ship =(a i.too))) ~
|
2013-09-29 00:21:18 +04:00
|
|
|
[i.too $(too t.too)]
|
|
|
|
:: ~& [%xong-to [our her] (weld oot ?>(?=(^ fro) t.fro))]
|
|
|
|
(weld oot ?>(?=(^ fro) t.fro))
|
|
|
|
::
|
|
|
|
++ zuul :: zuul:lax:as:go
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {now/@da ham/meal} :: encode message
|
2016-07-25 00:23:28 +03:00
|
|
|
^- {(list rock) _+>}
|
2013-09-29 00:21:18 +04:00
|
|
|
=< weft
|
|
|
|
|%
|
2016-07-25 00:23:28 +03:00
|
|
|
++ wain :: message identity
|
|
|
|
^- flea
|
|
|
|
?+ -.ham [0 0]
|
|
|
|
$bond p.ham
|
|
|
|
$carp [kos liq]:p.ham
|
|
|
|
==
|
|
|
|
::
|
2013-09-29 00:21:18 +04:00
|
|
|
++ wasp :: null security
|
2015-12-20 23:50:45 +03:00
|
|
|
^-({p/skin q/@} [%none (jam ham)])
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ weft :: fragment message
|
2015-12-20 23:50:45 +03:00
|
|
|
^- {p/(list rock) q/_+>.$}
|
2013-09-29 00:21:18 +04:00
|
|
|
=^ gim ..weft wisp
|
|
|
|
:_ +>.$
|
2016-07-25 00:23:28 +03:00
|
|
|
:: =- ~& :~ %zuul-wisp
|
|
|
|
:: (met 3 q.gim)
|
|
|
|
:: (lent pex)
|
|
|
|
:: (turn pex |=(a/@ (flam (shaf %flap a))))
|
|
|
|
:: ==
|
|
|
|
:: pex
|
|
|
|
=- ~? (gth (lent pex) 1)
|
|
|
|
[%wisp (lent pex)]
|
|
|
|
pex
|
|
|
|
^= pex
|
2013-09-29 00:21:18 +04:00
|
|
|
^- (list rock)
|
2016-07-25 00:23:28 +03:00
|
|
|
=+ wit=(met ?:(fak.ton 13 13) q.gim)
|
2013-09-29 00:21:18 +04:00
|
|
|
?< =(0 wit)
|
2016-07-25 00:23:28 +03:00
|
|
|
?: |(?=($back -.ham) =(1 wit))
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ yup=(spit [our her] p.gim q.gim)
|
|
|
|
[yup ~]
|
2016-07-25 00:23:28 +03:00
|
|
|
=+ ruv=(rip ?:(fak.ton 13 13) q.gim)
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ inx=0
|
|
|
|
|- ^- (list rock)
|
|
|
|
?~ ruv ~
|
|
|
|
=+ ^= vie
|
|
|
|
%+ spit
|
|
|
|
[our her]
|
2016-07-25 00:23:28 +03:00
|
|
|
wasp(ham [%carp [wain (ksin p.gim) wit] inx i.ruv])
|
2013-09-29 00:21:18 +04:00
|
|
|
:- vie
|
|
|
|
$(ruv t.ruv, inx +(inx))
|
|
|
|
::
|
|
|
|
++ wisp :: generate message
|
2015-12-20 23:50:45 +03:00
|
|
|
^- {{p/skin q/@} q/_..wisp}
|
2013-09-29 00:21:18 +04:00
|
|
|
?: =(%carp -.ham)
|
|
|
|
[wasp ..wisp]
|
|
|
|
?: !=(~ yed.caq.dur)
|
2013-12-24 00:49:15 +04:00
|
|
|
?> ?=(^ yed.caq.dur)
|
2013-09-29 00:21:18 +04:00
|
|
|
:_ ..wisp
|
|
|
|
:- %fast
|
|
|
|
%^ cat 7
|
2013-12-09 01:23:03 +04:00
|
|
|
p.u.yed.caq.dur
|
2013-09-29 00:21:18 +04:00
|
|
|
(en:r:cluy q.u.yed.caq.dur (jam ham))
|
2016-07-25 00:23:28 +03:00
|
|
|
?: &(=(~ lew.wod.dur) |(=(%back -.ham)))
|
2013-09-29 00:21:18 +04:00
|
|
|
[wasp ..wisp]
|
|
|
|
=^ tuy +>.$
|
|
|
|
?:(=(~ lew.wod.dur) [*code +>.$] (griz now))
|
|
|
|
:_ ..wisp
|
|
|
|
=+ yig=sen
|
2014-04-24 02:45:46 +04:00
|
|
|
:: =+ bil=`will`(pare wyl.dur law.saf) :: XX not set
|
|
|
|
=+ bil=law.saf :: XX send whole will
|
|
|
|
=+ hom=(jam ham)
|
2013-09-29 00:21:18 +04:00
|
|
|
?: =(~ lew.wod.dur)
|
2014-04-24 02:45:46 +04:00
|
|
|
:- %open
|
|
|
|
%^ jam
|
|
|
|
[~ `life`p.yig]
|
|
|
|
bil
|
|
|
|
(sign:as:q.yig tuy hom)
|
2013-09-29 00:21:18 +04:00
|
|
|
:- %full
|
2014-04-24 02:45:46 +04:00
|
|
|
=+ cay=cluy
|
|
|
|
%^ jam
|
|
|
|
[`life`p.cay `life`p.yig]
|
|
|
|
bil
|
|
|
|
(seal:as:q.yig pub:ex:r.cay tuy hom)
|
2013-09-29 00:21:18 +04:00
|
|
|
-- :: --zuul:lax:as:go
|
|
|
|
-- :: --lax:as:go
|
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ gur :: default door
|
2015-12-20 23:50:45 +03:00
|
|
|
|= her/ship
|
2016-07-25 00:23:28 +03:00
|
|
|
^- door
|
2014-06-04 01:01:40 +04:00
|
|
|
=+ def=?.((lth her 256) ~ [~ %if ~2000.1.1 0 (mix her .0.0.1.0)])
|
2014-06-19 22:53:16 +04:00
|
|
|
[[~2100.1.1 def ~] ~ *clot]
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ myx :: door by ship
|
2015-12-20 23:50:45 +03:00
|
|
|
|= her/ship
|
2013-09-29 00:21:18 +04:00
|
|
|
^+ lax
|
|
|
|
=+ fod=(~(get by hoc.saf) her)
|
|
|
|
~(. lax [her ?~(fod (gur her) u.fod)])
|
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ nux :: install door
|
2015-12-20 23:50:45 +03:00
|
|
|
|= new/_lax
|
2013-09-29 00:21:18 +04:00
|
|
|
^+ +>
|
|
|
|
+>(hoc.saf (~(put by hoc.saf) her.new dur.new))
|
|
|
|
::
|
|
|
|
++ sen :: current crypto
|
2015-12-20 23:50:45 +03:00
|
|
|
^- {p/life q/acru}
|
2013-09-29 00:21:18 +04:00
|
|
|
?~(val.saf !! [p.i.val.saf r.i.val.saf])
|
|
|
|
::
|
|
|
|
++ sev :: crypto by life
|
2015-12-20 23:50:45 +03:00
|
|
|
|= mar/life
|
|
|
|
^- {p/? q/acru}
|
2013-09-29 00:21:18 +04:00
|
|
|
?~ val.saf !!
|
|
|
|
?: =(mar p.i.val.saf)
|
|
|
|
[& r.i.val.saf]
|
|
|
|
?> (lth mar p.i.val.saf)
|
|
|
|
:- |
|
2014-04-10 04:28:22 +04:00
|
|
|
|- ^- acru
|
2013-12-24 00:49:15 +04:00
|
|
|
?> ?=(^ t.val.saf)
|
2013-12-09 01:23:03 +04:00
|
|
|
?: =(mar p.i.t.val.saf)
|
|
|
|
r.i.t.val.saf
|
2013-09-29 00:21:18 +04:00
|
|
|
$(t.val.saf t.t.val.saf)
|
|
|
|
::
|
|
|
|
++ sex :: export secrets
|
|
|
|
|- ^- mace
|
|
|
|
?~ val.saf ~
|
2013-12-09 01:23:03 +04:00
|
|
|
:- [p.i.val.saf sec:ex:r.i.val.saf]
|
2013-09-29 00:21:18 +04:00
|
|
|
$(val.saf t.val.saf)
|
|
|
|
::
|
|
|
|
++ xen :: canon
|
|
|
|
|- ^- (list ship)
|
|
|
|
(saxo our)
|
|
|
|
::
|
|
|
|
++ yew :: best will for
|
2015-12-20 23:50:45 +03:00
|
|
|
|= her/ship
|
2013-09-29 00:21:18 +04:00
|
|
|
^- will
|
|
|
|
=+ gel=(~(get by hoc.saf) her)
|
|
|
|
?^ gel
|
|
|
|
lew.wod.u.gel
|
|
|
|
?:((lth her 256) ~ $(her (sein her)))
|
|
|
|
-- :: --as:go
|
|
|
|
::
|
2014-06-04 03:39:28 +04:00
|
|
|
++ ha !: :: adopt new license
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {our/ship mac/mace wil/will}
|
2014-06-27 08:02:05 +04:00
|
|
|
^- town
|
2013-12-09 01:23:03 +04:00
|
|
|
?> !=(~ mac)
|
|
|
|
?> ?=(^ wil)
|
|
|
|
:: ?> =(our r.p.q.i.wil)
|
2013-09-29 00:21:18 +04:00
|
|
|
?> =(wil (grip wil ~))
|
|
|
|
?> (real mac wil)
|
|
|
|
%_ ton
|
2014-06-04 03:39:28 +04:00
|
|
|
fak r.i.wil
|
2013-09-29 00:21:18 +04:00
|
|
|
urb
|
|
|
|
%+ ~(put by urb.ton)
|
|
|
|
our
|
|
|
|
:* %- flop
|
2013-12-09 01:23:03 +04:00
|
|
|
|- ^- (list ship)
|
2013-09-29 00:21:18 +04:00
|
|
|
?:((lth our 256) ~ =+(seg=(sein our) [seg $(our seg)]))
|
|
|
|
::
|
2015-12-20 23:50:45 +03:00
|
|
|
(turn mac |=({p/life q/ring} [p q (weur q)]))
|
2013-12-09 01:23:03 +04:00
|
|
|
wil
|
2013-09-29 00:21:18 +04:00
|
|
|
~
|
|
|
|
~
|
|
|
|
==
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ su :: install safe
|
2015-12-20 23:50:45 +03:00
|
|
|
|= new/_as
|
2014-06-27 08:02:05 +04:00
|
|
|
^- town
|
2013-09-29 00:21:18 +04:00
|
|
|
ton(urb (~(put by urb.ton) our.new saf.new))
|
|
|
|
::
|
|
|
|
++ ti :: expire by time
|
2015-12-20 23:50:45 +03:00
|
|
|
|= now/@da
|
2014-06-27 08:02:05 +04:00
|
|
|
^- town
|
2013-09-29 00:21:18 +04:00
|
|
|
!!
|
|
|
|
::
|
|
|
|
++ us :: produce safe
|
2015-12-20 23:50:45 +03:00
|
|
|
|= our/ship
|
2015-12-15 01:21:10 +03:00
|
|
|
^- (unit _as)
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ goh=(~(get by urb.ton) our)
|
|
|
|
?~ goh ~
|
|
|
|
[~ ~(. as [our u.goh])]
|
|
|
|
-- :: --go
|
|
|
|
--
|
|
|
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
|
|
:: section 4aG, protocol engine ::
|
|
|
|
::
|
|
|
|
|%
|
|
|
|
++ am :: am
|
2015-12-20 23:50:45 +03:00
|
|
|
|_ {now/@da fox/fort} :: protocol engine
|
2016-07-25 00:23:28 +03:00
|
|
|
++ anon
|
|
|
|
|= wen/@da
|
|
|
|
^- @tas
|
|
|
|
?: =(wen now) %now
|
|
|
|
?: (gth wen now)
|
|
|
|
(cat 3 (scot %ud (msec (sub wen now))) %ms)
|
|
|
|
(cat 3 '-' $(now wen, wen now))
|
|
|
|
::
|
|
|
|
++ anun
|
|
|
|
|= wun/(unit @da)
|
|
|
|
^- @tas
|
|
|
|
?~(wun %no (anon u.wun))
|
|
|
|
::
|
|
|
|
++ anos
|
|
|
|
|= one/@dr
|
|
|
|
^- @tas
|
|
|
|
?: =(`@`0 one) '0ms'
|
|
|
|
(cat 3 (scot %ud (msec one)) %ms)
|
|
|
|
::
|
|
|
|
++ anus
|
|
|
|
|= une/(unit @dr)
|
|
|
|
^- @tas
|
|
|
|
?~(une %no (anos u.une))
|
|
|
|
::
|
2013-09-29 00:21:18 +04:00
|
|
|
++ boot :: boot:am
|
2014-06-27 08:02:05 +04:00
|
|
|
^- fort :: restore from noun
|
2013-09-29 00:21:18 +04:00
|
|
|
%= fox
|
|
|
|
urb.ton
|
2014-04-10 04:28:22 +04:00
|
|
|
%- ~(gas by *(map ship sufi))
|
2013-09-29 00:21:18 +04:00
|
|
|
%+ turn
|
|
|
|
(~(tap by urb.ton.fox) ~)
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {p/ship q/sufi} ^- {p/ship q/sufi}
|
2013-09-29 00:21:18 +04:00
|
|
|
:- p
|
|
|
|
%= q
|
|
|
|
val
|
2015-12-20 23:50:45 +03:00
|
|
|
(turn val.q |=({p/life q/ring r/acru} [p q (weur q)]))
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
==
|
|
|
|
++ come :: come:am
|
2016-07-25 00:23:28 +03:00
|
|
|
|= {ges/(unit @t) wid/@ bur/@ fak/?} :: instantiate pawn
|
2015-12-20 23:50:45 +03:00
|
|
|
^- {p/{p/ship q/@uvG} q/fort}
|
2014-04-10 04:28:22 +04:00
|
|
|
=+ loy=(bruw wid bur)
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ rig=sec:ex:loy
|
|
|
|
=+ our=`@p`fig:ex:loy
|
|
|
|
=+ syp=[[0 ~ our now] [%en %pawn ges] pub:ex:loy]
|
|
|
|
:- [our pac:ex:loy]
|
|
|
|
%_ fox
|
|
|
|
ton
|
|
|
|
%^ ~(ha go ton.fox)
|
|
|
|
our
|
|
|
|
`mace`[[0 rig] ~]
|
2014-10-31 06:13:40 +03:00
|
|
|
`will`[[(sign:as:loy *@ (shaf %self (sham syp))) syp fak] ~]
|
2014-06-04 05:11:30 +04:00
|
|
|
fak.ton
|
|
|
|
fak
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
::
|
2014-06-04 03:39:28 +04:00
|
|
|
++ czar !: :: czar:am
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {our/ship ger/@uw fak/?} :: instantiate emperor
|
|
|
|
^- {p/(list boon) q/fort}
|
2016-07-25 00:23:28 +03:00
|
|
|
=+ loy=?:(fak (bruw 2.048 our) (bruw 2.048 ger)) :: fake uses carrier #
|
2014-06-04 03:39:28 +04:00
|
|
|
=+ fim==(fig:ex:loy (zeno our))
|
|
|
|
?: &(!fak !fim) !! :: not fake & bad fig
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ mac=`mace`[[0 sec:ex:loy] ~]
|
|
|
|
=+ syp=`step`[`bray`[0 ~ our now] [%en %czar ~] pub:ex:loy]
|
2014-10-31 06:13:40 +03:00
|
|
|
=+ ded=`deed`[(sign:as:loy *@ (shaf %self (sham syp))) syp fak]
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ buq=`buck`[mac [ded ~]]
|
|
|
|
=: ton.fox (~(ha go ton.fox) our buq)
|
2014-01-21 01:50:54 +04:00
|
|
|
zac.fox (~(put by zac.fox) our *corn)
|
2014-06-04 03:39:28 +04:00
|
|
|
fak.ton.fox fak
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
[[[%beer our pac:ex:loy] ~] fox]
|
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ doze
|
|
|
|
%+ hunt `(add now ~s32)
|
|
|
|
|- ^- (unit @da)
|
|
|
|
?~ zac.fox ~
|
|
|
|
:(hunt $(zac.fox l.zac.fox) $(zac.fox r.zac.fox) doze:(um p.n.zac.fox))
|
|
|
|
::
|
2013-09-29 00:21:18 +04:00
|
|
|
++ gnaw :: gnaw:am
|
2016-07-25 00:23:28 +03:00
|
|
|
|= {ryn/lane pac/rock} :: process packet
|
2015-12-20 23:50:45 +03:00
|
|
|
^- {p/(list boon) q/fort}
|
2016-07-25 00:23:28 +03:00
|
|
|
?. =(7 (end 0 3 pac)) [~ fox]
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ kec=(bite pac)
|
2013-10-08 09:56:57 +04:00
|
|
|
?: (goop p.p.kec) [~ fox]
|
2013-09-29 00:21:18 +04:00
|
|
|
?. (~(has by urb.ton.fox) q.p.kec)
|
|
|
|
[~ fox]
|
|
|
|
=< zork
|
2016-07-25 00:23:28 +03:00
|
|
|
=< abet
|
|
|
|
:: ~& [%in p.p.kec ryn `@p`(mug (shaf %flap pac))]
|
|
|
|
:: ~& [%in p.p.kec (flam (shaf %flap pac))]
|
|
|
|
%- chew:(ho:(um q.p.kec) p.p.kec)
|
|
|
|
[q.kec (shaf %flap pac) ryn r.kec]
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2015-05-07 05:00:58 +03:00
|
|
|
++ goop :: blacklist
|
2015-12-20 23:50:45 +03:00
|
|
|
|= him/ship
|
2013-10-10 21:58:41 +04:00
|
|
|
|
|
2013-10-08 09:56:57 +04:00
|
|
|
::
|
2013-12-09 01:23:03 +04:00
|
|
|
++ have :: have:am
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {our/ship buq/buck} :: acquire license
|
|
|
|
^- {p/(list boon) q/fort}
|
2013-09-29 00:21:18 +04:00
|
|
|
=: ton.fox (~(ha go ton.fox) our buq)
|
2014-01-21 01:50:54 +04:00
|
|
|
zac.fox (~(put by zac.fox) our *corn)
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
[[[%beer our pac:ex:q:sen:(need (~(us go ton.fox) our))] ~] fox]
|
|
|
|
::
|
|
|
|
++ kick :: kick:am
|
2015-12-20 23:50:45 +03:00
|
|
|
|= hen/duct :: refresh net
|
|
|
|
=+ aks=(turn (~(tap by urb.ton.fox) ~) |=({p/ship q/sufi} p))
|
|
|
|
|- ^- {p/(list boon) q/fort}
|
2013-09-29 00:21:18 +04:00
|
|
|
?~ aks [~ fox]
|
|
|
|
=^ buz fox zork:(kick:(um i.aks) hen)
|
|
|
|
=^ biz fox $(aks t.aks)
|
|
|
|
[(weld p.buz p.biz) fox]
|
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ rack :: ruck:am
|
|
|
|
|= {soq/sock kos/bole cop/coop} :: new e2e ack
|
|
|
|
^- {p/(list boon) q/fort}
|
|
|
|
zork:abet:(hike:(ho:(um p.soq) q.soq) kos cop)
|
2014-07-24 06:02:50 +04:00
|
|
|
::
|
2013-09-29 00:21:18 +04:00
|
|
|
++ wake :: wake:am
|
2015-12-20 23:50:45 +03:00
|
|
|
|= hen/duct :: harvest packets
|
2016-07-25 00:23:28 +03:00
|
|
|
=+ caz=zac.fox
|
2015-12-20 23:50:45 +03:00
|
|
|
|- ^- {p/(list boon) q/fort}
|
2016-07-25 00:23:28 +03:00
|
|
|
?~ caz [~ fox]
|
|
|
|
=^ lef fox $(caz l.caz)
|
|
|
|
=^ ryt fox $(caz r.caz)
|
|
|
|
:: =^ bun fox zork:(wake:(um p.n.caz) hen) :: XX oldpump
|
|
|
|
=^ bun fox zork:(walk:(um p.n.caz) hen)
|
|
|
|
:_(fox :(weld p.lef p.ryt p.bun))
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ wise :: wise:am
|
2016-07-25 00:23:28 +03:00
|
|
|
|= {soq/sock hen/duct cha/path val/*} :: send request
|
|
|
|
^- {p/(list boon) q/fort}
|
|
|
|
:: XX oldpump
|
2016-07-26 02:34:38 +03:00
|
|
|
:: zork:abet:(we-wool:(wend:(ho:(um p.soq) q.soq) hen) cha val)
|
2016-07-25 00:23:28 +03:00
|
|
|
zork:abet:(we-woof:(wend:(ho:(um p.soq) q.soq) hen) cha val)
|
|
|
|
::
|
|
|
|
++ wish :: wise:am
|
|
|
|
|= {soq/sock kos/bole cha/path val/*} :: return response
|
2015-12-20 23:50:45 +03:00
|
|
|
^- {p/(list boon) q/fort}
|
2016-07-25 00:23:28 +03:00
|
|
|
:: XX oldpump
|
2016-07-26 02:34:38 +03:00
|
|
|
:: zork:abet:(we-wool:(wand:(ho:(um p.soq) q.soq) kos) cha val)
|
2016-07-25 00:23:28 +03:00
|
|
|
zork:abet:(we-woof:(wand:(ho:(um p.soq) q.soq) kos) cha val)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ um :: per server
|
2015-12-20 23:50:45 +03:00
|
|
|
|= our/ship
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ gus=(need (~(us go ton.fox) our))
|
2014-01-21 01:50:54 +04:00
|
|
|
=+ ^= weg ^- corn
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ weg=(~(get by zac.fox) our)
|
2014-01-21 01:50:54 +04:00
|
|
|
?^(weg u.weg *corn)
|
2015-12-20 23:50:45 +03:00
|
|
|
=| bin/(list boon)
|
2013-09-29 00:21:18 +04:00
|
|
|
|%
|
2016-07-25 00:23:28 +03:00
|
|
|
++ doze :: doze:um:am
|
|
|
|
|- ^- (unit @da) :: wakeup time
|
|
|
|
?~ wab.weg ~
|
|
|
|
:(hunt $(wab.weg l.wab.weg) $(wab.weg r.wab.weg) doze:(ho p.n.wab.weg))
|
|
|
|
::
|
|
|
|
++ wake :: wake:um:am
|
|
|
|
|= hen/duct :: activate
|
|
|
|
=. +> (kick hen)
|
|
|
|
=+ baw=wab.weg
|
|
|
|
|- ^+ +>.^$
|
|
|
|
?~ baw +>.^$
|
|
|
|
=. +>.^$ $(baw l.baw)
|
|
|
|
=. +>.^$ $(baw r.baw)
|
|
|
|
abet:thaw:(ho p.n.baw)
|
|
|
|
::
|
|
|
|
++ walk :: walk:um:am
|
|
|
|
|= hen/duct :: activate
|
|
|
|
=^ gup pod.weg (~(top se pod.weg) now)
|
|
|
|
|- ^+ +>.^$
|
|
|
|
?~ gup +>.^$
|
|
|
|
$(gup t.gup, +>.^$ abet:(balk:(ho p.i.gup) q.i.gup))
|
|
|
|
::
|
2013-09-29 00:21:18 +04:00
|
|
|
++ ho :: ho:um:am
|
2015-12-20 23:50:45 +03:00
|
|
|
|= her/ship :: per friend
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ diz=(myx:gus her)
|
|
|
|
=+ bah=(~(get by wab.weg) her)
|
2016-07-26 02:34:38 +03:00
|
|
|
=> .(bah `bath`?~(bah [~ [2 ~ ~] ~ ~] u.bah))
|
2013-09-29 00:21:18 +04:00
|
|
|
|%
|
2016-07-25 00:23:28 +03:00
|
|
|
++ abet :: abet:ho:um:am
|
|
|
|
%= +>.$ :: resolve
|
|
|
|
gus (nux:gus diz)
|
2016-07-26 02:34:38 +03:00
|
|
|
wab.weg (~(put by wab.weg) her bah)
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ back :: back:ho:um:am
|
|
|
|
|= {ost/bone dam/flap cop/coop lag/@dr} :: receive ack
|
2014-07-24 06:02:50 +04:00
|
|
|
^+ +>
|
2016-07-25 00:23:28 +03:00
|
|
|
?: =(`@`0 dam) +> :: dummy ack
|
|
|
|
?. (~(has by sal.bah) ost)
|
|
|
|
~& [%back-lost ost (flam dam)]
|
|
|
|
+>
|
2016-07-26 02:34:38 +03:00
|
|
|
:: XX oldpump
|
2016-07-25 00:23:28 +03:00
|
|
|
:: ~& [%back-took ost (flam dam)]
|
2016-07-26 02:34:38 +03:00
|
|
|
:: (~(we-tock we ost (~(got by sal.bah) ost)) dam cop lag)
|
2016-07-25 00:23:28 +03:00
|
|
|
abet:(back:(cave ost) dam cop lag)
|
2014-07-24 06:02:50 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ balk :: balk:ho:um:am
|
|
|
|
|= kos/bole :: wakeup
|
|
|
|
^+ +>
|
2016-07-26 19:51:21 +03:00
|
|
|
:: XX pumpstuff
|
2016-07-25 00:23:28 +03:00
|
|
|
=+ vac=(cave kos)
|
|
|
|
=^ pex vac wake:vac
|
|
|
|
=. +>.$ abet:vac
|
|
|
|
(busk xong:diz pex)
|
2014-07-24 06:02:50 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ busk :: busk:ho:um:am
|
|
|
|
|= {waz/(list ship) pex/(list rock)} :: send packets
|
|
|
|
%_ +>
|
|
|
|
bin
|
|
|
|
|- ^+ bin
|
|
|
|
?~ pex bin
|
|
|
|
$(pex t.pex, bin (weld (flop (wist:diz now waz ~ i.pex)) bin))
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ cave :: cave:ho:um:am
|
|
|
|
|= kos/bole :: new packet pump
|
|
|
|
=| pump
|
|
|
|
=< abed
|
|
|
|
|%
|
|
|
|
++ abed :: instantiate
|
|
|
|
=+ bip=(~(get by nup.bah) kos)
|
|
|
|
%_(+ +< ?^(bip u.bip *pump))
|
|
|
|
::
|
|
|
|
++ abet :: resolve
|
|
|
|
=. . wade
|
|
|
|
=+ nyx=wait
|
|
|
|
:: ~& :~ %cave-abet
|
|
|
|
:: [her/her kos/kos]
|
|
|
|
:: [liv/wail win/win]
|
|
|
|
:: wait/(anun nyx)
|
|
|
|
:: ==
|
|
|
|
%_ +>.$
|
|
|
|
nup.bah (~(put by nup.bah) kos +>-(nex nyx))
|
|
|
|
pod.weg
|
|
|
|
=+ pod=?~(nex pod.weg (~(dal se pod.weg) u.nex her kos))
|
|
|
|
?~(nyx pod (~(put se pod) u.nyx her kos))
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ aimd :: TCP formula
|
|
|
|
|= boz/@ud :: number lost, 0=ack
|
|
|
|
+>
|
|
|
|
::
|
|
|
|
++ aime :: TCP formula
|
|
|
|
|= boz/@ud :: number lost, 0=ack
|
|
|
|
%_ +>
|
|
|
|
win
|
|
|
|
?: =(`@`0 boz)
|
|
|
|
::
|
|
|
|
:: we don't grow the window if we sense buffer bloat
|
|
|
|
::
|
|
|
|
?: ?& !=(`@`0 rtm.pad.sac)
|
|
|
|
(gth rts.pad.sac (mul 3 rtm.pad.sac))
|
|
|
|
==
|
|
|
|
win
|
|
|
|
(add 1.536 win)
|
|
|
|
(max 1.536 (rsh 0 boz win))
|
|
|
|
==
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ babe :: message ack
|
|
|
|
|= {liq/tick cop/coop}
|
2013-09-29 00:21:18 +04:00
|
|
|
^+ +>
|
2016-07-25 00:23:28 +03:00
|
|
|
=+ lef=(~(got by nem) liq)
|
|
|
|
?. =(~ cop)
|
|
|
|
(done:cull:fine liq q.lef cop)
|
|
|
|
?. =(1 p.lef)
|
|
|
|
+>.$(nem (~(put by nem) liq (dec p.lef) q.lef))
|
|
|
|
(done:fine liq q.lef cop)
|
|
|
|
::
|
|
|
|
++ back :: receive ack
|
|
|
|
|= {dam/flap cop/coop lag/@dr}
|
|
|
|
^+ +>
|
|
|
|
=+ luq=(~(get by unc) dam)
|
|
|
|
?~ luq
|
|
|
|
:: not waiting for this packet - eg, duplicate ack
|
2013-09-29 00:21:18 +04:00
|
|
|
+>.$
|
2016-07-25 00:23:28 +03:00
|
|
|
(babe:(home(unc (~(del by unc) dam)) dam lag) u.luq cop)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ burp :: delay packets after
|
|
|
|
|= {lag/@dr aft/@da}
|
2013-09-29 00:21:18 +04:00
|
|
|
^+ +>
|
2016-07-25 00:23:28 +03:00
|
|
|
?: =(`@`0 lag) +>.$
|
|
|
|
?: & +>.$
|
|
|
|
~& :* %burp
|
|
|
|
[her=her kos=kos]
|
|
|
|
[lag=(anos lag) aft=(anon aft)]
|
|
|
|
==
|
|
|
|
%_ +>
|
|
|
|
chu
|
|
|
|
|- ^+ chu
|
|
|
|
?~ chu ~
|
|
|
|
?: &(=(~ p.n.chu) q.n.chu)
|
|
|
|
[n.chu l.chu $(chu r.chu)]
|
|
|
|
:_ [$(chu l.chu) $(chu r.chu)]
|
|
|
|
?. &(?=(^ p.n.chu) (gth u.p.n.chu aft)) n.chu
|
|
|
|
n.chu(q %|, p `(add lag u.p.n.chu))
|
|
|
|
==
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ cull :: clear message
|
|
|
|
|= liq/tick
|
|
|
|
~& [%cave-cull her kos liq]
|
|
|
|
%_ +>
|
|
|
|
chu
|
|
|
|
|- ^+ chu
|
|
|
|
?~ chu ~
|
|
|
|
=+ ^= ecu ^- (qeu pony)
|
|
|
|
:+ n.chu
|
|
|
|
?:((lte liq q.n.chu) $(chu l.chu) l.chu)
|
|
|
|
?:((gte liq q.n.chu) $(chu r.chu) r.chu)
|
|
|
|
?.(=(`@`liq q.n.chu) ecu ~(nip to ecu))
|
|
|
|
==
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ cold =(`@`0 fax.sac) :: nothing happening
|
|
|
|
++ dead &(!cold (gth (sub now lax.sac) ~s8)):: stuck
|
|
|
|
++ done :: deliver ack
|
|
|
|
|= {liq/tick cha/path cop/coop}
|
2013-09-29 00:21:18 +04:00
|
|
|
^+ +>
|
2016-07-25 00:23:28 +03:00
|
|
|
+>(..cave we-abet:(we-toad:(wand kos) liq cha cop))
|
|
|
|
::
|
|
|
|
++ fine :: forget message
|
|
|
|
|= liq/tick
|
|
|
|
+>(nem (~(del by nem) liq))
|
|
|
|
::
|
|
|
|
++ hump :: combine pomp
|
|
|
|
|= {one/pomp two/pomp}
|
|
|
|
^- pomp
|
|
|
|
:* (add byt.one byt.two)
|
|
|
|
(add boz.one boz.two)
|
|
|
|
?^(rut.one rut.one rut.two)
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ honk :: lose all packets
|
|
|
|
|- ^- (pair pomp (qeu pony))
|
|
|
|
?~ chu [*pomp ~]
|
|
|
|
=+ [lef=$(chu l.chu) ryt=$(chu r.chu)]
|
|
|
|
=+ hup=(hump p.lef p.ryt)
|
|
|
|
=+ neu=[n=n.chu l=q.lef r=q.ryt]
|
|
|
|
?~ p.n.chu [hup neu]
|
|
|
|
~& [%skip `@p`(mug p.s.n.chu)]
|
|
|
|
:_ neu(p.n ~, q.n |)
|
|
|
|
hup(boz +(boz.hup))
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ home
|
|
|
|
|= {dam/flap lag/@dr}
|
2014-07-24 06:02:50 +04:00
|
|
|
^+ +>
|
2016-07-25 00:23:28 +03:00
|
|
|
=^ rey chu (hack `dam)
|
|
|
|
=^ pex +>.$ wash:(hone lag rey)
|
|
|
|
+>.$(..busk (busk xong:diz pex))
|
|
|
|
::
|
|
|
|
++ hack :: accept
|
|
|
|
|= dum/(unit flap)
|
|
|
|
^- (pair pomp (qeu pony))
|
|
|
|
?~ chu [*pomp ~]
|
|
|
|
=+ ack=&(?=(^ dum) =(u.dum p.s.n.chu))
|
|
|
|
=+ :* ::
|
|
|
|
:: we have lost all packets ahead of an ack.
|
|
|
|
::
|
|
|
|
ryt=?.(ack $(chu r.chu) honk(chu r.chu))
|
|
|
|
::
|
|
|
|
:: there are no sent packets behind an unsent virgin.
|
|
|
|
::
|
|
|
|
^= lef
|
|
|
|
?:(&(=(~ p.n.chu) q.n.chu) [p=*pomp q=l.chu] $(chu l.chu))
|
|
|
|
==
|
|
|
|
=+ :* neu=[n=n.chu l=q.lef r=q.ryt]
|
|
|
|
hup=(hump p.lef p.ryt)
|
|
|
|
len=(met 3 q.s.n.chu)
|
|
|
|
==
|
|
|
|
?. ack
|
|
|
|
?~ p.n.chu
|
|
|
|
::
|
|
|
|
:: n.chu is not live.
|
|
|
|
::
|
|
|
|
:: ~& [?:(q.n.chu %hack-hold %hack-cold) (flam p.s.n.chu)]
|
|
|
|
[hup neu]
|
|
|
|
?: (lth now (add loss u.p.n.chu))
|
|
|
|
::
|
|
|
|
:: n.chu remains live.
|
|
|
|
::
|
|
|
|
:: ~& [%hack-live (anon (add loss u.p.n.chu)) (flam p.s.n.chu)]
|
|
|
|
[hup neu]
|
|
|
|
::
|
|
|
|
:: n.chu declared lost, no longer virgin.
|
|
|
|
::
|
|
|
|
~& [%lost (anon (add loss u.p.n.chu)) (flam p.s.n.chu)]
|
|
|
|
[hup(boz +(boz.hup)) neu(p.n ~, q.n |)]
|
|
|
|
::
|
|
|
|
:: n.chu acknowledged.
|
|
|
|
::
|
|
|
|
:_ ~(nip to `(qeu pony)`neu)
|
|
|
|
%_ hup
|
|
|
|
byt (add len byt.hup)
|
|
|
|
rut ?: |(?=($~ p.n.chu) !q.n.chu)
|
|
|
|
~& [%deaf (flam p.s.n.chu)]
|
|
|
|
~
|
|
|
|
?: (lth now u.p.n.chu)
|
|
|
|
~& :* %hack-flub
|
|
|
|
gap=(anon u.p.n.chu)
|
|
|
|
[now=now wen=u.p.n.chu]
|
|
|
|
(flam p.s.n.chu)
|
|
|
|
==
|
|
|
|
!!
|
|
|
|
=+ `(min ~s1 (sub now u.p.n.chu))
|
|
|
|
:: ~& [%clap `@p`(mug p.s.n.chu) (anon u.p.n.chu)]
|
|
|
|
-
|
2014-07-24 06:02:50 +04:00
|
|
|
==
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ hone :: adjust for ack
|
|
|
|
|= {lag/@dr rey/pomp}
|
2013-09-29 00:21:18 +04:00
|
|
|
^+ +>
|
2016-07-25 00:23:28 +03:00
|
|
|
=<
|
|
|
|
:: ~& :~ %hone [her kos win wail]
|
|
|
|
:: rtm/(anos rtm.pad.sac)
|
|
|
|
:: rtg/(anos rtg.pad.sac)
|
|
|
|
:: rts/(anos rts.pad.sac)
|
|
|
|
:: ==
|
|
|
|
.
|
|
|
|
=. +> ?:(&(=(`@`0 byt.rey) =(`@`0 boz.rey)) +> (aimd boz.rey))
|
|
|
|
=+ oyb=byt.pad.sac
|
|
|
|
=. byt.pad.sac (add oyb byt.rey)
|
|
|
|
?~ rut.rey +>.$
|
|
|
|
=+ old=`@da`(sub now u.rut.rey)
|
|
|
|
=+ dub=(mul 2 rtm.pad.sac)
|
|
|
|
=: rtm.pad.sac ?: =(`@`0 rtm.pad.sac) u.rut.rey
|
|
|
|
(min rtm.pad.sac u.rut.rey)
|
|
|
|
rtg.pad.sac ?: =(`@`0 rtg.pad.sac) u.rut.rey
|
|
|
|
%+ div
|
|
|
|
%+ add (mul rtg.pad.sac oyb)
|
|
|
|
(mul u.rut.rey byt.rey)
|
|
|
|
byt.pad.sac
|
|
|
|
rts.pad.sac ?: =(`@`0 rts.pad.sac) u.rut.rey
|
|
|
|
(div (add (mul rts.pad.sac 3) u.rut.rey) 4)
|
|
|
|
==
|
|
|
|
?. &(!=(`@`0 dub) (gth rts.pad.sac dub))
|
|
|
|
(burp lag old)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
:: extreme buffer bloat, roundtrip double the minimum;
|
|
|
|
:: scale back window; delay later-sent packets
|
2014-07-24 06:02:50 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
(burp:(aimd 1) (add lag dub) old)
|
|
|
|
::
|
|
|
|
++ lost |=(a/@da (gte now (add a loss))) :: sent deemed lost
|
|
|
|
++ loss :: loss timer
|
|
|
|
:: ?: =(`@`0 rtg.pad.sac) ~s1
|
|
|
|
:: (mul 3 rtg.pad.sac)
|
|
|
|
~s5
|
|
|
|
::
|
|
|
|
++ send :: add to queue
|
|
|
|
|= {liq/tick cha/path val/*}
|
|
|
|
^+ +>
|
|
|
|
=. +> wade
|
|
|
|
=^ pex diz (zuul:diz now [%bond [(mix kos 1) liq] cha val])
|
|
|
|
:: ~& [%send (turn pex |=(a/@ (flam (shaf %flap a))))]
|
|
|
|
=. nem (~(put by nem) liq [(lent pex) cha])
|
|
|
|
|- ^+ +>.^$
|
|
|
|
?~ pex +>.^$
|
|
|
|
=+ dam=(shaf %flap i.pex)
|
|
|
|
%= $
|
|
|
|
pex t.pex
|
|
|
|
unc (~(put by unc) dam liq)
|
|
|
|
chu (~(put to chu) `pony`[~ & liq dam i.pex])
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ waac :: merge statistics
|
|
|
|
|= new/plod
|
|
|
|
^- plod
|
|
|
|
=+ ols=(min (bex 20) byt.old)
|
|
|
|
=+ sum=(add ols byt.new)
|
|
|
|
~& [%waac new=byt.new old=byt.old sum=sum]
|
|
|
|
:* sum
|
|
|
|
(div (add (mul ols rtm.old) (mul byt.new rtm.new)) sum)
|
|
|
|
(div (add (mul ols rtg.old) (mul byt.new rtg.new)) sum)
|
|
|
|
rts.new
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ wade :: update statistics
|
|
|
|
^+ .
|
|
|
|
?: =(~ chu)
|
|
|
|
?: cold .
|
|
|
|
::
|
|
|
|
:: end burst, save statistics
|
|
|
|
::
|
|
|
|
%_(. sac *plow, old pad.sac)
|
|
|
|
?. =(`@`0 fax.sac) .
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
:: start flow, default statistics
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
%_ .
|
|
|
|
win 65.536
|
|
|
|
sac
|
|
|
|
^- plow
|
|
|
|
:* fax=now
|
|
|
|
lax=now
|
|
|
|
pad=old(rtm ~s0, byt (min byt.old 16.384))
|
|
|
|
==
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ wake :: arbitrary activate
|
|
|
|
^- {(list rock) _.}
|
|
|
|
=. . wade
|
|
|
|
=^ rey chu (hack ~)
|
|
|
|
wash:(hone ~s0 rey)
|
|
|
|
::
|
|
|
|
++ wail :: live count
|
|
|
|
|- ^- @ud
|
|
|
|
?~ chu 0
|
|
|
|
=+ r=$(chu r.chu)
|
|
|
|
?: &(q.n.chu =(~ p.n.chu)) r
|
|
|
|
=+ l=$(chu l.chu)
|
|
|
|
;: add l r
|
|
|
|
?:(&(?=(^ p.n.chu) !(lost u.p.n.chu)) (met 3 q.s.n.chu) 0)
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ wait :: wait until
|
|
|
|
^- (unit @da)
|
|
|
|
?. =(~ -:wosh) `now :: XX performance!
|
|
|
|
walk
|
|
|
|
::
|
|
|
|
++ walk :: first timeout
|
|
|
|
|- ^- (unit @da)
|
|
|
|
?~ chu ~
|
|
|
|
;: hunt
|
|
|
|
$(chu r.chu)
|
|
|
|
?~(p.n.chu ~ `(add u.p.n.chu loss))
|
|
|
|
$(chu l.chu)
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ wosh :: flush packets, hack
|
|
|
|
^- {(list rock) _.}
|
|
|
|
=+ liv=wail
|
|
|
|
?: (gth liv win) [~ +]
|
|
|
|
=+ [rum=(sub win liv) raw=*(list rock)]
|
|
|
|
=< $:work
|
|
|
|
|% ++ $ [(flop raw) ..wash]
|
|
|
|
++ work
|
|
|
|
^+ .
|
|
|
|
=+ huc=chu
|
|
|
|
?~ huc +
|
|
|
|
=< $
|
|
|
|
|% ++ $
|
|
|
|
^+ ..work
|
|
|
|
=. ..work rite
|
|
|
|
?. =(~ p.n.huc) left
|
|
|
|
=+ len=(met 3 q.s.n.huc)
|
|
|
|
?: (lth rum len) ..work
|
|
|
|
%= left
|
|
|
|
rum (sub rum len)
|
|
|
|
raw [q.s.n.huc raw]
|
|
|
|
p.n.huc `now
|
|
|
|
==
|
|
|
|
++ left
|
|
|
|
^+ ..work
|
|
|
|
=. ..work work(chu l.huc)
|
|
|
|
..work(chu huc(l chu))
|
|
|
|
++ rite
|
|
|
|
^+ ..work
|
|
|
|
=. ..work work(chu r.huc)
|
|
|
|
..work(chu huc(r chu))
|
|
|
|
--
|
|
|
|
--
|
|
|
|
::
|
|
|
|
++ wash :: flush packets
|
|
|
|
^- {(list rock) _.}
|
|
|
|
=+ liv=wail
|
|
|
|
?: (gth liv win) [~ +]
|
|
|
|
=+ [rum=(sub win liv) raw=*(list rock)]
|
|
|
|
=- [(flop q.-) ..wash(chu r.-)]
|
|
|
|
|- ^- (trel @ud (list rock) (qeu pony))
|
|
|
|
?~ chu [rum raw ~]
|
|
|
|
=+ ryt=$(chu r.chu)
|
|
|
|
=> .(rum p.ryt, raw q.ryt, r.chu r.ryt)
|
|
|
|
?. =(~ p.n.chu)
|
|
|
|
:: ~& [%wash-live (flam p.s.n.chu)]
|
|
|
|
=+ lef=$(chu l.chu)
|
|
|
|
[p.lef q.lef [n.chu r.lef r.chu]]
|
|
|
|
=+ len=(met 3 q.s.n.chu)
|
|
|
|
?: (lth rum len)
|
|
|
|
:: ~& [%wash-stop (flam p.s.n.chu) [rum len]]
|
|
|
|
[rum raw chu]
|
|
|
|
:: ~& [?:(q.n.chu %fire %warm) len (flam p.s.n.chu)]
|
|
|
|
=+ lef=$(chu l.chu, rum (sub rum len), raw [q.s.n.chu raw])
|
|
|
|
[p.lef q.lef [n.chu(p `now) r.lef r.chu]]
|
|
|
|
--
|
|
|
|
::
|
|
|
|
++ chew :: chew:ho:um:am
|
|
|
|
|= {sin/skin dam/flap ryn/lane msg/@} :: handle anything
|
|
|
|
^+ +>
|
|
|
|
::
|
|
|
|
:: ++chew
|
|
|
|
::
|
|
|
|
=^ fud diz (grok sin ryn msg)
|
|
|
|
:: ~& [%chew sin -.fud `@p`(mug dam) ryn (met 3 msg)]
|
|
|
|
?- -.fud
|
|
|
|
$back =. +>.$ ?. =(%full sin) +>.$
|
|
|
|
:: here we send a dummy ack
|
|
|
|
:: to complete the key exchange and stop
|
|
|
|
:: the sender from using %full
|
|
|
|
:: (conk ~ dam)
|
|
|
|
:: (conk 0 `@`0 ~)
|
|
|
|
+>.$
|
|
|
|
:: ~& [%chew-back p.fud (flam dam) (flam q.fud)]
|
|
|
|
(back +.fud)
|
|
|
|
$bond hi-abet:(hi-bond:(high p.fud dam ryn) q.fud r.fud)
|
|
|
|
$carp =< hi-abet
|
|
|
|
%- hi-carp:(high [kos liq]:p.fud dam ryn)
|
|
|
|
[(kins syn.p.fud) cnt.p.fud q.fud]
|
|
|
|
$fore (fore ryn +.fud)
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ conk :: conk:ho:um:am
|
|
|
|
|= {kos/bole dam/flap cop/coop} :: send acknowledge
|
|
|
|
^+ +>
|
|
|
|
?: =(0 kos)
|
|
|
|
:: don't ack an ack
|
|
|
|
~& [%conk-acak (flam dam)]
|
|
|
|
+>
|
|
|
|
=^ pex diz (zuul:diz now [%back (mix 1 kos) dam cop ~s0])
|
|
|
|
(busk xong:diz pex)
|
|
|
|
::
|
|
|
|
++ doze :: doze:ho:um:am
|
|
|
|
^- (unit @da) :: wait until
|
|
|
|
:: rtn.sop.bah :: XX oldpump
|
|
|
|
=+ doe=~(til se pod.weg)
|
|
|
|
?: ?=($~ doe)
|
|
|
|
~
|
|
|
|
doe
|
|
|
|
::
|
|
|
|
++ fore :: fore:ho:um:am
|
|
|
|
|= {ryn/lane who/ship via/(unit lane) msg/@} :: forward packet
|
|
|
|
^+ +>
|
|
|
|
=+ ^= lyn ^- lane
|
|
|
|
?~ via ryn
|
|
|
|
?. ?=($if -.u.via) u.via
|
|
|
|
[%ix +.u.via]
|
|
|
|
:: u.via
|
|
|
|
?: =(our who)
|
|
|
|
+>.$(bin [[%mead lyn msg] bin])
|
|
|
|
=+ zid=(myx:gus who)
|
|
|
|
+>.$(bin (weld (flop (wist:zid now xong:zid [~ lyn] msg)) bin))
|
|
|
|
::
|
|
|
|
++ grok :: grok:ho:um:am
|
|
|
|
|= {sin/skin ryn/lane msg/@} :: decode message
|
|
|
|
^+ [*meal diz]
|
|
|
|
::
|
|
|
|
:: ++grok decodes a message blob to a ++meal. Decoding
|
|
|
|
:: affects the orb connection state, diz.
|
|
|
|
::
|
|
|
|
=+ maw=|=(@ ((hard meal) (cue +<)))
|
|
|
|
=. diz ?:(=(%none sin) diz (wast:diz ryn))
|
|
|
|
?- sin
|
|
|
|
$none
|
|
|
|
:: ~& %chew-none
|
|
|
|
[(maw msg) diz]
|
|
|
|
::
|
|
|
|
$fast
|
|
|
|
:: ~& %chew-fast
|
|
|
|
=+ [mag=`hand`(end 7 1 msg) bod=(rsh 7 1 msg)]
|
|
|
|
=+ dey=(kuch:diz mag)
|
|
|
|
?~ dey
|
|
|
|
~& [%bad-key her mag]
|
|
|
|
!!
|
|
|
|
=^ key diz u.dey
|
|
|
|
[(maw (dy:q:sen:gus key bod)) diz]
|
|
|
|
::
|
|
|
|
$full
|
|
|
|
:: ~& %chew-full
|
|
|
|
=+ mex=((hard {p/{p/life q/life} q/will r/@}) (cue msg))
|
|
|
|
=. diz (deng:diz q.mex)
|
|
|
|
=+ wug=cluy:diz
|
|
|
|
?> =(q.p.mex p.wug)
|
|
|
|
=+ gey=(sev:gus p.p.mex)
|
|
|
|
=+ mes=(need (tear:as:q.gey pub:ex:r.wug r.mex))
|
|
|
|
=. diz (wast:(wasc:diz p.mes) ryn)
|
|
|
|
[(maw q.mes) diz]
|
|
|
|
::
|
|
|
|
$open
|
|
|
|
:: ~& %chew-open
|
|
|
|
=+ mex=((hard {p/{$~ q/life} q/will r/@}) (cue msg))
|
|
|
|
=. diz (deng:diz q.mex)
|
|
|
|
=+ wug=cluy:diz
|
|
|
|
?> =(q.p.mex p.wug)
|
|
|
|
=. diz (wast:diz ryn)
|
|
|
|
[(maw (need (sure:as:r.wug *code r.mex))) diz]
|
|
|
|
==
|
|
|
|
::
|
|
|
|
++ hike :: hike:ho:um:am
|
|
|
|
|= {kos/bole cop/coop} :: acknowledgment
|
|
|
|
^+ +>
|
|
|
|
:: ~& [%hike [our her] kos cop]
|
|
|
|
=+ loc=(~(got by fon.bah) kos)
|
|
|
|
?. &(?=(^ laz.loc) =(kos p.p.u.laz.loc))
|
|
|
|
~& [%hike-no-message kos laz.loc]
|
|
|
|
!!
|
|
|
|
:: ~& [?~(cop %ro %re) her kos q.p.u.laz.loc]
|
|
|
|
hi-abet:(~(hi-back hi [kos q.p.u.laz.loc] [& +.u.laz.loc] loc) cop)
|
|
|
|
::
|
|
|
|
++ high :: high:ho:um:am
|
|
|
|
|= {fel/flea dam/flap ryn/lane} :: external message
|
|
|
|
^+ hi
|
|
|
|
~(. hi fel [& dam ryn] (fall (~(get by fon.bah) p.fel) *lock))
|
|
|
|
::
|
|
|
|
++ hi :: receiving core
|
|
|
|
|_ $: $: kos/bole :: sender
|
|
|
|
liq/tick :: index
|
|
|
|
==
|
|
|
|
$: tru/? :: authenticated
|
|
|
|
fap/flap :: critical flap
|
|
|
|
ryn/lane :: received from
|
|
|
|
==
|
|
|
|
lock
|
|
|
|
==
|
|
|
|
++ hi-abet :: resolve
|
|
|
|
+>(fon.bah (~(put by fon.bah) kos +<+>))
|
|
|
|
:: :: receive message
|
|
|
|
++ hi-bond
|
|
|
|
|= {cha/path val/*}
|
2013-09-29 00:21:18 +04:00
|
|
|
^+ +>
|
2016-07-25 00:23:28 +03:00
|
|
|
?: (lth liq laq)
|
|
|
|
:: we already acked this msg; ack it again
|
|
|
|
:: ~& [%hi-bond-low [kos liq] laq]
|
|
|
|
hi-cong
|
|
|
|
?: (gth liq laq)
|
|
|
|
:: later than the next msg; ignore
|
|
|
|
~& [%hi-bond-high [kos liq] laq]
|
|
|
|
+>
|
|
|
|
?: !=(~ laz)
|
|
|
|
:: this msg is already being processed; ignore
|
|
|
|
~& [%hi-bond-wait [kos liq] laq]
|
|
|
|
+>
|
|
|
|
=. nys (~(del by nys) liq)
|
|
|
|
?: =(0 (end 0 1 kos))
|
|
|
|
~& [%br her kos cha liq]
|
|
|
|
=. +>.$ (hi-back ~)
|
|
|
|
%= +>.$
|
|
|
|
bin :_(bin [%malt [our her] (~(got by r.zam.bah) kos) cha val])
|
|
|
|
==
|
|
|
|
~& [%tr her kos cha liq]
|
|
|
|
%= +>.$
|
|
|
|
bin :_(bin [%milk [our her] kos cha val])
|
|
|
|
laz `[[kos liq] fap ryn]
|
|
|
|
==
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ hi-back :: app acknowledge
|
|
|
|
|= cop/coop
|
|
|
|
^+ +>
|
|
|
|
(hi-cone(laq +(laq), laz ~) cop)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ hi-carp :: receive fragment
|
|
|
|
|= {syn/skin cnt/@ud far/(pair @ud @)}
|
2013-09-29 00:21:18 +04:00
|
|
|
^+ +>
|
2016-07-25 00:23:28 +03:00
|
|
|
:: ~& [%carp fap/`@p`(mug fap) syn/syn cnt/cnt far/p.far]
|
|
|
|
?: (lth liq laq)
|
|
|
|
:: ~& [%hi-card-low liq laq]
|
|
|
|
hi-cong
|
|
|
|
?: (gth liq laq)
|
|
|
|
:: ~& [%hi-card-high liq laq]
|
|
|
|
+>
|
|
|
|
=+ neb=`bait`(fall (~(get by nys) liq) [syn 0 [cnt ~]])
|
|
|
|
?> &(=(p.neb syn) (gth p.r.neb p.far) =(p.r.neb cnt))
|
|
|
|
=+ doy=(~(get by q.r.neb) p.far)
|
|
|
|
?^ doy (hi-conk ~)
|
|
|
|
=: q.r.neb (~(put by q.r.neb) p.far q.far)
|
|
|
|
q.neb +(q.neb)
|
|
|
|
==
|
|
|
|
?. =(q.neb p.r.neb)
|
|
|
|
(hi-conk(nys (~(put by nys) liq neb)) ~)
|
|
|
|
=^ fud diz (grok syn ryn (hi-golf r.neb))
|
|
|
|
=+ sec=?=(?($open $fast $full) syn)
|
|
|
|
=. tru |(tru sec)
|
|
|
|
?: ?=($back -.fud)
|
|
|
|
~& [%back-phat [kos p.fud] (flam q.fud) r.fud s.fud]
|
|
|
|
+>.$(+> (back +.fud))
|
|
|
|
?. &(tru ?=($bond -.fud) =([kos liq] p.fud))
|
|
|
|
~& [%ames-bad-bond tru -.fud [[kos liq] p.fud]]
|
|
|
|
!!
|
|
|
|
(hi-bond q.fud r.fud)
|
|
|
|
::
|
|
|
|
++ hi-cong (hi-conk (~(get by exc) liq)) :: accepted ack
|
|
|
|
++ hi-conk :: stated ack
|
|
|
|
|=(cop/coop +>(+> (conk kos fap cop)))
|
|
|
|
::
|
|
|
|
++ hi-cone :: record ack
|
|
|
|
|= cop/coop
|
|
|
|
=. +>+> (conk kos fap cop)
|
|
|
|
?~(cop +> +>(exc (~(put by exc) liq u.cop)))
|
|
|
|
::
|
|
|
|
++ hi-golf :: golf:hi:ho:um:am
|
|
|
|
|= duv/dove :: assemble fragments
|
2015-12-08 10:35:55 +03:00
|
|
|
=+ [nix=0 rax=*(list @)]
|
2013-09-29 00:21:18 +04:00
|
|
|
|- ^- @
|
|
|
|
?: =(p.duv nix)
|
2016-07-25 00:23:28 +03:00
|
|
|
(can ?:(fak.ton.fox 13 13) (turn (flop rax) |=(a/@ [1 a])))
|
2013-09-29 00:21:18 +04:00
|
|
|
$(nix +(nix), rax [(need (~(get by q.duv) nix)) rax])
|
2016-07-25 00:23:28 +03:00
|
|
|
--
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ pong :: pong:ho:um:am
|
2015-12-20 23:50:45 +03:00
|
|
|
|= hen/duct :: test connection
|
2013-10-09 22:55:23 +04:00
|
|
|
^+ +>
|
2016-07-25 00:23:28 +03:00
|
|
|
(conk 0 `@`0 ~)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ thaw :: thaw:ho:um:am
|
2016-07-25 00:23:28 +03:00
|
|
|
^+ . :: wakeup
|
2016-07-26 02:34:38 +03:00
|
|
|
.
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ we :: we:ho:um:am
|
|
|
|
|_ {kos/bole colt} :: outgoing core
|
|
|
|
++ we-abet :: abet:we:ho:um:am
|
|
|
|
%= +> :: resolve
|
|
|
|
sal.bah
|
|
|
|
(~(put by sal.bah) kos +<+)
|
2014-07-24 06:02:50 +04:00
|
|
|
==
|
2016-07-25 00:23:28 +03:00
|
|
|
::
|
|
|
|
++ we-tire :: tire:we:ho:um:am
|
|
|
|
|- ^+ + :: report results
|
|
|
|
=+ zup=(~(get by mis) lac)
|
|
|
|
?~ zup +>
|
|
|
|
~& [?:(=(0 (end 0 1 kos)) %ta %ba) her kos lac]
|
|
|
|
%= $
|
|
|
|
lac +(lac)
|
|
|
|
mis (~(del by mis) lac)
|
|
|
|
bin :_ bin
|
|
|
|
?: =(1 (end 0 1 kos))
|
|
|
|
[%cola [our her] kos u.zup]
|
|
|
|
[%coke [our her] (~(got by r.zam.bah) kos) u.zup]
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
2016-07-25 00:23:28 +03:00
|
|
|
::
|
|
|
|
++ we-toad :: toad:we:ho:um:am
|
|
|
|
|= {liq/tick cha/path cop/coop} :: apply ack
|
|
|
|
^+ +>
|
|
|
|
?: (lth liq lac) +>.$
|
|
|
|
?: (~(has by mis) liq) +>.$
|
|
|
|
we-tire(mis (~(put by mis) liq cha cop))
|
|
|
|
::
|
2016-07-26 02:34:38 +03:00
|
|
|
++ we-wood :: wood:we:ho:um:am
|
|
|
|
|= {cha/path val/*}
|
2016-07-25 00:23:28 +03:00
|
|
|
=< we-abet
|
|
|
|
^+ +>
|
2016-07-26 02:34:38 +03:00
|
|
|
=^ pex diz (zuul:diz now [%bond [(mix kos 1) seq] cha val])
|
|
|
|
%_ +>.$
|
|
|
|
seq +(seq)
|
|
|
|
cob
|
|
|
|
%+ ~(put by cob)
|
|
|
|
seq
|
|
|
|
^- comb
|
|
|
|
:* (lent pex)
|
|
|
|
0
|
|
|
|
~
|
|
|
|
0
|
|
|
|
~
|
|
|
|
=| {far/frag rox/(map frag rock)}
|
|
|
|
|- ^+ rox
|
|
|
|
?~ pex rox
|
|
|
|
$(far +(far), pex t.pex, rox (~(put by rox) far i.pex))
|
|
|
|
==
|
|
|
|
==
|
2016-07-25 00:23:28 +03:00
|
|
|
::
|
|
|
|
++ we-woof :: woof:we:ho:um:am
|
|
|
|
|= {cha/path val/*} :: send message
|
|
|
|
=< we-abet
|
|
|
|
^+ +>
|
2016-07-26 02:34:38 +03:00
|
|
|
~& [?:(=(0 (end 0 1 kos)) %tx %bx) her kos seq cha]
|
2016-07-25 00:23:28 +03:00
|
|
|
:: ~& [%we-woof seq cha (mug val)]
|
|
|
|
+>(seq +(seq), +> abet:(send:(cave kos) seq cha val))
|
|
|
|
--
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ wand :: wend:ho:um:am
|
|
|
|
|= kos/bole :: response core
|
|
|
|
^+ we
|
|
|
|
~(. we kos (fall (~(get by sal.bah) kos) *colt))
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ wend :: wend:ho:um:am
|
|
|
|
|= hen/duct :: request core
|
|
|
|
^+ we
|
|
|
|
=+ ust=(~(get by q.zam.bah) hen)
|
|
|
|
?~ ust
|
|
|
|
%~ .
|
|
|
|
%_ we
|
|
|
|
p.zam.bah (add 2 p.zam.bah)
|
|
|
|
q.zam.bah (~(put by q.zam.bah) hen p.zam.bah)
|
|
|
|
r.zam.bah (~(put by r.zam.bah) p.zam.bah hen)
|
2013-10-10 06:45:57 +04:00
|
|
|
==
|
2016-07-25 00:23:28 +03:00
|
|
|
p.zam.bah
|
|
|
|
*colt
|
|
|
|
==
|
|
|
|
~(. we u.ust (~(got by sal.bah) u.ust))
|
2013-10-08 09:56:57 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ zest
|
|
|
|
~
|
2013-09-29 00:21:18 +04:00
|
|
|
-- :: --ho:um:am
|
|
|
|
::
|
|
|
|
++ kick :: kick:um:am
|
2015-12-20 23:50:45 +03:00
|
|
|
|= hen/duct :: test connection
|
2013-10-09 22:55:23 +04:00
|
|
|
^+ +>
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ hoy=hoy.saf.gus
|
|
|
|
|- ^+ +>.^$
|
|
|
|
?~ hoy
|
|
|
|
+>.^$
|
2013-10-09 22:55:23 +04:00
|
|
|
$(hoy t.hoy, +>.^$ (pong i.hoy hen))
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ pals :: pals:um:am
|
2015-12-06 00:01:00 +03:00
|
|
|
^- (list @p) :: active neighbors
|
2016-07-26 02:34:38 +03:00
|
|
|
:: XX
|
|
|
|
~
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ pong :: pong:um:am
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {her/ship hen/duct} :: test neighbor
|
2013-10-09 22:55:23 +04:00
|
|
|
^+ +>
|
2016-07-25 00:23:28 +03:00
|
|
|
abet:(pong:(ho her) hen)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ zork :: zork:um:am
|
2015-12-20 23:50:45 +03:00
|
|
|
^- {p/(list boon) q/fort} :: resolve
|
2013-09-29 00:21:18 +04:00
|
|
|
:- (flop bin)
|
|
|
|
%_ fox
|
|
|
|
ton (~(su go ton.fox) gus)
|
|
|
|
zac (~(put by zac.fox) our.gus weg)
|
|
|
|
==
|
|
|
|
-- :: --um:am
|
|
|
|
-- :: --am
|
|
|
|
--
|
2014-01-04 11:28:16 +04:00
|
|
|
. ==
|
2013-09-29 00:21:18 +04:00
|
|
|
::::::::::::::::::::::::::::::::::::::::::::::::::::::::
|
|
|
|
:: section 4aH, protocol vane ::
|
2013-12-09 01:23:03 +04:00
|
|
|
::
|
2015-12-20 23:50:45 +03:00
|
|
|
=| $: fox/fort :: kernel state
|
2013-09-29 00:21:18 +04:00
|
|
|
== ::
|
2016-02-04 07:51:01 +03:00
|
|
|
|= {now/@da eny/@ ski/sley} :: current invocation
|
2013-09-29 00:21:18 +04:00
|
|
|
^? :: opaque core
|
2013-12-09 01:23:03 +04:00
|
|
|
=<
|
2013-09-29 00:21:18 +04:00
|
|
|
|% :: vane interface
|
2014-06-06 03:48:13 +04:00
|
|
|
++ call :: handle request
|
2015-12-20 23:50:45 +03:00
|
|
|
|= $: hen/duct
|
|
|
|
hic/(hypo (hobo kiss-ames))
|
2014-06-06 03:48:13 +04:00
|
|
|
==
|
|
|
|
=> %= . :: XX temporary
|
|
|
|
q.hic
|
2015-05-12 23:10:22 +03:00
|
|
|
^- kiss-ames
|
2015-12-06 00:01:00 +03:00
|
|
|
?: ?=($soft -.q.hic)
|
2015-05-12 23:10:22 +03:00
|
|
|
((hard kiss-ames) p.q.hic)
|
|
|
|
?: (~(nest ut -:!>(*kiss-ames)) | p.hic) q.hic
|
2015-12-08 10:35:55 +03:00
|
|
|
~& [%ames-call-flub (@tas `*`-.q.hic)]
|
2015-05-12 23:10:22 +03:00
|
|
|
((hard kiss-ames) q.hic)
|
2014-06-06 03:48:13 +04:00
|
|
|
==
|
2015-12-20 23:50:45 +03:00
|
|
|
^- {p/(list move) q/_..^$}
|
2014-06-06 03:48:13 +04:00
|
|
|
=^ duy ..knob
|
|
|
|
(knob hen q.hic)
|
2013-09-29 00:21:18 +04:00
|
|
|
[duy ..^$]
|
|
|
|
::
|
|
|
|
++ doze
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {now/@da hen/duct}
|
2016-07-25 00:23:28 +03:00
|
|
|
^- (unit @da)
|
|
|
|
^doze
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ load
|
2015-12-20 23:50:45 +03:00
|
|
|
|= old/fort
|
2014-05-31 03:51:35 +04:00
|
|
|
^+ ..^$
|
2015-05-07 05:00:58 +03:00
|
|
|
~& %ames-reload
|
2014-05-31 23:40:02 +04:00
|
|
|
..^$(fox old)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ scry
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {fur/(unit (set monk)) ren/@tas who/ship syd/desk lot/coin tyl/path}
|
2015-02-27 09:35:41 +03:00
|
|
|
^- (unit (unit cage))
|
2014-05-31 08:58:37 +04:00
|
|
|
?~ tyl [~ ~]
|
|
|
|
=+ hun=(slaw %p i.tyl)
|
|
|
|
?~ hun [~ ~]
|
2016-01-25 06:37:41 +03:00
|
|
|
?. =(`@`0 ren) ~
|
2013-09-29 00:21:18 +04:00
|
|
|
?+ lot ~
|
2015-12-08 10:35:55 +03:00
|
|
|
{$$ $ud @}
|
2016-02-19 00:44:17 +03:00
|
|
|
(perm who u.hun q.p.lot [syd t.tyl])
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2015-12-08 10:35:55 +03:00
|
|
|
{$$ $da @}
|
2013-09-29 00:21:18 +04:00
|
|
|
?. =(now q.p.lot) ~
|
2016-02-19 00:44:17 +03:00
|
|
|
(temp who u.hun [syd t.tyl])
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
|
|
|
::
|
2014-05-31 23:40:02 +04:00
|
|
|
++ stay fox
|
2014-06-06 03:48:13 +04:00
|
|
|
++ take :: accept response
|
2016-07-25 00:23:28 +03:00
|
|
|
|= {tea/wire hen/duct hin/(hypo sign-arvo)}
|
2015-12-20 23:50:45 +03:00
|
|
|
^- {p/(list move) q/_..^$}
|
2014-06-06 03:48:13 +04:00
|
|
|
=^ duy ..knap
|
2014-06-22 02:06:42 +04:00
|
|
|
(knap tea hen q.hin)
|
2014-06-06 03:48:13 +04:00
|
|
|
[duy ..^$]
|
2013-09-29 00:21:18 +04:00
|
|
|
--
|
|
|
|
|%
|
2015-12-20 23:50:45 +03:00
|
|
|
++ claw |=(our/ship ^-(duct hen:(need (~(get by zac.fox) our))))
|
2016-07-25 00:23:28 +03:00
|
|
|
++ clod
|
|
|
|
|= {soq/sock kos/bole cha/path hen/duct cad/card-ames}
|
|
|
|
^- {(list move) fort}
|
|
|
|
?> ?=({@ *} cha)
|
|
|
|
=+ pax=[(scot %p p.soq) (scot %p q.soq) (scot %ud kos) ~]
|
|
|
|
=+ ^= did
|
|
|
|
^- move
|
2016-07-25 02:28:10 +03:00
|
|
|
?+ i.cha ~|([%bad-vane soq hen cha] !!)
|
|
|
|
$c [hen %pass pax `note-arvo`[%c cad]]
|
|
|
|
$e [hen %pass pax `note-arvo`[%e cad]]
|
2016-07-25 00:23:28 +03:00
|
|
|
$g [hen %pass pax `note-arvo`[%g cad]]
|
|
|
|
==
|
|
|
|
[[did ~] fox]
|
|
|
|
::
|
2013-09-29 00:21:18 +04:00
|
|
|
++ clop
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {now/@da hen/duct bon/boon}
|
2015-12-06 00:01:00 +03:00
|
|
|
^- {(list move) fort}
|
2013-09-29 00:21:18 +04:00
|
|
|
?- -.bon
|
2016-07-25 00:23:28 +03:00
|
|
|
$acid :_(fox [[hen [%give %drop ~]] ~])
|
2015-12-06 00:01:00 +03:00
|
|
|
$beer
|
2016-07-25 00:23:28 +03:00
|
|
|
:_ fox(zac (~(put by zac.fox) p.bon `corn`[hen ~ ~]))
|
|
|
|
~& [%beer p.bon]
|
2014-05-26 00:35:07 +04:00
|
|
|
:* [hen [%slip %c %init p.bon]]
|
2014-05-24 00:46:43 +04:00
|
|
|
[hen [%give %init p.bon]]
|
2014-05-26 00:35:07 +04:00
|
|
|
[hen [%slip %a %kick now]]
|
|
|
|
[hen [%slip %e %init p.bon]]
|
2014-06-14 01:47:08 +04:00
|
|
|
[hen [%slip %g %init p.bon]]
|
2014-10-22 06:59:05 +04:00
|
|
|
[hen [%slip %d %init p.bon]] :: must be after gall
|
2013-10-06 11:44:07 +04:00
|
|
|
~
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
2014-07-24 06:02:50 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
$cola (clod p.bon q.bon r.bon hen [%went p.bon +.r.bon q.bon s.bon])
|
|
|
|
$coke :_(fox [[q.bon [%give %woot q.p.bon r.bon s.bon]] ~])
|
|
|
|
$malt :_(fox [[q.bon [%give %waft q.p.bon r.bon s.bon]] ~])
|
2015-12-06 00:01:00 +03:00
|
|
|
$mead :_(fox [[hen [%give %hear p.bon q.bon]] ~])
|
2016-07-25 00:23:28 +03:00
|
|
|
$milk (clod p.bon q.bon r.bon hen [%west p.bon +.r.bon q.bon s.bon])
|
2015-12-06 00:01:00 +03:00
|
|
|
$ouzo
|
2016-07-25 00:23:28 +03:00
|
|
|
:: ~& [%to now p.bon `@p`(mug (shaf %flap q.bon))]
|
|
|
|
:: ~& [%to (flam (shaf %flap q.bon))]
|
2013-09-29 00:21:18 +04:00
|
|
|
:_ fox
|
2014-07-10 01:42:08 +04:00
|
|
|
[[gad.fox [%give %send p.bon q.bon]] ~]
|
2013-12-09 01:23:03 +04:00
|
|
|
::
|
2015-12-06 00:01:00 +03:00
|
|
|
$wine
|
2013-09-29 00:21:18 +04:00
|
|
|
:_ fox
|
|
|
|
=+ fom=~(rend co %$ %p q.p.bon)
|
2014-05-24 00:46:43 +04:00
|
|
|
:~ :- hen
|
2014-05-26 00:35:07 +04:00
|
|
|
:+ %slip %d
|
2013-09-29 00:21:18 +04:00
|
|
|
:+ %flog %text
|
|
|
|
;: weld
|
|
|
|
"; "
|
2016-02-19 00:44:17 +03:00
|
|
|
fom
|
2013-09-29 00:21:18 +04:00
|
|
|
q.bon
|
|
|
|
==
|
|
|
|
==
|
|
|
|
==
|
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ doze
|
|
|
|
^- (unit @da)
|
|
|
|
~(doze am now fox)
|
|
|
|
::
|
2013-09-29 00:21:18 +04:00
|
|
|
++ knap
|
2016-07-25 00:23:28 +03:00
|
|
|
|= {tea/wire hen/duct sih/sign-arvo}
|
2015-12-15 01:21:10 +03:00
|
|
|
^- {(list move) _+>}
|
2016-07-25 00:23:28 +03:00
|
|
|
?. ?=({@ @ @ $~} tea)
|
|
|
|
~& [%knap-tea tea]
|
|
|
|
!!
|
|
|
|
=+ [soq kos]=[[(slav %p i.tea) (slav %p i.t.tea)] (slav %ud i.t.t.tea)]
|
|
|
|
?+ sih
|
|
|
|
~|([%ames-sign -.sih (@tas +<.sih)] !!)
|
|
|
|
::
|
|
|
|
{?($e $c $g) $rend *}
|
|
|
|
=^ bin fox (~(wish am [now fox]) soq kos p.+>.sih q.+>.sih)
|
|
|
|
(knit hen bin)
|
|
|
|
::
|
|
|
|
{?($e $c $g) $mack *}
|
|
|
|
=^ bin fox
|
|
|
|
(~(rack am [now fox]) soq kos ?~(+>.sih ~ `[~ %lose u.p.+>.sih]))
|
|
|
|
(knit hen bin)
|
2014-06-06 23:11:36 +04:00
|
|
|
==
|
2014-06-06 03:48:13 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
++ knit
|
|
|
|
|= {hen/duct bin/(list boon)}
|
|
|
|
^- {(list move) _+>}
|
|
|
|
=| out/(list move)
|
|
|
|
|- ^+ [out +>.^$]
|
|
|
|
?~ bin
|
|
|
|
[(flop out) +>.^$]
|
|
|
|
=^ toe fox (clop now hen i.bin)
|
|
|
|
$(bin t.bin, out (weld (flop toe) out))
|
|
|
|
::
|
2014-06-06 03:48:13 +04:00
|
|
|
++ knob
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {hen/duct kyz/kiss-ames}
|
2015-12-15 01:21:10 +03:00
|
|
|
^- {(list move) _+>}
|
2015-12-06 00:01:00 +03:00
|
|
|
?: ?=($crud -.kyz)
|
2014-06-06 03:48:13 +04:00
|
|
|
[[[hen [%slip %d %flog kyz]] ~] +>]
|
2016-07-25 00:23:28 +03:00
|
|
|
=^ bin fox
|
|
|
|
^- {(list boon) fort}
|
2014-06-06 03:48:13 +04:00
|
|
|
?- -.kyz
|
2015-12-06 00:01:00 +03:00
|
|
|
$barn
|
2014-07-10 01:42:08 +04:00
|
|
|
[~ fox(gad hen)]
|
2015-12-06 00:01:00 +03:00
|
|
|
$cash
|
2014-06-06 03:48:13 +04:00
|
|
|
(~(have am [now fox]) p.kyz q.kyz)
|
2016-07-25 00:23:28 +03:00
|
|
|
::
|
|
|
|
?($want $wegh $west)
|
|
|
|
!!
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2015-12-06 00:01:00 +03:00
|
|
|
$hear
|
2016-07-25 00:23:28 +03:00
|
|
|
(~(gnaw am [now fox]) p.kyz q.kyz)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2015-12-06 00:01:00 +03:00
|
|
|
$hole
|
2016-07-25 00:23:28 +03:00
|
|
|
~& %ames-hole-disabled
|
|
|
|
[~ fox]
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2015-12-06 00:01:00 +03:00
|
|
|
$junk
|
2014-06-06 03:48:13 +04:00
|
|
|
[~ fox(any.ton (shax (mix any.ton.fox p.kyz)))]
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2015-12-06 00:01:00 +03:00
|
|
|
$kick
|
2014-06-06 03:48:13 +04:00
|
|
|
(~(kick am [now fox(hop p.kyz)]) hen)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2015-12-06 00:01:00 +03:00
|
|
|
$make
|
2014-06-06 03:48:13 +04:00
|
|
|
=+ vun=(~(come am [now fox]) p.kyz (bex q.kyz) r.kyz s.kyz)
|
2013-09-29 00:21:18 +04:00
|
|
|
[[[%beer p.vun] ~] q.vun]
|
|
|
|
::
|
2015-12-06 00:01:00 +03:00
|
|
|
$sith
|
2014-06-06 03:48:13 +04:00
|
|
|
(~(czar am [now fox]) p.kyz q.kyz r.kyz)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
2015-12-06 00:01:00 +03:00
|
|
|
$wake
|
2013-10-09 22:55:23 +04:00
|
|
|
(~(wake am [now fox]) hen)
|
2014-07-24 06:02:50 +04:00
|
|
|
::
|
2016-07-25 00:23:28 +03:00
|
|
|
$went
|
|
|
|
:: we don't send any responses as yet
|
|
|
|
!!
|
2014-07-24 06:02:50 +04:00
|
|
|
::
|
2015-12-06 00:01:00 +03:00
|
|
|
$wont
|
2016-07-25 00:23:28 +03:00
|
|
|
(~(wise am [now fox]) p.kyz hen q.kyz r.kyz)
|
2013-09-29 00:21:18 +04:00
|
|
|
==
|
2016-07-25 00:23:28 +03:00
|
|
|
(knit hen bin)
|
2013-09-29 00:21:18 +04:00
|
|
|
::
|
|
|
|
++ perm
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {our/ship his/ship mar/@ud tyl/path}
|
2016-02-19 00:44:17 +03:00
|
|
|
^- (unit (unit cage))
|
2013-09-29 00:21:18 +04:00
|
|
|
?~ tyl ~
|
2015-12-06 00:01:00 +03:00
|
|
|
?: ?=({$name $~} tyl)
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ wul=$(tyl [%will ~])
|
2016-02-19 00:44:17 +03:00
|
|
|
``[%noun !>(?~(wul (scot %p his) (gnow his q.q.q:((hard deed) -.u.wul))))]
|
2015-12-06 00:01:00 +03:00
|
|
|
?: ?=({$gcos $~} tyl)
|
2013-10-27 07:55:53 +04:00
|
|
|
=+ wul=$(tyl [%will ~])
|
2016-02-19 00:44:17 +03:00
|
|
|
?~(wul ~ ``[%noun !>(`gcos`q.q.q:((hard deed) -.u.wul))])
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ gys=(~(us go ton.fox) our)
|
|
|
|
?~ gys ~
|
|
|
|
?. =(our his)
|
2015-12-06 00:01:00 +03:00
|
|
|
?: ?=({$will $~} tyl)
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ fod=(~(get by hoc.saf.u.gys) his)
|
|
|
|
?~ fod ~
|
2016-02-19 00:44:17 +03:00
|
|
|
%+ bind (rick mar his lew.wod.u.fod)
|
|
|
|
|=(a/will `[%noun !>(a)])
|
2015-12-06 00:01:00 +03:00
|
|
|
?: ?=({$tick $~} tyl)
|
2014-06-01 00:22:49 +04:00
|
|
|
?. =(our (sein his)) ~
|
2016-02-19 00:44:17 +03:00
|
|
|
``[%noun !>((end 6 1 (shaf %tick (mix his (shax sec:ex:q:sen:u.gys)))))]
|
2013-09-29 00:21:18 +04:00
|
|
|
~
|
2015-12-06 00:01:00 +03:00
|
|
|
?: ?=({$buck $~} tyl)
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ muc=(rice mar sex:u.gys)
|
|
|
|
=+ luw=(rick mar our law.saf.u.gys)
|
|
|
|
?. &(?=(^ muc) ?=(^ luw)) ~
|
2016-02-19 00:44:17 +03:00
|
|
|
``[%noun !>(`buck`[u.muc u.luw])]
|
2015-12-06 00:01:00 +03:00
|
|
|
?: ?=({$code $~} tyl)
|
2016-02-19 00:44:17 +03:00
|
|
|
``[%noun !>((end 6 1 (shaf %pass (shax sec:ex:q:sen:u.gys))))]
|
2015-12-06 00:01:00 +03:00
|
|
|
?: ?=({$will $~} tyl)
|
2016-02-19 00:44:17 +03:00
|
|
|
(bind (rick mar our law.saf.u.gys) |=(a/will `[%noun !>(a)]))
|
2013-09-29 00:21:18 +04:00
|
|
|
~
|
|
|
|
::
|
|
|
|
++ temp
|
2015-12-20 23:50:45 +03:00
|
|
|
|= {our/ship his/ship tyl/path}
|
2016-02-19 00:44:17 +03:00
|
|
|
^- (unit (unit cage))
|
2015-12-06 00:01:00 +03:00
|
|
|
?: ?=({?($show $tell) *} tyl)
|
2016-02-19 00:44:17 +03:00
|
|
|
?^ t.tyl [~ ~]
|
2013-10-08 09:56:57 +04:00
|
|
|
=+ gys=(~(us go ton.fox) our)
|
2016-02-19 00:44:17 +03:00
|
|
|
?~ gys [~ ~]
|
2013-10-08 09:56:57 +04:00
|
|
|
=+ zet=zest:(ho:(~(um am [now fox]) our) his)
|
2016-02-19 00:44:17 +03:00
|
|
|
``[%noun ?:(=(%show i.tyl) !>(>zet<) !>(zet))]
|
2015-12-06 00:01:00 +03:00
|
|
|
?: ?=({$pals $~} tyl)
|
2014-07-24 01:01:52 +04:00
|
|
|
?. =(our his)
|
|
|
|
~
|
2016-02-19 00:44:17 +03:00
|
|
|
``[%noun !>(pals:(~(um am [now fox]) our))]
|
2015-12-06 00:01:00 +03:00
|
|
|
?. ?=({$life $~} tyl)
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ muc=$(tyl [%life ~])
|
2015-12-08 10:35:55 +03:00
|
|
|
(perm our his ?~(muc 0 (@ud u.muc)) tyl)
|
2013-09-29 00:21:18 +04:00
|
|
|
=+ gys=(~(us go ton.fox) our)
|
|
|
|
?~ gys ~
|
|
|
|
?. =(our his)
|
|
|
|
=+ fod=(~(get by hoc.saf.u.gys) his)
|
|
|
|
?~ fod ~
|
|
|
|
?~ lew.wod.u.fod ~
|
2016-02-19 00:44:17 +03:00
|
|
|
``[%noun !>(`@ud`p.p.q.i.lew.wod.u.fod)]
|
2013-09-29 00:21:18 +04:00
|
|
|
?~ val.saf.u.gys ~
|
2016-02-19 00:44:17 +03:00
|
|
|
``[%noun !>(`@ud`p.i.val.saf.u.gys)]
|
2015-05-07 05:25:41 +03:00
|
|
|
::
|
|
|
|
++ wegh
|
|
|
|
^- mass
|
2015-05-13 00:18:34 +03:00
|
|
|
:- %ames
|
2015-05-07 05:25:41 +03:00
|
|
|
:- %|
|
2015-12-29 01:01:44 +03:00
|
|
|
:~ fox+[%& fox]
|
2015-05-07 05:25:41 +03:00
|
|
|
==
|
2013-09-29 00:21:18 +04:00
|
|
|
--
|