Self-booting with old syntax illegal.

This commit is contained in:
C. Guy Yarvin 2015-12-10 01:17:19 -08:00
parent 8d8d81cbf9
commit 2b4e85c976
30 changed files with 299 additions and 294 deletions

View File

@ -102,7 +102,7 @@
:::: ::
:: ::
|_ $^
$: hid+bowl :: system state
_: hid+bowl :: system state
house :: program state
== ::
++ he :: per session
@ -298,7 +298,7 @@
^+ [mad +>]
?@ -.mad [mad +>.$]
=. q.mad
?+(-.p.mad q.mad %http [0 %as %mime q.mad])
?+(-.p.mad q.mad $http [0 %as %mime q.mad])
=^ src +>.$ (dy-init-source q.mad)
[mad(q src) +>.$]
::
@ -410,7 +410,7 @@
(dy-slam /dial u.pro !>(txt))
::
++ dy-cast
|* [typ=_,* bun=vase]
|* {typ+__(*) bun+vase}
|= a=vase ^- typ
?> (~(nest ut p.bun) & p.a)
;;(typ q.a)
@ -504,7 +504,7 @@
=- (flop (turn `wall`- |=(a=tape leaf/(dash:ut a ''))))
:- "HTTP {<p.hit>}"
%+ weld
(turn q.hit |=([a=@t b=@t] "{(trip a)}: {(trip b)}"))
(turn q.hit |=({a+@t b+@t} "{(trip a)}: {(trip b)}"))
(turn `wain`?~(r.hit ~ (lore q.u.r.hit)) trip)
==
::
@ -533,7 +533,7 @@
++ dy-show-source
|= a+dojo-source ^- tank
=- >[-]<
=+ `[@ bil=dojo-build]`a
=+ `{@ bil+dojo-build}`a
|- ^- $^
_& [__($) __($)]
_? twig
@ -546,7 +546,7 @@
==
?- -.bil
$^(_?($ur $dv)) bil
$ex ?. ?=([%cltr *] p.bil) p.bil
$ex ?. ?=({$cltr *} p.bil) p.bil
|- ^- twig
?~ p.p.bil !!
?~ t.p.p.bil i.p.p.bil
@ -574,9 +574,9 @@
++ dy-type :: sole action
|= act+sole-action
?- -.act
%det (dy-edit +.act)
%ret (dy-done (tufa buf.say))
%clr dy-stop
$det (dy-edit +.act)
$ret (dy-done (tufa buf.say))
$clr dy-stop
==
::
++ dy-cage |=(num+@ud (~(got by rez) num)) :: known cage
@ -591,7 +591,7 @@
::
++ dy-silk-config :: configure
|= {cay+cage cig+dojo-config}
^- [wire silk]
^- {wire silk}
:- ?+ -.q.q.cay ~|(%bad-gen ~_((sell (slot 2 q.cay)) !!))
$say /gent
$ask /dial
@ -603,7 +603,7 @@
(dy-silk-sources p.cig)
:+ %mute (dy-silk-vase (fall (slew 27 gat) !>(~)))
%+ turn (~(tap by q.cig))
|= [a=term b=(unit dojo-source)]
|= {a+term b+(unit dojo-source)}
^- (pair wing silk)
:- [a ~]
%- dy-silk-vase
@ -701,26 +701,26 @@
++ dy-twig-mark :: XX architect
=+ ^= ope
|= gen+twig ^- twig
?: ?=(?(%sggl %sggr) -.gen)
?: ?=(?($sggl $sggr) -.gen)
$(gen q.gen)
=+ ~(open ap gen)
?.(=(gen -) $(gen -) gen)
|= gen+twig ^- (unit mark)
=. gen (ope gen)
?: ?=([%cnts [@ ~] ~] gen)
?: ?=({$cnts {@ $~} $~} gen)
(bind (~(get by var) i.p.gen) head)
?. ?=($dtkt -.gen) ~
=. p.gen (ope p.gen)
?@ -.p.gen ~
?+ ~(feck ap p.p.gen) ~
[~ %cx]
{$~ $cx}
=+ gin=(ope q.p.gen)
|-
?@ -.gin ~
=. q.gin (ope q.gin)
?^ -.q.gin $(gin q.gin)
=. p.gin (ope p.gin)
?. ?=([[?(%dtzz %dtzy) @ @] [%dtzz %n ~]] gin)
?. ?=({{?($dtzz $dtzy) @ @} {$dtzz $n $~}} gin)
~
(some q.p.gin)
==
@ -738,7 +738,7 @@
|= nex+@ud
^+ +>+>
?> ?=($~ cud)
?: ?=([%show 3] -.mad)
?: ?=({$show $3} -.mad)
he-easter:dy-over
?: =(nex num)
he-easter:dy-over
@ -772,8 +772,8 @@
=- ?~(msg ..he-diff (he-diff %tan leaf/u.msg ~))
^- msg=(unit tape)
?+ (clan our.hid) ~
%pawn ?+ egg ~
5 `":: To request a planet, run |ask 'your@email.co'"
$pawn ?+ egg ~
$5 `":: To request a planet, run |ask 'your@email.co'"
== ==
::
++ he-abet :: resolve
@ -848,14 +848,14 @@
{$&} %. p.reg
=+ dye=~(. dy u.poy(pux ~))
?+ way !!
[%hand ~] dy-hand:dye
[%dial ~] dy-made-dial:dye
[%gent ~] dy-made-gent:dye
[%scar ~] dy-made-scar:dye
[%edit ~] dy-made-edit:dye
{$hand $~} dy-hand:dye
{$dial $~} dy-made-dial:dye
{$gent $~} dy-made-gent:dye
{$scar $~} dy-made-scar:dye
{$edit $~} dy-made-edit:dye
==
{$|} (he-diff(poy ~) %tan p.reg)
%tabl !!
$tabl !!
==
::
++ he-sigh :: result from eyre
@ -872,7 +872,7 @@
==
::
++ he-unto :: result from behn
|= [way=wire cit=cuft]
|= {way+wire cit+cuft}
^+ +>
?. ?=($coup -.cit)
~& [%strange-unto cit]
@ -954,8 +954,8 @@
--
::
++ prep
=+ session-1==+(*session ,_-(poy *(unit)))
=+ session-0==+(*session-1 ,[_say syd=desk * _|2.-])
=+ session-1==+(*session __(-(poy *(unit))))
=+ session-0==+(*session-1 __([__(say) syd=desk * __(|2.-)]))
:: ,_`..prep
=+ ^= hoze
_% {$0 p+(map bone session-0)}
@ -965,14 +965,8 @@
==
|= old=(unit ?(house hoze)) ^+ [~ ..prep]
?~ old `..prep
?- -.u.old
?+ -.u.old !!
$4 `..prep(+<+ u.old)
$3 $(u.old %*(. *house hoc p.u.old))
$2 $(u.old [%3 (~(run by p.u.old) |=(session-1 +<(poy ~)))])
$1 $(u.old [%3 (~(run by p.u.old) |=(session-1 +<(poy ~)))])
$0 =< ^$(u.old [%1 (~(run by p.u.old) .)])
|= sos=session-0 ^- session-1
[-.sos [[our.hid syd.sos ud/0] /] |3.sos]
==
::
:: pattern: ++ foo |=(data he-abet:(~(he-foo he (~(got by hoc) ost)) data))
@ -981,8 +975,9 @@
|= {moz+(list move) ses+session}
=> ~(. he moz ses)
=- [wrap=- +]
|* he-arm=_he-type
|= _+<.he-arm ^- (quip move ..he)
|* he-arm=__(he-type)
|= __(+<.he-arm)
^- (quip move ..he)
he-abet:(he-arm +<)
::
++ peer-sole

View File

@ -1,4 +1,4 @@
:: :: ames (4a), networking
:: :: ames (4a), networking
::
|= pit+vase
=> =~

View File

@ -6,8 +6,9 @@
::::
!:
:- %say
|= $: [now=@da eny=@uvI bec=beak]
[arg=?(~ [? ~]) ~]
|= $^
_: {now+@da eny+@uvI bec+beak}
{arg+?($~ {? $~}) $~}
==
:- %kiln-autoload
`(unit ,?)`?~(arg ~ `-.arg)
`(unit ?)`?~(arg ~ `-.arg)

View File

@ -6,8 +6,9 @@
::::
!:
:- %say
|= $: [now=@da eny=@uvI bec=beak]
[[pax=path pot=$|(~ [v=@tas ~])] ~]
|= $^
_: {now+@da eny+@uvI bec+beak}
{{pax+path pot+_|($~ {v+@tas $~})} $~}
==
?~ pot
=+ bem=(need (tome pax))

View File

@ -6,8 +6,9 @@
::::
!:
:- %say
|= $: [now=@da eny=@uvI bec=beak]
[~ ~]
|= $^
_: {now+@da eny+@uvI bec+beak}
{$~ $~}
==
:- %noun
=+ top=`path`/(scot %p p.bec)/[q.bec]/(scot %da now)/arvo
@ -19,7 +20,7 @@
~& %solid-compiled
:- ken
=+ all=.*(0 ken)
=+ ^= vay ^- (list ,[p=@tas q=@tas])
=+ ^= vay ^- (list {p+@tas q+@tas})
:~ [%$ %zuse]
[%g %gall]
[%f %ford]
@ -32,7 +33,7 @@
|- ^+ all
?~ vay all
=+ pax=(weld top `path`[q.i.vay ~])
=+ txt=((hard ,@) .^(%cx (weld pax `path`[%hoon ~])))
=+ txt=((hard @) .^(%cx (weld pax `path`[%hoon ~])))
=+ sam=[now `ovum`[[%gold ~] [%veer p.i.vay pax txt]]]
~& [%solid-veer i.vay]
=+ gat=.*(all .*(all [0 42]))

View File

@ -246,7 +246,7 @@
|= {wel+well con+__(..se-adit)} ^+ con
=. +>.$ con
=+ hig=(~(get by fur) q.wel)
?: &(?=(^ hig) |(?=(~ u.hig) =(p.wel syd.u.u.hig))) +>.$
?: &(?=(^ hig) |(?=($~ u.hig) =(p.wel syd.u.u.hig))) +>.$
=. +>.$ (se-text "activated app {(trip p.wel)}/{(trip q.wel)}")
%- se-emit(fur (~(put by fur) q.wel ~))
[ost %conf [%drum p.wel q.wel ~] [our q.wel] %load our p.wel]
@ -286,7 +286,7 @@
^- ?
?. (~(has by bin) ost) &
=+ gyr=(~(get by fug) gyl)
|(?=(~ gyr) ?=([~ ~] gyr))
|(?=($~ gyr) ?=({$~ $~} gyr))
::
++ se-alas :: recalculate index
|= gyl+gill
@ -300,7 +300,7 @@
::
++ se-amor :: live targets
^- (list gill)
(skim (~(tap in eel)) |=(gill ?=([~ ~ *] (~(get by fug) +<))))
(skim (~(tap in eel)) |=(gill ?=({$~ $~ *} (~(get by fug) +<))))
::
++ se-anon :: rotate index
=+ wag=se-amor
@ -426,7 +426,7 @@
=+ c=(yey a)
?~(b ['?' c] c)
^- (list tape)
%+ turn (skip (~(tap by fur)) |=([term *] (~(has by fug) [our +<-])))
%+ turn (skip (~(tap by fur)) |=({term *} (~(has by fug) [our +<-])))
|=({term *} ['-' (pry our +<-)])
|- ^- tape
?~ yal ~
@ -734,7 +734,7 @@
++ ta-ser :: reverse search
|= ext+(list @c)
^+ +>
?: |(?=(~ ris) =(0 pos.u.ris)) ta-bel
?: |(?=($~ ris) =(0 pos.u.ris)) ta-bel
=+ sop=?~(ext (dec pos.u.ris) pos.u.ris)
=+ tot=(weld str.u.ris ext)
=+ dol=(slag (sub num.hit sop) old.hit)

View File

@ -5,19 +5,19 @@
!:
|%
++ atr-lines
|= atr=(map cord cord)
%+ turn (sort (~(tap by atr)) |=([[a=@ @] [b=@ @]] (aor a b)))
|= [k=cord v=cord]
|= atr+(map cord cord)
%+ turn (sort (~(tap by atr)) |=({{a+@ @} {b+@ @}} (aor a b)))
|= {k+cord v+cord}
(rap 3 k ': ' v ~)
::
++ atr-key ;~(sfix (star ;~(less col prn)) col ace)
++ print
|= [atr=(map cord cord) src=wain]
|= {atr+(map cord cord) src+wain}
?~ atr src
['---' (welp (atr-lines atr) '---' src)]
++ parse
=| atr=(map cord cord)
|= wan=wain ^+ [atr mud='']
=| atr+(map cord cord)
|= wan+wain ^+ [atr mud='']
?~ wan [~ '']
?^ (rush i.wan (star ace))
$(wan t.wan)
@ -29,6 +29,6 @@
$(wan t.wan)
=- $(wan t.wan, atr (~(put by atr) (crip key) (crip val)))
~| malformed-attribute/i.t.wan
^- [key=tape ^ val=tape]
^- {key+tape ^ val+tape}
+>:(atr-key 1^1 (trip i.t.wan))
--

View File

@ -98,7 +98,7 @@
::
++ poke-hi |=(mes+@t abet:(emit %flog /di %text "< {<src>}: {(trip mes)}"))
++ coup-hi
|= [pax=path cop=(unit tang)] =< abet
|= {pax+path cop+(unit tang)} =< abet
?> ?=({@t $~} pax)
(emit %flog ~ %text "hi {(trip i.pax)} {?~(cop "" "un")}succesful")
::
@ -115,9 +115,9 @@
=. nam
?. =(1 (met 3 nam))
nam
=+ ^- zaz=(list ,[p=span ~])
(skim van |=([a=term ~] =(nam (end 3 1 a))))
?> ?=([[@ ~] ~] zaz)
=+ ^- zaz+(list {p+span $~})
(skim van |=({a+term $~} =(nam (end 3 1 a))))
?> ?=({{@ $~} $~} zaz)
`term`p.i.zaz
=+ tip=(end 3 1 nam)
=+ way=(welp top /[nam])
@ -137,7 +137,7 @@
=+ top=`path`/(scot %p our)/home/(scot %da now)/arvo
:- [%flog /reset %vega (weld top `path`/hoon)]
%+ turn
^- (list ,[p=@tas q=@tas])
^- (list {p+@tas q+@tas})
:~ [%$ %zuse]
[%a %ames]
[%b %behn]

View File

@ -57,7 +57,7 @@
{$drop wire @p @tas} ::
{$info wire @p @tas nori} ::
{$mont wire @tas @p @tas path} ::
{$ogre wire $|(@tas beam)} ::
{$ogre wire _|(@tas beam)} ::
{$merg wire @p @tas @p @tas case germ} ::
{$poke wire dock pear} ::
{$wait wire @da} ::
@ -179,7 +179,7 @@
|= syd+term
abet:(emit %wait /kiln/overload/[syd] (add ~s10 now))
::
++ take |=(way=wire ?>(?=([@ ~] way) (work i.way))) :: general handler
++ take |=(way+wire ?>(?=({@ $~} way) (work i.way))) :: general handler
++ take-mere ::
|= {way+wire are+(each (set path) (pair term tang))}
abet:abet:(mere:(take way) are)
@ -359,20 +359,20 @@
|= gag+gage
^- (each (list (pair cage cage)) tang)
?. ?=($tabl -.gag)
(mule |.(`~`(ford-fail >%strange-gage< ~)))
=< ?+(. [%& .] [@ *] .)
|- ^- ?((list ,[cage cage]) (each ,~ tang))
(mule |.(`$~`(ford-fail >%strange-gage< ~)))
=< ?+(. [%& .] {@ *} .)
|- ^- ?((list {cage cage}) (each $~ tang))
?~ p.gag ~
=* hed i.p.gag
?- -.p.hed
{$tabl} (mule |.(`~`(ford-fail >%strange-gage< ~)))
{$|} (mule |.(`~`(ford-fail p.p.hed)))
{$tabl} (mule |.(`$~`(ford-fail >%strange-gage< ~)))
{$|} (mule |.(`$~`(ford-fail p.p.hed)))
{$&}
?- -.q.hed
$tabl (mule |.(`~`(ford-fail >%strange-gage< ~)))
{$|} (mule |.(`~`(ford-fail p.q.hed)))
$tabl (mule |.(`$~`(ford-fail >%strange-gage< ~)))
{$|} (mule |.(`$~`(ford-fail p.q.hed)))
{$&} =+ $(p.gag t.p.gag)
?+(- [[p.p p.q]:hed -] [@ *] -)
?+(- [[p.p p.q]:hed -] {@ *} -)
==
==
::
@ -507,9 +507,9 @@
!!
[((hard path) q.q.pax) ?:(?=($null p.dif) ~ `[%dif dif])]
:: ~& > kiln-made/[(turn can head) syd=syd +<.abet]
=+ notated=(skid can |=([path a=(unit miso)] ?=(^ a)))
=+ annotated=(turn `(list (pair path ,*))`-.notated head)
=+ unnotated=(turn `(list (pair path ,*))`+.notated head)
=+ notated=(skid can |=({path a+(unit miso)} ?=(^ a)))
=+ annotated=(turn `(list (pair path *))`-.notated head)
=+ unnotated=(turn `(list (pair path *))`+.notated head)
=+ `desk`(cat 3 syd '-scratch')
=+ ^- tan=(list tank)
%- zing
@ -539,7 +539,7 @@
:* ost %info /kiln/[syd] our
(cat 3 syd '-scratch') %&
%+ murn can
|= [p=path q=(unit miso)]
|= {p+path q+(unit miso)}
`(unit (pair path miso))`?~(q ~ `[p u.q])
==
--

View File

@ -16,11 +16,11 @@
++ jon a/(turn (gulf 0 9) |=(@ b/(bit +<))) :: to json
++ off |=(point (add x (mul 3 y))) :: bitfield address
++ set |=(point (con bud (bex (off +<)))) :: set point
++ win %- lien :_ |=(a=@ =(a (dis a bud))) :: test for win
++ win %- lien :_ |=(a+@ =(a (dis a bud))) :: test for win
(rip 4 0wl04h0.4A0Aw.4A00s.0e070) :: with bitmasks
-- ::
++ go :: play from
|_ [src=ship game] ::
|_ {src+ship game} ::
++ at |_ point :: per point
++ g `game`+>+<+ :: game
++ k &(!|(x o) ept) :: legal move

View File

@ -83,7 +83,7 @@
++ inverse :: relative inverse
|= ted+sole-edit
^- sole-edit
=. ted ?.(?=([%mor * ~] ted) ted i.p.ted)
=. ted ?.(?=({$mor * $~} ted) ted i.p.ted)
?- -.ted
$del [%ins p.ted (snag p.ted buf)]
$ins [%del p.ted]

View File

@ -1,6 +1,6 @@
|_ ~
|_ $~
++ grab |%
++ noun ,~
++ noun $~
--
--

View File

@ -4,25 +4,25 @@
/? 314
/- bit-api
[bit-api .]
|_ [access-token=@t req=bit-api-call]
|_ {access-token+@t req+bit-api-call}
::
++ wrap
|= [end-point=path req=$|(%get [%post p=json])]
|= {end-point+path req+_|($get {$post p+json})}
[/com/coinbase/sandbox/api v1/end-point req ~ ['access_token' access-token]~]
::
++ order
|= [amount=@t currency=@t] ^- json
|= {amount+@t currency+@t} ^- json
(jobe qty/s/amount ?~(currency ~ [currency/s/currency ~]))
++ grow
|% ++ httpreq
%- wrap
|-
?- -.req
%list [/accounts %get]
%buy [/buys %post (order +.req)]
%sell [/sells %post (order +.req)]
%send $(req [%txt-send (rsh 3 2 (scot %uc adr.req)) btc.req])
%txt-send
$list [/accounts %get]
$buy [/buys %post (order +.req)]
$sell [/sells %post (order +.req)]
$send $(req [%txt-send (rsh 3 2 (scot %uc adr.req)) btc.req])
$txt-send
:+ /transactions/'send_money' %post
(joba %transaction (jobe to/s/to.req amount/s/btc.req ~))

View File

@ -4,12 +4,12 @@
::
/? 310
!:
|_ id=@t ::XX time
|_ id+@t ::XX time
::
++ grab :: converter arm
|%
++ noun ,@t :: clam from noun
++ json |= jon=^json
++ noun @t :: clam from noun
++ json |= jon+^json
~| jon
(need ((ot transaction/(ot id/so ~) ~):jo jon))
--

View File

@ -2,7 +2,7 @@
:::: /hoon/dill-belt/mar
::
/? 314
/- kyev,sole
/- kyev, sole
!:
::::
::
@ -13,7 +13,7 @@
|%
++ json
=< (cork . kyev)
|= jon=^json ^- ^kyev
|= jon+^json ^- ^kyev
%- need
%. jon => jo %- ot
:~ mod/(cu ^sa (ar (su (perk ~[%ctrl %shift %alt %meta]))))
@ -25,9 +25,9 @@
%up %down %left %right
== ==
++ kyev
|= kev=^kyev ^- dill-belt
|= kev+^kyev ^- dill-belt
~| dill-belt-incomplete/kev
?: ?=([%act ?(%ctrl %shift %alt %meta)] q.kev)
?: ?=({$act ?($ctrl $shift $alt $meta)} q.kev)
[%txt ~] :: ignore
=+ mod=(~(del in p.kev) %shift)
?^ mod
@ -37,10 +37,10 @@
q.kev
(con 96 q.kev) :: ctrl key decoding
=+ cha=(tuba (trip q.kev))
?> ?=([@ ~] cha) :: of a single character
?> ?=({@ $~} cha) :: of a single character
?+ mod !! :: modified by one buckykey
[%ctrl ~ ~] [%ctl i.cha]
[%alt ~ ~] [%met i.cha]
{$ctrl ~ ~} [%ctl i.cha]
{$alt ~ ~} [%met i.cha]
==
?@ q.kev
[%txt (tuba (trip q.kev))]

View File

@ -4,7 +4,7 @@
/? 314
/- sole
[sole .]
|_ dib=dill-blit
|_ dib+dill-blit
::
++ grab :: convert from
|%
@ -15,10 +15,10 @@
++ json
^- ^json
?+ -.dib ~|(unsupported-blit/-.dib !!)
%mor [%a (turn p.dib |=(a=dill-blit json(dib a)))]
%hop (joba %hop (jone p.dib))
?(%pro %out) (joba -.dib (jape (tufa p.dib)))
?(%bel %clr) (joba %act %s -.dib)
$mor [%a (turn p.dib |=(a=dill-blit json(dib a)))]
$hop (joba %hop (jone p.dib))
?($pro $out) (joba -.dib (jape (tufa p.dib)))
?($bel $clr) (joba %act %s -.dib)
==
--
--

View File

@ -5,9 +5,9 @@
|_ mud+@
++ grow
|%
++ mime [/application/javascript (taco (,@t mud))]
++ mime [/application/javascript (taco (@t mud))]
++ elem ;script
;- (trip (,@t mud))
;- (trip (@t mud))
==
++ hymn ;html:(head:"+{elem}" body)
--

View File

@ -5,7 +5,7 @@
!:
::::
::
=+ point=,[x=@ y=@]
=+ point={x+@ y+@}
|_ point
::
++ grab :: convert from

View File

@ -17,12 +17,12 @@
|%
++ json ^- ^json :: to %json
~! +>-<
?: ?=(| +>-<)
?: ?=({$|} +>-<)
~! +>-<
~! p
s/(crip p)
=+ she=|=(ship s/(scot %p +<))
=+ hes=|=([ship *] (she +<-))
=+ hes=|=({ship *} (she +<-))
%- jobe
:~ who/s/?:(who.p %x %o)
plx/?~(p.sag.p ~ (she u.p.sag.p))

View File

@ -12,16 +12,16 @@
++ grab :: convert from
|%
++ json
|= jon=^json ^- sole-action
|= jon+^json ^- sole-action
%- need %. jon
=> [jo ..sole-action]
|^ (fo %ret (of det/change ~))
++ fo
|* [a=term b=fist]
|* {a+term b+fist}
|=(c=json ?.(=([%s a] c) (b c) (some [a ~])))
::
++ ra
|* [a=[p=term q=fist] b=fist]
|* {a+{p+term q+fist} b+fist}
|= c=json %. c
?.(=(%a -.c) b (pe p.a (ar q.a)))
::

View File

@ -9,24 +9,24 @@
[sole .]
|%
++ mar-sole-change :: XX dependency
|_ cha=sole-change
|_ cha+sole-change
++ grow
|% ++ json
^- ^json
=+ cha
=< (jobe ted/(. ted) ler/a/~[(jone own.ler) (jone his.ler)] ~)
|= det=sole-edit
|= det+sole-edit
?- -.det
%nop [%s 'nop']
%mor [%a (turn p.det ..$)]
%del (joba %del (jone p.det))
%set (joba %set (jape (tufa p.det)))
%ins (joba %ins (jobe at/(jone p.det) cha/s/(tuft q.det) ~))
$nop [%s 'nop']
$mor [%a (turn p.det ..$)]
$del (joba %del (jone p.det))
$set (joba %set (jape (tufa p.det)))
$ins (joba %ins (jobe at/(jone p.det) cha/s/(tuft q.det) ~))
==
--
--
++ wush
|= [wid=@u tan=tang]
|= {wid+@u tan+tang}
^- tape
=+ rolt=|=(a=wall `tape`?~(a ~ ?~(t.a i.a :(weld i.a "\0a" $(a t.a)))))
(rolt (turn (flop tan) |=(a=tank (rolt (wash 0^wid a)))))
@ -43,14 +43,18 @@
|%
++ json
^- ^json
?+ -.sef ~|(unsupported-effect/-.sef !!)
%mor [%a (turn p.sef |=(a=sole-effect json(sef a)))]
%err (joba %hop (jone p.sef))
%txt (joba %txt (jape p.sef))
%tan (joba %tan (jape (wush 160 p.sef)))
%det (joba %det json:~(grow mar-sole-change +.sef))
%pro (joba %pro (jobe vis/b/vis.sef tag/s/tag.sef cad/(jape cad.sef) ~))
?(%bel %clr %nex) (joba %act %s -.sef)
?+ -.sef
~|(unsupported-effect/-.sef !!)
$mor [%a (turn p.sef |=(a=sole-effect json(sef a)))]
$err (joba %hop (jone p.sef))
$txt (joba %txt (jape p.sef))
$tan (joba %tan (jape (wush 160 p.sef)))
$det (joba %det json:~(grow mar-sole-change +.sef))
$pro
(joba %pro (jobe vis/b/vis.sef tag/s/tag.sef cad/(jape cad.sef) ~))
::
?($bel $clr $nex)
(joba %act %s -.sef)
==
--
--

View File

@ -12,7 +12,7 @@
++ noun command :: clam from %noun
++ json
=> [jo ..command]
|= a=json ^- command
|= a+json ^- command
=- (need ((of -) a))
=< :~ publish/(ar thot)
review/(ar thot)
@ -20,37 +20,37 @@
==
|%
++ op :: parse keys of map
|* [fel=rule wit=fist]
|* {fel+rule wit+fist}
%+ cu mo
%- ci :_ (om wit)
|= a=(map cord ,_(need *wit))
^- (unit (list ,_[(wonk *fel) (need *wit)]))
|= a+(map cord __((need *wit)))
^- (unit (list __([(wonk *fel) (need *wit)])))
(zl (turn (~(tap by a)) (head-rush fel)))
::
++ ke :: callbacks
|* [gar=* sef=_|.(fist)]
|= jon=json
^- (unit ,_gar)
|* {gar+* sef+__(|.(fist))}
|= jon+json
^- (unit __(gar))
=- ~! gar ~! (need -) -
((sef) jon)
::
++ as :: array as set
:: |*(a=fist (cu sa (ar a))) :: XX types
|* a=fist
|* a+fist
%- cu :_ (ar a)
~(gas in *(set ,_(need *a)))
~(gas in *(set __((need *a))))
::
++ lake |*(a=_,* $+(json (unit a)))
++ lake |*(a+__(*) $+(json (unit a)))
++ peach
|* a=[rule rule]
|= tub=nail
^- (like (each ,_(wonk (-.a)) ,_(wonk (+.a))))
|* a+{rule rule}
|= tub+nail
^- (like (each __((wonk (-.a))) __((wonk (+.a)))))
%. tub
;~(pose (stag %& -.a) (stag %| +.a))
::
++ head-rush
|* a=rule
|* [b=cord c=*]
|* a+rule
|* {b+cord c+*}
=+ nit=(rush b a)
?~ nit ~
(some [u.nit c])
@ -70,27 +70,28 @@
++ lope (ot visible/bo sender/(mu (su parn)) ~)
::
++ parn
^- $+(nail (like partner))
^- _+(nail (like partner))
%+ peach
;~((glue fas) ;~(pfix sig fed:ag) urs:ab)
%+ sear (soft passport)
;~((glue fas) sym urs:ab) :: XX [a-z0-9_]{1,15}
::
++ speech-or-eval ?(speech [%eval p=@t] [%mor p=(list speech-or-eval)])
++ speech-or-eval _?(speech {$eval p+@t} {$mor p+(list speech-or-eval)})
++ eval
|= a=(trel ,@da bouquet speech-or-eval) ^- statement
|= a+(trel @da bouquet speech-or-eval)
^- statement
%= a r ^- speech
|-
?: ?=(%mor -.r.a)
[%mor (turn p.r.a |=(b=speech-or-eval ^$(r.a b)))]
?. ?=(%eval -.r.a) r.a
?: ?=($mor -.r.a)
[%mor (turn p.r.a |=(b+speech-or-eval ^$(r.a b)))]
?. ?=($eval -.r.a) r.a
=- [%fat tank/- %exp p.r.a]
=+ pax=[&1:% &2:% (scot %da p.a) |3:%]
p:(mule |.([(sell (slap !>(..zuse) (rain pax p.r.a)))]~))
==
::
++ stam
^- $+(json (unit statement))
^- _+(json (unit statement))
%+ cu eval
(ot date/di bouquet/(as (ar so)) speech/spec ~)
::
@ -105,7 +106,6 @@
:: inv/(ot ship/(su fed:ag) party/(su urs:ab) ~)
==
::
::
++ conf
^- $+(json (unit config))
%- ot :~

View File

@ -6,7 +6,7 @@
/+ talk
!:
[talk .]
|_ rep=report
|_ rep+report
::
++ grab :: convert from
|%
@ -19,26 +19,26 @@
=> +
|^ %+ joba -.rep
?- -.rep
%cabal (cabl +.rep)
%house a/(turn (~(tap by +.rep)) jose)
%glyph ((jome |=(a=char a) nack) +.rep)
%grams (jobe num/(jone p.rep) tele/[%a (turn q.rep gram)] ~)
%group (jobe local/(grop p.rep) global/%.(q.rep (jome parn grop)) ~)
$cabal (cabl +.rep)
$house a/(turn (~(tap by +.rep)) jose)
$glyph ((jome |=(a+char a) nack) +.rep)
$grams (jobe num/(jone p.rep) tele/[%a (turn q.rep gram)] ~)
$group (jobe local/(grop p.rep) global/%.(q.rep (jome parn grop)) ~)
==
++ joce |=(a=span [%s a])
++ joce |=(a+span [%s a])
++ jose
|= [a=span b=posture c=cord]
|= {a+span b+posture c+cord}
(jobe name/[%s a] posture/[%s a] caption/[%s b] ~)
::
++ jove
|= [a=envelope b=delivery]
|= {a+envelope b+delivery}
%- jobe :~
envelope/(jobe visible/[%b p.a] sender/?~(q.a ~ s/(parn u.q.a)) ~)
delivery/[%s b]
==
++ jope |=(a=ship (jape +:<a>)) ::[%s (crip +:(scow %p a))])
++ joke |=(a=tank [%s (role (turn (wash 0^80 a) crip))])
++ jode |=(a=time (jone (div (mul (sub a ~1970.1.1) 1.000) ~s1)))
++ jope |=(a+ship (jape +:<a>)) ::[%s (crip +:(scow %p a))])
++ joke |=(a+tank [%s (role (turn (wash 0^80 a) crip))])
++ jode |=(a+time (jone (div (mul (sub a ~1970.1.1) 1.000) ~s1)))
:: ++ jase
:: |* a=,json
:: |= b=(set ,_+<.a) ^- json
@ -46,18 +46,18 @@
:: [%a (turn (~(tap in b)) a)]
::
++ jome :: stringify keys
|* [a=_cord b=_json]
|= c=(map ,_+<.a ,_+<.b)
|* {a+__(cord) b+__(json)}
|= c=(map __(+<.a) __(+<.b))
(jobe (turn (~(tap by c)) (both a b)))
::
++ both :: cons two gates
|* [a=_,* b=_,*]
|=(c=_[+<.a +<.b] [(a -.c) (b +.c)])
|* {a+__(*) b+__(*)}
|=(c+__([+<.a +<.b]) [(a -.c) (b +.c)])
::
::
++ nack |=(a=(set (set partner)) [%a (turn (~(tap in a)) sorc)])
++ nack |=(a+(set (set partner)) [%a (turn (~(tap in a)) sorc)])
++ grop (jome phon stas) :: (map ship status)
++ phon |=(a=ship (scot %p a))
++ phon |=(a+ship (scot %p a))
++ stas |=(status (jobe presence/(joce p) human/(huma q) ~))
++ gram |=(telegram (jobe ship/(jope p) thought/(thot q) ~))
++ thot
@ -66,21 +66,21 @@
::
++ audi (jome parn jove)
++ bouq
|= a=bouquet
|= a+bouquet
a/(turn (~(tap in a)) |=(b=path a/(turn b |=(c=span s/c))))
::
++ parn
|= a=partner ^- cord
|= a+partner ^- cord
?- -.a
%& (stat p.a)
%| %- crip
?- -.p.a
%twitter "{(trip -.p.a)}/{(trip p.p.a)}"
==
{$&} (stat p.a)
{$|} %- crip
?- -.p.a
%twitter "{(trip -.p.a)}/{(trip p.p.a)}"
==
==
::
++ stat
|= a=station ^- cord
|= a+station ^- cord
(crip "{<p.a>}/{(trip q.a)}")
::
++ stam
@ -88,16 +88,16 @@
(jobe date/(jode p) bouquet/(bouq q) speech/(spec r) ~)
::
++ spec
|= a=speech
|= a+speech
%+ joba -.a
?+ -.a ~|(stub/-.a !!)
%lin (jobe txt/[%s q.a] say/[%b p.a] ~)
%url (joba txt/[%s (crip (earf p.a))])
%exp (joba txt/[%s p.a])
%tax (joba txt/(jape (rend-work-duty p.a)))
%app (jobe txt/[%s q.a] src/[%s p.a] ~)
%fat (jobe tor/(tors p.a) taf/$(a q.a) ~)
%mor a/(turn p.a spec)
$lin (jobe txt/[%s q.a] say/[%b p.a] ~)
$url (joba txt/[%s (crip (earf p.a))])
$exp (joba txt/[%s p.a])
$tax (joba txt/(jape (rend-work-duty p.a)))
$app (jobe txt/[%s q.a] src/[%s p.a] ~)
$fat (jobe tor/(tors p.a) taf/$(a q.a) ~)
$mor a/(turn p.a spec)
:: %inv (jobe ship/(jope p.a) party/[%s q.a] ~)
==
::
@ -105,9 +105,9 @@
|= a=torso
%+ joba -.a
?- -.a
%text [%s (role +.a)]
%tank [%a (turn +.a joke)]
%name (jobe nom/s/p.a mon/$(a q.a) ~)
$text [%s (role +.a)]
$tank [%a (turn +.a joke)]
$name (jobe nom/s/p.a mon/$(a q.a) ~)
==
::
++ huma
@ -128,7 +128,7 @@
==
::
++ sorc
|= a=(set partner) ^- json
|= a+(set partner) ^- json
[%a (turn (~(tap in a)) |=(b=partner s/(parn b)))]
::
++ conf

View File

@ -6,15 +6,15 @@
/+ talk
!:
=+ talk
|_ gam=(list telegram)
|_ gam+(list telegram)
::
++ grab-work-duty => [jo work-stuff]
|^ dute
++ as
:: |*(a=fist (cu sa (ar a))) :: XX types
|* a=fist
:: |*(a+fist (cu sa (ar a))) :: XX types
|* a+fist
%- cu :_ (ar a)
~(gas in *(set ,_(need *a)))
~(gas in *(set __((need *a))))
++ ot
|* a=(pole ,[@tas fist])
|= b=json
@ -22,7 +22,7 @@
%- slog
?+ b ~
[%o *]
%+ murn `(list ,[@tas fist])`a
%+ murn `(list {@tas fist})`a
|= [c=term d=fist] ^- (unit tank)
=+ (~(get by p.b) c)
?~ - (some >[c (turn (~(tap by p.b)) head)]<)
@ -31,14 +31,14 @@
~
==
++ of
|* a=(pole ,[@tas fist])
|= b=json
|* a+(pole {@tas fist})
|= b+json
%. ((of:jo a) b)
%- slog
?+ b ~
[%o *]
%+ murn `(list ,[@tas fist])`a
|= [c=term d=fist] ^- (unit tank)
|= {c+term d+fist} ^- (unit tank)
=+ (~(get by p.b) c)
?~ - ~
=+ (d u)
@ -76,15 +76,15 @@
--
++ grow-work-duty
=> work-stuff
=+ jope=|=(a=ship [%s (rsh 3 1 (scot %p a))])
=+ jove=|=(a=@uvI [%s (scot %uv a)])
=+ jope=|=(a+ship [%s (rsh 3 1 (scot %p a))])
=+ jove=|=(a+@uvI [%s (scot %uv a)])
=< |= duty
%+ joba +<-
?- +<-
%create (task tax)
%archive (jove id)
%change (jobe id/(jove id) meat/(flesh meat) ~)
%update
$create (task tax)
$archive (jove id)
$change (jobe id/(jove id) meat/(flesh meat) ~)
$update
%- jobe :~
id/(jove id)
version/(jone version)
@ -94,7 +94,7 @@
==
|%
++ tags
|= a=(set ,@t)
|= a+(set @t)
[%a (turn (sort (~(tap in a)) aor) |=(b=cord s/b))]
::
++ task
@ -117,13 +117,13 @@
|= ^flesh
%+ joba +<-
?- +<-
%set-doer ?~(her ~ (jope u.her))
%set-date-due ?~(wen ~ (jode u.wen))
%set-tags (tags tag)
%set-title [%s til]
%set-description [%s des]
%set-done [%b don]
%add-comment (jobe ship/(jope who) com/[%s com] ~)
$set-doer ?~(her ~ (jope u.her))
$set-date-due ?~(wen ~ (jode u.wen))
$set-tags (tags tag)
$set-title [%s til]
$set-description [%s des]
$set-done [%b don]
$add-comment (jobe ship/(jope who) com/[%s com] ~)
==
--
++ grab
@ -132,18 +132,18 @@
++ mime |=(^mime (json (rash q.q apex:poja)))
++ json
=> [jo ..telegram dute=grab-work-duty]
|= a=json ^- (list telegram)
|= a+json ^- (list telegram)
=- (need ((ar (ot ship/(su fed:ag) thought/thot ~)) a))
|%
++ of
|* a=(pole ,[@tas fist])
|= b=json
|* a+(pole {@tas fist})
|= b+json
%. ((of:jo a) b)
%- slog
?+ b ~
[%o *]
%+ murn `(list ,[@tas fist])`a
|= [c=term d=fist] ^- (unit tank)
%+ murn `(list {@tas fist})`a
|= {c+term d+fist} ^- (unit tank)
=+ (~(get by p.b) c)
?~ - ~
=+ (d u)
@ -151,37 +151,37 @@
~
==
++ op :: parse keys of map
|* [fel=rule wit=fist]
|* {fel+rule wit+fist}
%+ cu mo
%- ci :_ (om wit)
|= a=(map cord ,_(need *wit))
^- (unit (list ,_[(wonk *fel) (need *wit)]))
|= a+(map cord __((need *wit)))
^- (unit (list __([(wonk *fel) (need *wit)])))
(zl (turn (~(tap by a)) (head-rush fel)))
::
++ as :: array as set
:: |*(a=fist (cu sa (ar a))) :: XX types
|* a=fist
:: |*(a+fist (cu sa (ar a))) :: XX types
|* a+fist
%- cu :_ (ar a)
~(gas in *(set ,_(need *a)))
~(gas in *(set __((need *a))))
::
++ ke :: callbacks
|* [gar=* sef=_|.(fist)]
|= jon=json
^- (unit ,_gar)
|* {gar+* sef+__(|.(fist))}
|= jon+json
^- (unit __(gar))
=- ~! gar ~! (need -) -
((sef) jon)
::
++ lake |*(a=_,* $+(json (unit a)))
++ lake |*(a=__(*) $+(json (unit a)))
++ head-rush
|* a=rule
|* [b=cord c=*]
|* a+rule
|* {b+cord c+*}
=+ nit=(rush b a)
?~ nit ~
(some [u.nit c])
::
::
++ thot
^- $+(json (unit thought))
^- _+(json (unit thought))
%- ot :~
serial/(ci (slat %uv) so)
audience/audi
@ -194,7 +194,7 @@
++ lope (ot visible/bo sender/(mu (su parn)) ~)
::
++ parn
^- $+(nail (like partner))
^- _+(nail (like partner))
%+ pick
;~((glue fas) ;~(pfix sig fed:ag) urs:ab)
%+ sear (soft passport)
@ -266,17 +266,17 @@
a/(turn (~(tap in a)) |=(b=path a/(turn b |=(c=span s/c))))
::
++ parn
|= a=partner ^- cord
|= a+partner ^- cord
?- -.a
%& (stat p.a)
%| %- crip
?- -.p.a
%twitter "{(trip -.p.a)}/{(trip p.p.a)}"
==
{$&} (stat p.a)
{$|} %- crip
?- -.p.a
%twitter "{(trip -.p.a)}/{(trip p.p.a)}"
==
==
::
++ stat
|= a=station ^- cord
|= a+station ^- cord
(crip "{<p.a>}/{(trip q.a)}")
::
++ stam
@ -287,24 +287,24 @@
|= a=speech
%+ joba -.a
?+ -.a ~|(stub/-.a !!)
%lin (jobe txt/[%s q.a] say/[%b p.a] ~)
%url (joba txt/(jape (earf p.a)))
%exp (joba txt/[%s p.a])
%tax (jobe txt/(jape (rend-work-duty p.a)) xat/(grow-work-duty p.a) ~)
%app (jobe txt/[%s q.a] src/[%s p.a] ~)
%fat (jobe tor/(tors p.a) taf/$(a q.a) ~)
%ext (jobe nom/[%s p.a] txe/(jape (sifo (jam +.a))) ~)
%non ~
:: %inv (jobe ship/(jope p.a) party/[%s q.a] ~)
$lin (jobe txt/[%s q.a] say/[%b p.a] ~)
$url (joba txt/(jape (earf p.a)))
$exp (joba txt/[%s p.a])
$tax (jobe txt/(jape (rend-work-duty p.a)) xat/(grow-work-duty p.a) ~)
$app (jobe txt/[%s q.a] src/[%s p.a] ~)
$fat (jobe tor/(tors p.a) taf/$(a q.a) ~)
$ext (jobe nom/[%s p.a] txe/(jape (sifo (jam +.a))) ~)
$non ~
:: $inv (jobe ship/(jope p.a) party/[%s q.a] ~)
==
::
++ tors
|= a=torso
|= a+torso
%+ joba -.a
?- -.a
%text [%s (role +.a)]
%tank (jobe txt/[%a (turn +.a joke)] dat/(jape (sifo (jam +.a))) ~)
%name (jobe nom/s/p.a mon/$(a q.a) ~)
$text [%s (role +.a)]
$tank (jobe txt/[%a (turn +.a joke)] dat/(jape (sifo (jam +.a))) ~)
$name (jobe nom/s/p.a mon/$(a q.a) ~)
==
::
--
@ -315,6 +315,6 @@
++ form %talk-telegrams
++ diff |=((list telegram) +<)
++ pact |=((list telegram) +<)
++ join |=([(list telegram) (list telegram)] `(unit mime)`~)
++ join |=({(list telegram) (list telegram)} `(unit mime)`~)
--
--

View File

@ -90,8 +90,9 @@
--
::
++ mash
|= $: [als=ship ald=desk ali=(urge cord)]
[bos=ship bod=desk bob=(urge cord)]
|= $^
_: {als+ship ald+desk ali+(urge cord)}
{bos+ship bod+desk bob+(urge cord)}
==
^- (urge cord)
|^
@ -115,7 +116,7 @@
[i.bob $(ali t.ali, bob t.bob)]
?: (gth p.i.ali (lent p.i.bob))
[i.bob $(p.i.ali (sub p.i.ali (lent p.i.bob)), bob t.bob)]
=+ ^- [fic=(unce cord) ali=(urge cord) bob=(urge cord)]
=+ ^- {fic+(unce cord) ali+(urge cord) bob+(urge cord)}
(resolve ali bob)
[fic $(ali ali, bob bob)]
:: ~ :: here, alice is good for a while, but not for the whole
@ -124,7 +125,7 @@
{$|}
?- -.i.bob
{$|}
=+ ^- [fic=(unce cord) ali=(urge cord) bob=(urge cord)]
=+ ^- {fic+(unce cord) ali+(urge cord) bob+(urge cord)}
(resolve ali bob)
[fic $(ali ali, bob bob)]
::
@ -133,22 +134,23 @@
[i.ali $(ali t.ali, bob t.bob)]
?: (gth p.i.bob (lent p.i.ali))
[i.ali $(ali t.ali, p.i.bob (sub p.i.bob (lent p.i.ali)))]
=+ ^- [fic=(unce cord) ali=(urge cord) bob=(urge cord)]
=+ ^- {fic+(unce cord) ali+(urge cord) bob+(urge cord)}
(resolve ali bob)
[fic $(ali ali, bob bob)]
==
==
::
++ annotate :: annotate conflict
|= $: ali=(list ,@t)
bob=(list ,@t)
bas=(list ,@t)
|= $^
_: ali+(list @t)
bob+(list @t)
bas+(list @t)
==
^- (list ,@t)
^- (list @t)
%- zing
^- (list (list ,@t))
^- (list (list @t))
%- flop
^- (list (list ,@t))
^- (list (list @t))
:- :_ ~
%^ cat 3 '<<<<<<<<<<<<'
%^ cat 3 ' '

View File

@ -8,37 +8,38 @@
[work .]
|%
++ rend
|= a=(list $|(char dime)) ^- cord
|= a=(list _|(char dime)) ^- cord
%- crip
|- ^- tape
?~ a ~
?@ i.a [i.a $(a t.a)]
(weld (scow i.a) $(a t.a))
::
++ indent |=(a=wain (turn a |=(b=cord (cat 3 ' ' b))))
++ indent |=(a+wain (turn a |=(b+cord (cat 3 ' ' b))))
::
++ undent
|* [a=wain b=$+(wain *)] ^+ [*b a]
|* {a+wain b+_+(wain *)} ^+ [*b a]
=^ c a
|- ^- [c=wain a=wain]
|- ^- {c+wain a+wain}
?~ a [~ a]
?. =(' ' (end 3 2 i.a))
[~ a]
[[- c] a]:[(rsh 3 2 i.a) $(a t.a)]
[(b `wain`c) a]
++ keen |*([a=* b=rule] |=(c=nail `(like a)`(b c)))
::
++ keen |*({a+* b+rule} |=(c+nail `(like a)`(b c)))
++ parse
|* [hed=?(~ $|(@tas tape)) tal=(pole)]
|* {hed+_?($~ _|(@tas tape)) tal+(pole)}
?~ hed (..$ tal)
?^ hed ;~(pfix (just (crip hed)) (..$ tal))
=- ?~(tal had ;~(plug had (..$ tal)))
=< had=(sear . nuck:so)
|= a=coin ^- (unit (odo:raid hed))
?. &(?=([%$ @ @] a) =(hed p.p.a)) ~
?. &(?=({$$ @ @} a) =(hed p.p.a)) ~
(some q.p.a)
::
++ advance
|* [a=wain b=rule] ^+ [(wonk *b) a]
|* {a+wain b+rule} ^+ [(wonk *b) a]
?~(a !! ~|(i.a [(rash i.a b) t.a]))
--
!:
@ -47,15 +48,15 @@
|_ taz=task
++ grab
|% ++ txt
|= a=wain ^+ taz
|= a+wain ^+ taz
=+ ~[id=%uv "_" date-created=%da " " version=%ud date-modified=%da]
=^ b a (advance a ;~(plug (parse -) (punt (parse " " %da ~))))
=+ [-.b `date-due=(unit ,@da)`+.b]
=+ [-.b `date-due=(unit @da)`+.b]
=^ tags a (undent a ~(gas in *(set cord)))
=^ title a ?~(a !! a)
=^ b a %+ advance a
;~(plug (parse %p ~) (punt (parse ">" %p ~)) (punt (parse "X" %da ~)))
=+ `[creator=@p doer=(unit ,@p) done=(unit ,@da)]`b
=+ `{creator+@p doer+(unit @p) done+(unit @da)}`b
=^ description a (undent a role)
:* id date-created version date-modified creator
doer tags date-due done title description :: XX done

View File

@ -7,6 +7,6 @@
|%
++ noun {?($hoon $md $txt) @t}
++ json
(corl need =>(jo (ot typ/(ci (soft ?(%hoon %md %txt)) so) txt/so ~)))
(corl need =>(jo (ot typ/(ci (soft ?($hoon $md $txt)) so) txt/so ~)))
--
--

View File

@ -1,18 +1,18 @@
|%
++ bit-any
$% [%bit-get-token bit-get-token]
[%bit-api-call tok=@t bit-api-call]
_% {$bit-get-token bit-get-token}
{$bit-api-call tok+@t bit-api-call}
==
++ bit-api-call
$% [%send bit-send]
[%txt-send to=@t btc=@t]
[%buy amount=@t currency=@t]
[%sell amount=@t currency=@t]
[%list ~]
_% {$send bit-send}
{$txt-send to+@t btc+@t}
{$buy amount+@t currency+@t}
{$sell amount+@t currency+@t}
{$list $~}
==
++ bit-send ,[adr=@uc btc=@t]
++ bit-ship-send ,[who=@p btc=@t]
++ bit-get-token ,[oat=@t [cid=@t sec=@t] red=purl]
++ bit-accounts (list ,[id=@t name=@t balance=[num=@t cur=term]])
++ bit-send {adr+@uc btc+@t}
++ bit-ship-send {who+@p btc+@t}
++ bit-get-token {oat+@t {cid+@t sec+@t} red+purl}
++ bit-accounts (list {id+@t name+@t balance+{num+@t cur+term}})
--

View File

@ -6,14 +6,14 @@
:::: :::::: semantics
:: :: ::
|% ::
++ board ,@ :: one-player bitfield
++ point ,[x=@ y=@] :: coordinate
++ board @ :: one-player bitfield
++ point {x+@ y+@} :: coordinate
++ stage (pair (unit ship) (unit ship)) :: players
++ play (each game tape) :: update
++ game :: game state
$: who=? :: whose turn
sag=stage :: who's playing
aud=(map ship ,@ud) :: who's watching
aud=(map ship @ud) :: who's watching
box=board :: X board
boo=board :: O board
== ::

View File

@ -39,16 +39,16 @@
{$url p+@t} :: activate url
== ::
++ sole-command :: command state
$: pos+@ud :: cursor position
_: pos+@ud :: cursor position
say+sole-share :: cursor
== ::
++ sole-prompt :: prompt definition
$: vis+? :: command visible
_: vis+? :: command visible
tag+term :: history mode
cad+tape :: caption
== ::
++ sole-share :: symmetric state
$: ven+sole-clock :: our vector clock
_: ven+sole-clock :: our vector clock
leg+(list sole-edit) :: unmerged edits
buf+sole-buffer :: sole state
== ::
@ -73,7 +73,7 @@
|* out+_+(* *) :: output structure
%+ pair (list tank) ::
%+ each (unit out) :: ~ is abort
(pair hiss $+(httr (sole-request out))) :: fetch and continue
(pair hiss _+(httr (sole-request out))) :: fetch and continue
:: ::
++ sole-gen :: XX virtual type
_% {$say _+((sole-args) (cask))} :: direct noun
@ -109,7 +109,7 @@
|* {sef+rule fun+_+(* *)} ::
|= txt+sole-input ::
=+ vex=(sef [0 0] txt) ::
?: |(!=((lent txt) q.p.vex) ?=(~ q.vex)) ::
?: |(!=((lent txt) q.p.vex) ?=($~ q.vex)) ::
q.p.vex ::
(fun p.u.q.vex) ::
--