diff --git a/arvo/batz.hoon b/arvo/batz.hoon index 0b7be3fb1..1a0c5147f 100644 --- a/arvo/batz.hoon +++ b/arvo/batz.hoon @@ -1,4 +1,4 @@ -:: +!: :: batz (4b), shell :: |= pit=vase @@ -1263,7 +1263,98 @@ :: ++ call :: process move |= [hen=duct hic=(hypo kiss)] - (take ~ hen hic) + ^- [p=(list move) q=_..^$] + :: ~& [%batz-take -.q.hic [%tea tea] [%hen hen]] + =+ ska=(slod ski) + =+ sky=|=(* `(unit)`=+(a=(ska +<) ?~(a ~ ?~(u.a ~ [~ u.u.a])))) + ?: ?=([%crud *] q.hic) + [[[hen [%slip %d %flog q.hic]] ~] ..^$] + ?: ?=([%soft *] q.hic) + $(q.hic ((hard card) p.q.hic)) + ?: ?=(%wake -.q.hic) + =+ ^= fiy + =| fiy=(list ,[p=duct q=ship r=[p=@ud q=@ud r=wire]]) + |- ^+ fiy + ?~ dez fiy + =. fiy $(dez l.dez) + =. fiy $(dez r.dez) + |- ^+ fiy + ?~ q.n.dez fiy + %= $ + q.n.dez t.q.n.dez + fiy + |- ^+ fiy + ?~ tem.q.i.q.n.dez fiy + =. fiy $(tem.q.i.q.n.dez l.tem.q.i.q.n.dez) + =. fiy $(tem.q.i.q.n.dez r.tem.q.i.q.n.dez) + ?. (lte q.n.tem.q.i.q.n.dez now) fiy + [[p.n.dez p.i.q.n.dez p.n.tem.q.i.q.n.dez] fiy] + == + =| wam=(list move) + |- ^- [p=(list move) q=_..^^$] + ?~ fiy [wam ..^^$] + =+ dos=(need (~(get by dez) p.i.fiy)) + =+ suy=|-(`brad`?~(dos !! ?.(=(q.i.fiy p.i.dos) $(dos t.dos) q.i.dos))) + =+ geb=((be [[q.i.fiy bred] suy]) now eny sky) + =+ ^= yub ^- [p=(list move) q=brat] + ?. (fang:geb r.i.fiy) + ~& [%time-lost r.i.fiy] + [~ abet:(flub:geb r.i.fiy)] + (lake:geb p.i.fiy r.i.fiy) + %= $ + fiy t.fiy + wam (weld p.yub wam) + dez.^^$ (~(put by dez.^^$) p.i.fiy [[q.i.fiy +.q.yub] +.dos]) + == + |- ^- [p=(list move) q=_..^^$] + =+ dus=(~(get by dez) hen) + ?~ dus + ?+ -.q.hic + ~& [%take-none -.q.hic ~ hen] + ~|([%take-none -.q.hic] !!) + :: + %hail + ?~ big + ~& [%take-hail-soon hen] + [~ ..^^$] + ~& [%batz-hack-console hen] + $(dez (~(put by dez) hen [[u.big (bard u.big)] ~])) + :: + %init + :: ~& [%take-init p.q.hic hen] + =. big ?~ big + `p.q.hic + `(min p.q.hic u.big) + =+ bos=(sein p.q.hic) + :- :- [hen [%give q.hic]] + ?: =(bos p.q.hic) ~ + :_ ~ + [hen [%slip %b %line (rap 3 ":{(scow %p bos)}/main=/bin/update")]] + ..^^$(dez (~(put by dez) hen [[p.q.hic (bard p.q.hic)] ~])) + :: + ?(%loin %make %sith) + [[[hen [%toss %a ~ q.hic]] ~] ..^^$] + == + ?> ?=(^ u.dus) + ?+ -.q.hic + =+ beg=`brat`[[p.i.u.dus bred] q.i.u.dus] + =+ yub=(leap:((be beg) now eny sky) ~ hen q.hic) + :- p.yub + ..^^$(dez (~(put by dez) hen [[p.i.u.dus +.q.yub] t.u.dus])) + :: + %init + =+ bos=(sein p.q.hic) + :- :* [hen %give q.hic] + [[[%b ~] hen] [%sick %hail ~]] + ?: =(bos p.q.hic) ~ + :_ ~ + [[/b hen] [%sick %line (rap 3 ":{(scow %p bos)}/main=/bin/update")]] + == + ..^^$(dez (~(put by dez) hen [[p.q.hic (bard p.q.hic)] u.dus])) + :: + %limn + $(q.hic [%hail ~], dez (~(put by dez) hen (weld t.u.dus `brim`[i.u.dus ~]))) + == :: ++ doze |= [now=@da hen=duct] diff --git a/arvo/eyre.hoon b/arvo/eyre.hoon index b5f284ccb..ae9ce6b33 100644 --- a/arvo/eyre.hoon +++ b/arvo/eyre.hoon @@ -10,6 +10,7 @@ == :: ++ kiss :: in request ->$ $% [%born ~] :: new unix process + [%crud p=@tas q=(list tank)] :: XX rethink [%init p=@p] :: report install [%them p=(unit hiss)] :: outbound request [%they p=@ud q=httr] :: inbound response @@ -254,6 +255,8 @@ ^+ +> ?- -.kyz %born +>.$(ged hen) :: register external + %crud + +>.$(mow [[hen %slip %d %flog kyz] mow]) %init :: register ownership %_ +>.$ hov ?~(hov [~ p.kyz] [~ (min u.hov p.kyz)]) @@ -1175,6 +1178,7 @@ ++ inch :: function built |= [num=@ud mez=(each beet (list tank))] ^+ +> + ~& [%inch num -.mez] =+ pup=(~(get by q.rey) num) ?~ pup ~& [%inch-lost ses num mez] @@ -1583,21 +1587,23 @@ [~ pip(pez [%fin %wan 'Hello, world' ~])] :: [%fud *] - ?> ?=(%fun -.som.pip) + =+ ^= mog + ?: ?=(%fun -.som.pip) r.som.pip + ~ :_ +>.$ :- ~ %= pip pez ^- pest ?- -.p.pez.pip - | =+ mad=(loga "server error" r.som.pip p.p.pez.pip) + | =+ mad=(loga "server error" mog p.p.pez.pip) :- %fin :- %raw ^- httr :+ 500 ~[content-type/'text/html'] [~ (tact (xmlt | mad ~))] - & [%fin (lofi r.som.pip (lopo q.p.p.pez.pip))] + & [%fin (lofi mog (lopo q.p.p.pez.pip))] == == :: diff --git a/arvo/ford.hoon b/arvo/ford.hoon index 3b5085f1a..b50c579c9 100644 --- a/arvo/ford.hoon +++ b/arvo/ford.hoon @@ -303,6 +303,7 @@ :: ++ expo :: return gift |= gef=gift + ~& [%expo -.gef] %_(+> mow :_(mow [hen %give gef])) :: ++ fade :: compile @@ -641,6 +642,7 @@ |% :: ++ call :: request |= [hen=duct hic=(hypo (hobo kiss))] + ~& [%ford-call (,@tas -.q.hic)] =. hic =+ kyt=-:!>(q.hic) :: XX temporary ?: (~(nest ut kyt) | p.hic) hic @@ -679,6 +681,7 @@ ++ stay `axle`+>-.$ ++ take :: response |= [tea=wire hen=duct hin=(hypo sign)] + ~& [%ford-take (,@tas -.q.hin)] =. hin =+ kyn=-:!>(q.hin) :: XX temporary ?: (~(nest ut kyn) | p.hin) hin diff --git a/arvo/gall.hoon b/arvo/gall.hoon index 7cf403ead..8e5f46413 100644 --- a/arvo/gall.hoon +++ b/arvo/gall.hoon @@ -21,6 +21,7 @@ == :: ++ kiss :: in request ->$ $% [%cuff p=(unit cuff) q=kiss] :: controlled kiss + [%crud p=@tas q=(list tank)] :: XX rethink [%mesh p=hasp q=path r=json] :: web message (json) [%mess p=hasp q=cage] :: urbit message [%mush p=hasp q=path r=cage] :: web message (mime) diff --git a/main/sys/hoon/ref/gate.hoon b/main/sys/hoon/ref/gate.hoon new file mode 100644 index 000000000..772a81e76 --- /dev/null +++ b/main/sys/hoon/ref/gate.hoon @@ -0,0 +1,3 @@ +|= rem=spur +~& [%html rem] +,@ diff --git a/main/sys/html/ref/gate.hoon b/main/sys/html/ref/gate.hoon new file mode 100644 index 000000000..353a9ccf3 --- /dev/null +++ b/main/sys/html/ref/gate.hoon @@ -0,0 +1,2 @@ +|= * +,@ diff --git a/main/sys/html/tan/mime/gate.hoon b/main/sys/html/tan/mime/gate.hoon new file mode 100644 index 000000000..730948e87 --- /dev/null +++ b/main/sys/html/tan/mime/gate.hoon @@ -0,0 +1,3 @@ +|= * +|= htm=@ +[/text/html (met 3 htm) htm] diff --git a/main/sys/md/ref/gate.hoon b/main/sys/md/ref/gate.hoon new file mode 100644 index 000000000..00f1dfa93 --- /dev/null +++ b/main/sys/md/ref/gate.hoon @@ -0,0 +1 @@ +|=(* ,@) diff --git a/main/sys/md/tan/html/gate.hoon b/main/sys/md/tan/html/gate.hoon new file mode 100644 index 000000000..8e6b4de54 --- /dev/null +++ b/main/sys/md/tan/html/gate.hoon @@ -0,0 +1,342 @@ +!: +|= * +=> %= . + + + => + + => + |% + ++ down + $& [p=down q=down] + $% [%$ p=tape] + [%code p=tape] + [%inco p=tape] + [%head p=haxe q=down] + [%link p=tape q=tape r=(unit tape)] + [%lord p=(list down)] + [%lund p=(list down)] + [%parg p=down] + [%quot p=down] + [%rong p=down] + [%emph p=down] + [%hrul ~] + [%html p=tape] + == + ++ haxe + |= a=* + ?@ a + ?:(&(!=(0 a) (lth a 6)) a 6) + 6 + -- + |% + ++ cott + ;~ pose + (shim 0 8) + (shim 11 37) + (shim 39 59) + (just `@`61) + (shim 63 95) + (shim 97 255) + == + ++ copt + ;~ pose + (shim 0 9) + (shim 11 37) + (shim 39 39) + (shim 43 59) + (just `@`61) + (shim 63 90) + (shim 94 94) + (shim 97 255) + == + ++ urlc ;~(pose (shim 0 9) (shim 11 31) (shim 33 39) (shim 42 255)) + ++ uctt ;~(pose (shim 0 9) (shim 11 91) (shim 94 255)) + ++ uctc ;~(pose (shim 0 9) (shim 11 33) (shim 35 39) (shim 42 255)) + ++ htmc ;~(pose (shim 0 9) (shim 11 255)) + ++ escp (mask "\\`*_\{}[]()#+-.!") + ++ escd ;~(pfix bas escp) + ++ whit (mask (tape 9 32 ~)) + ++ dent ;~(pose (jest ' ') (just `@`9)) + ++ blan (cold ~ ;~(plug (star whit) (just `@`10))) + ++ mcat (bend |=([a=tape b=tape] (some (weld a b)))) + ++ wcat |*(a=_rule (cook |=([a=tape b=tape] (weld a b)) a)) + ++ codt + %+ knee *tape |. ~+ + ;~ pose + (wcat ;~(plug (plus cott) codt)) + (cook |=(a=tape (weld "<" a)) ;~(pfix gal ;~(pose codt (easy ~)))) + (cook |=(a=tape (weld ">" a)) ;~(pfix gar ;~(pose codt (easy ~)))) + (cook |=(a=tape (weld "&" a)) ;~(pfix pam ;~(pose codt (easy ~)))) + (plus cott) + == + ++ inlt + %+ knee *tape |. ~+ + ;~ pose + ;~(mcat (plus copt) inlt) + ;~(mcat (plus escd) inlt) + ;~ mcat + %- wcat + ;~ plug + ;~(plug gal (cook trip inle)) + ;~(sfix (wcat ;~(plug (star copt) (easy ">"))) gar) + == + inlt + == + ;~ mcat + %- wcat + ;~ plug + ;~(plug gal fas (cook trip inle)) + ;~(sfix (wcat ;~(plug (star copt) (easy ">"))) gar) + == + inlt + == + ;~ mcat + (wcat ;~(plug ;~(plug pam hax ;~(sfix (plus nud) sem)) (easy ";"))) + inlt + == + ;~ mcat + (wcat ;~(plug ;~(plug pam ;~(sfix (plus alf) sem)) (easy ";"))) + inlt + == + (cook |=(a=tape (weld "<" a)) ;~(pfix gal ;~(pose inlt (easy ~)))) + (cook |=(a=tape (weld ">" a)) ;~(pfix gar ;~(pose inlt (easy ~)))) + (cook |=(a=tape (weld "&" a)) ;~(pfix pam ;~(pose inlt (easy ~)))) + == + ++ kite + |= bud=(list ,@t) + |= tub=nail + |- ^- (like ,@t) + ?@ bud + (fail tub) + =+ foo=((jest i.bud) tub) + ?~ q.foo + $(bud t.bud) + foo + ++ bloc + %+ knee *@t |. ~+ + %- kite + :~ '
' '
' '