This commit is contained in:
Anton Dyudin 2015-05-25 18:17:59 -07:00
parent 1f8a857d7a
commit 593aa09701
6 changed files with 199 additions and 186 deletions

View File

@ -72,7 +72,7 @@
[%writ p=riot] ::
== == ::
$: %f ::
$% [%made p=@uvH q=(each gage (list tank))] ::
$% [%made p=@uvH q=gage] ::
== == ::
$: %t ::
$% [%wake ~] :: timer activate
@ -175,28 +175,42 @@
:: ~& [%aver-mun nao [%from syd lim q.mun]]
?~(nao ~ (read-at-aeon:ze u.nao mun))
::
++ made-to-tage
|= res=(each gage tang)
^- tage
?: ?=(%| -.res)
~| %ford-fail
|-
?~ p.res !!
~> %mean.|.(i.p.res) :: interpolate ford fail into stack trace
$(p.res t.p.res)
?@ p.p.res
~|(%bad-marc !!)
p.res
++ ford-fail
|= tan=tang
~| %ford-fail
|-
?~ tan !!
~> %mean.|.(i.tan) :: interpolate into stack trace
$(tan t.tan)
::
++ tage-to-cages
|= tab=tage
^- (list (pair cage cage))
?~ p.tab
~
:_ $(p.tab t.p.tab, q.tab (slot 3 q.tab))
~| %strange-gage
:- [?^(p.i.p.tab !! p.i.p.tab) (slot 4 q.tab)]
[?^(q.i.p.tab !! q.i.p.tab) (slot 5 q.tab)]
++ unwrap-tang
|* res=(each ,* tang)
?: ?=(%& -.res)
p.res
(ford-fail p.res)
::
++ gage-to-cages
|= gag=gage ^- (list (pair cage cage))
(unwrap-tang (gage-to-tage gag))
::
++ gage-to-tage
|= gag=gage
^- (each (list (pair cage cage)) tang)
?. ?=(%tabl -.gag)
(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)))
%& ?- -.q.hed
%tabl (mule |.(`~`(ford-fail >%strange-gage< ~)))
%| (mule |.(`~`(ford-fail p.q.hed)))
%& =+ $(p.gag t.p.gag)
?+(- [[p.p p.q]:hed -] [@ *] -)
== ==
::
++ balk :: read and send
|= [hen=duct cay=(unit (each cage lobe)) mun=mood]
@ -538,7 +552,7 @@
(checkout-ankh(lat.ran lat.ran.+.hat) u.-.hat)
::
++ take-inserting
|= [wen=@da res=(each gage tang)]
|= [wen=@da res=gage]
^+ +>
?~ dok
~& %clay-take-inserting-unexpected-made +>.$
@ -551,14 +565,14 @@
(apply-edit wen)
+>.$
^- (list (pair path cage))
%+ turn (tage-to-cages (made-to-tage res))
%+ turn (gage-to-cages res)
|= [pax=cage cay=cage]
?. ?=(%path p.pax)
~|(%clay-take-inserting-strange-path-mark !!)
[((hard path) q.q.pax) cay]
::
++ take-diffing
|= [wen=@da res=(each gage tang)]
|= [wen=@da res=gage]
^+ +>
?~ dok
~& %clay-take-diffing-unexpected-made +>.$
@ -571,7 +585,7 @@
(apply-edit wen)
+>.$
^- (list (trel path lobe cage))
%+ turn (tage-to-cages (made-to-tage res))
%+ turn (gage-to-cages res)
|= [pax=cage cay=cage]
^- (pair path (pair lobe cage))
?. ?=(%path p.pax)
@ -580,14 +594,14 @@
[paf (page-to-lobe:ze [p q.q]:cay) (~(got by dig.u.dok) paf)]
::
++ take-castify
|= [wen=@da res=(each gage tang)]
|= [wen=@da res=gage]
^+ +>
?~ dok
~& %clay-take-castifying-unexpected-made +>.$
?. =(~ muh.u.dok)
~& %clay-take-castifying-redundant-made +>.$
=+ ^- cat=(list (pair path cage))
%+ turn (tage-to-cages (made-to-tage res))
%+ turn (gage-to-cages res)
|= [pax=cage cay=cage]
?. ?=(%path p.pax)
~|(%castify-bad-path-mark !!)
@ -610,7 +624,7 @@
==
::
++ take-mutating
|= [wen=@da res=(each gage tang)]
|= [wen=@da res=gage]
^+ +>
?~ dok
~& %clay-take-mutating-unexpected-made +>.$
@ -623,7 +637,7 @@
(apply-edit wen)
+>.$
^- (list (trel path lobe cage))
%+ murn (tage-to-cages (made-to-tage res))
%+ murn (gage-to-cages res)
|= [pax=cage cay=cage]
^- (unit (pair path (pair lobe cage)))
?. ?=(%path p.pax)
@ -634,7 +648,7 @@
`[paf (~(got by muh.u.dok) paf) cay]
::
++ take-patch
|= res=(each gage tang)
|= res=gage
^+ +>
:: ~& %taking-patch
?: ?=(%| -.res)
@ -675,29 +689,15 @@
(echo now %& *cart sim)
==
?~ dok ~& %no-dok +>.$
=+ cay=p.res
?@ p.cay ~| %patch-bad-marc !!
:: ~& %canning
=+ ^= can
|- ^- (list ,[path cage])
?~ p.p.cay
~
:_ %_($ cay [[%tabl t.p.p.cay] (slot 3 q.cay)])
?. ?=(%path p.i.p.p.cay)
~| %patch-strange-marc-a
!!
?. ?=(@ q.i.p.p.cay)
~| %patch-strange-marc-b
!!
=+ coy=(slot 2 q.cay)
?@ q.coy
~| %patch-strange-coy
!!
:- ((hard path) -.q.coy)
[q.i.p.p.cay (slot 3 coy)]
=+ ^- cat=(list (pair path cage))
%+ turn (gage-to-cages res)
|= [pax=cage cay=cage]
?. ?=(%path p.pax)
~|(%patch-bad-path-mark !!)
[((hard path) q.q.pax) cay]
:: ~& %canned
:: ~& %checking-out
=. ank.dom (checkout-ankh:ze (mo can))
=. ank.dom (checkout-ankh:ze (mo cat))
=. +>.$ =>(wake ?>(?=(^ dok) .))
:: ~& %checked-out
?~ hez +>.$(dok ~)
@ -734,7 +734,7 @@
==
::
++ take-ergo
|= res=(each gage tang)
|= res=gage
^+ +>
?: ?=(%| -.res)
%_ +>.$
@ -743,30 +743,19 @@
==
?~ hez ~|(%no-sync-duct !!)
?. syn ~|(%sync-off !!)
=+ cay=p.res
?@ p.cay ~| %patch-bad-marc !!
%= +>.$
reg
:_ reg
:* u.hez %ergo who syd let.dom
|- ^- (list ,[path (unit mime)])
?~ p.p.cay
^- (list ,[path (unit mime)])
%+ turn (gage-to-cages res)
|= [pax=cage mim=cage]
?. ?=(%path p.pax)
~|(%ergo-bad-path-mark !!)
:- ((hard path) q.q.pax)
?. ?=(%mime p.mim)
~
:_ %_($ cay [[%tabl t.p.p.cay] (slot 3 q.cay)])
?. ?=(%path p.i.p.p.cay)
~| %ergo-strange-marc-a
!!
?. ?=(@ q.i.p.p.cay)
~| %ergo-strange-marc-b
!!
=+ coy=(slot 2 q.cay)
?@ q.coy
~| %ergo-strange-coy
!!
:- ((hard path) -.q.coy)
?. ?=(%mime q.i.p.p.cay)
~
`((hard mime) q:(slot 3 coy))
`((hard mime) q:(slot 3 q.mim))
==
==
::
@ -1898,7 +1887,7 @@
(diff-bas %bob bob.dat bob ali.dat)
::
++ diffed-bob
|= res=(each gage tang)
|= res=(each tage tang)
^+ +>
?: ?=(%| -.res)
(error:he %diff-bob-bad-made leaf/"merge diff bob failed" p.res)
@ -1977,7 +1966,7 @@
==
::
++ merged
|= res=(each gage tang)
|= res=(each tage tang)
?: ?=(%| -.res)
(error:he %merge-bad-made leaf/"merging failed" p.res)
=+ cay=p.res
@ -2034,7 +2023,7 @@
::
++ built
|= res=(each gage tang)
|= res=(each tage tang)
^+ +>
?: ?=(%| -.res)
(error:he %build-bad-made leaf/"delta building failed" p.res)
@ -2170,7 +2159,7 @@
==
::
++ checked-out
|= res=(each gage tang)
|= res=(each tage tang)
^+ +>
?: ?=(%| -.res)
(error:he %checkout-bad-made leaf/"merge checkout failed" p.res)
@ -2230,8 +2219,8 @@
==
::
++ ergoed
|= res=(each gage tang)
^+ +>
|= res=(each tage tang)
^+ +
?: ?=(%| -.res)
(error:he %ergo-bad-made leaf/"merge ergo failed" p.res)
=+ cay=p.res

View File

@ -39,7 +39,7 @@
$% [%thou p=httr] :: response for proxy
== == ::
$: %f :: by %ford
$% [%made p=@uvH q=(each gage tang)] ::
$% [%made p=@uvH q=gage] ::
[%news ~] ::
== == ::
$: %t :: by %time
@ -577,7 +577,7 @@
==
::
%made
?> ?=(?([%| *] [%& @ *]) q.sih)
?< ?=(%tabl -.q.sih)
=. our (need hov) :: XX
|- ^+ ..axon
?- tee

View File

@ -55,7 +55,7 @@
dep=(set beam) :: dependencies
== ::
++ calx :: concrete cache line
$% [%hood p=calm q=(pair beam gage) r=hood] :: compile
$% [%hood p=calm q=(pair beam cage) r=hood] :: compile
[%bake p=calm q=(trel mark beam heel) r=(unit vase)]:: load
[%slit p=calm q=[p=type q=type] r=type] :: slam type
[%slim p=calm q=[p=type q=twig] r=(pair type nock)]:: mint
@ -105,8 +105,21 @@
^- cafe ::
[(grom p.a p.b) (grum q.a q.b)] ::
:: ::
++ faun |=([a=cafe b=vase] (fine a `gage`[%noun b])) :: vase to cage
++ feel |=([a=cafe b=gage] (fine a q.b)) :: cage to vase
++ faun |=([a=cafe b=vase] (fine a [%& %noun b])) :: vase to gage
++ feel |=([a=cafe b=cage] (fine a q.b)) :: cage to vase
++ furl :: unwrap gage to cage
|= [a=cafe b=gage] ^- (bolt cage)
?- -.b
%tabl (flaw a >%bad-marc< ~)
%| (flaw a p.b)
%& (fine a p.b)
==
::
++ fret :: lift error
|= a=(bolt gage) ^- (bolt gage)
?. ?=(%2 -.q.a) a
[p.a [%0 p.q.a `gage`[%| q.q.a]]]
::
++ fest :: bolt to success
|= a=beam ::
|*([b=cafe c=*] (flag a (fine b [~ u=c]))) ::
@ -413,6 +426,23 @@
==
fun
::
++ tabl-run :: apply to all elems
|= fun=(burg cage gage)
|= [cof=cafe gag=gage]
^- (bolt gage)
?. ?=(%tabl -.gag)
(cope (furl cof gag) fun)
%+ cope
|- ^- (bolt (list (pair gage gage)))
?~ p.gag (fine cof ~)
%+ cope (fret ^$(gag q.i.p.gag))
|= [cof=cafe val=gage]
%+ cope ^$(p.gag t.p.gag)
|= [cof=cafe rex=(list (pair gage gage))]
(fine cof [[p.i.p.gag val] rex])
|= [cof=cafe rex=(list (pair gage gage))]
(fine cof %tabl rex)
::
++ dash :: process cache
|= cof=cafe
^+ +>
@ -424,17 +454,15 @@
%. [cof kas kos]
;~ cope
;~ coax
|=([cof=cafe p=silk q=silk] (make cof p))
|=([cof=cafe p=silk q=silk] (make cof q))
|=([cof=cafe p=silk q=silk] (cope (make cof p) furl))
|=([cof=cafe p=silk q=silk] (cope (make cof q) furl))
==
|= [cof=cafe cay=gage coy=gage]
?. &(?=(@ p.cay) ?=(@ p.coy))
(flaw cof leaf/"bad diff marc" ~)
|= [cof=cafe cay=cage coy=cage]
?. =(p.cay p.coy)
%+ flaw cof :_ ~
leaf/"diff on data of different marks: {(trip p.cay)} {(trip p.coy)}"
?: =(q.q.cay q.q.coy)
(fine cof %null [%atom %n] ~)
(fine cof %& %null [%atom %n] ~)
%+ cope (fang cof p.cay)
|= [cof=cafe pro=vase]
?. (slab %grad p.pro)
@ -461,7 +489,7 @@
=+ for=((soft ,@tas) q:(slap gar [%cnzy %form]))
?~ for
(flaw cof leaf/"bad ++form:grad" ~)
(fine cof u.for dif)
(fine cof %& u.for dif)
==
::
++ daze :: remember depends
@ -480,7 +508,7 @@
=. ..exec (dash p.bot)
?- -.q.bot
%0 =^ dep deh.bay (daze p.q.bot)
amok:(expo [%made dep %& q.q.bot])
amok:(expo [%made dep q.q.bot])
%2 =^ dep deh.bay (daze p.q.bot)
amok:(expo [%made dep %| q.q.bot])
%1 =+ zuk=(~(tap by p.q.bot) ~)
@ -499,11 +527,11 @@
|= [cof=cafe for=mark bem=beam]
^- (bolt hood)
%+ cool |.(leaf/"ford: fade {<[(tope bem)]>}")
%+ cope (make cof [%bake for bem ~])
|= [cof=cafe cay=gage]
%+ cope (cope (make cof [%bake for bem ~]) furl)
|= [cof=cafe cay=cage]
%+ (clef %hood) (fine cof bem(r [%ud 0]) cay)
^- (burg (pair beam gage) hood)
|= [cof=cafe bum=beam cay=gage]
^- (burg (pair beam cage) hood)
|= [cof=cafe bum=beam cay=cage]
:: ~& fade/clef-miss/bem
=+ rul=(fair bum)
?. ?=(@ q.q.cay)
@ -678,12 +706,10 @@
%. [cof kas kos]
;~ cope
;~ coax
|=([cof=cafe p=silk q=silk] (make cof p))
|=([cof=cafe p=silk q=silk] (make cof q))
|=([cof=cafe p=silk q=silk] (cope (make cof p) furl))
|=([cof=cafe p=silk q=silk] (cope (make cof q) furl))
==
|= [cof=cafe cay=gage coy=gage]
?. &(?=(@ p.cay) ?=(@ p.coy))
(flaw cof leaf/"bad join marc: {<p.cay>} {<p.coy>}" ~)
|= [cof=cafe cay=cage coy=cage]
%+ cope (fang cof for)
|= [cof=cafe pro=vase]
?. (slab %grad p.pro)
@ -704,7 +730,7 @@
leaf/"join on data of bad marks: {(trip p.cay)} {(trip p.coy)}"
leaf/"expected mark {(trip u.fom)}"
?: =(q.q.cay q.q.coy)
(fine cof cay)
(fine cof %& cay)
?. (slab %join p.gar)
(flaw cof leaf/"no ++join:grad" ~)
%+ cope
@ -713,8 +739,8 @@
(slop q.cay q.coy)
|= [cof=cafe dif=vase]
?@ q.dif
(fine cof %null dif)
(fine cof u.fom (slot 3 dif))
(fine cof %& %null dif)
(fine cof %& u.fom (slot 3 dif))
==
::
++ mash
@ -723,12 +749,10 @@
%. [cof r.mas r.mos]
;~ cope
;~ coax
|=([cof=cafe p=silk q=silk] (make cof p))
|=([cof=cafe p=silk q=silk] (make cof q))
|=([cof=cafe p=silk q=silk] (cope (make cof p) furl))
|=([cof=cafe p=silk q=silk] (cope (make cof q) furl))
==
|= [cof=cafe cay=gage coy=gage]
?. &(?=(@ p.cay) ?=(@ p.coy))
(flaw cof leaf/"bad mash marc: {<p.cay>} {<p.coy>}" ~)
|= [cof=cafe cay=cage coy=cage]
%+ cope (fang cof for)
|= [cof=cafe pro=vase]
?. (slab %grad p.pro)
@ -750,9 +774,9 @@
leaf/"mash on data of bad marks: {(trip p.cay)} {(trip p.coy)}"
leaf/"expected mark {(trip u.fom)}"
?: =(q.q.cay q.q.coy)
(fine cof cay)
(fine cof %& cay)
?. (slab %mash p.gar)
(fine cof %null [%atom %n] ~)
(fine cof %& %null [%atom %n] ~)
%+ cope
%^ maul cof
(slap (slap pro [%cnzy %grad]) [%cnzy %mash])
@ -763,7 +787,7 @@
q.coy
==
|= [cof=cafe dif=vase]
(fine cof u.fom dif)
(fine cof %& u.fom dif)
==
::
++ kale :: mutate
@ -772,17 +796,18 @@
%+ cope
|- ^- (bolt (list (pair wing vase)))
?~ muy (flue cof)
%+ cope (make cof q.i.muy)
|= [cof=cafe cay=gage]
%+ cope (cope (make cof q.i.muy) furl)
|= [cof=cafe cay=cage]
%+ cope ^$(muy t.muy)
|= [cof=cafe rex=(list (pair wing vase))]
(fine cof [[p.i.muy q.cay] rex])
|= [cof=cafe yom=(list (pair wing vase))]
%+ cope (make cof kas)
|= [cof=cafe cay=gage]
%- tabl-run
|= [cof=cafe cay=cage]
%+ cope (keel cof q.cay yom)
|= [cof=cafe vax=vase]
(fine cof p.cay vax)
(fine cof %& p.cay vax)
::
++ keel :: apply mutations
|= [cof=cafe suh=vase yom=(list (pair wing vase))]
@ -872,13 +897,13 @@
::
++ lear :: load vase
|= [cof=cafe bem=beam]
^- (bolt cage)
^- (bolt gage)
=+ von=(save ~ %cx bem)
?~ von
[p=*cafe q=[%1 [[%x bem ~] ~ ~]]]
?~ u.von
(flaw cof leaf/"lear: file unavailable" (smyt (tope bem)) ~)
(fine cof u.u.von)
(fine cof %& u.u.von)
::
++ lend :: load arch
|= [cof=cafe bem=beam]
@ -929,8 +954,8 @@
%+ cope (lion cof for haz)
|= [cof=cafe wuy=(list ,@tas)]
?~ wuy (flue cof)
%+ cope (make cof %bake i.wuy bem arg)
|= [cof=cafe hoc=gage]
%+ cope (cope (make cof %bake i.wuy bem arg) furl)
|= [cof=cafe hoc=cage]
%+ cope (lope cof i.wuy t.wuy q.hoc)
|= [cof=cafe vax=vase]
((fest bem) cof vax)
@ -1040,12 +1065,12 @@
%. [cof p.kas q.kas]
;~ cope
;~ coax
|=([cof=cafe p=silk q=silk] ^$(cof cof, kas p.kas))
|=([cof=cafe p=silk q=silk] ^$(cof cof, kas q.kas))
==
|=([cof=cafe p=silk q=silk] (cope ^$(cof cof, kas p.kas) furl))
|=([cof=cafe p=silk q=silk] (cope ^$(cof cof, kas q.kas) furl))
== :: XX merge %tabl
::
|= [cof=cafe bor=gage heg=gage] ^- (bolt gage)
[p=cof q=[%0 ~ [%$ (slop q.bor q.heg)]]]
|= [cof=cafe bor=cage heg=cage] ^- (bolt gage)
(faun cof (slop q.bor q.heg))
==
::
%bake
@ -1055,7 +1080,7 @@
|= [cof=cafe vux=(unit vase)]
?~ vux
(flaw cof leaf/"bake failed" (smyt (tope q.kas)) ~)
(fine cof [p.kas u.vux])
(fine cof [%& p.kas u.vux])
::
%boil
^- (bolt gage)
@ -1064,49 +1089,48 @@
|= [cof=cafe bem=beam]
%+ cope (lime cof p.kas bem r.kas)
|= [cof=cafe vax=vase]
(fine cof `gage`[p.kas vax])
(fine cof `gage`[%& p.kas vax])
::
%bunt
%+ cool |.(leaf/"ford: bunt {<p.kas>}")
?: ?=(?(%hoon %hook) p.kas)
(fine cof p.kas [%atom %t] '')
(fine cof %& p.kas [%atom %t] '')
%+ cope (fang cof p.kas)
|= [cof=cafe tux=vase]
(fine cof [p.kas (slot 6 tux)])
(fine cof [%& p.kas (slot 6 tux)])
::
%call
:: %+ cool |.(leaf/"ford: call {<`@p`(mug kas)>}")
%. [cof p.kas q.kas]
;~ cope
;~ coax
|=([cof=cafe p=silk q=silk] ^$(cof cof, kas p))
|=([cof=cafe p=silk q=silk] (cope ^$(cof cof, kas p) furl))
|=([cof=cafe p=silk q=silk] ^$(cof cof, kas q))
==
::
|= [cof=cafe gat=gage sam=gage]
(maul cof q.gat q.sam)
::
|= [cof=cafe vax=vase]
(fine cof %noun vax)
|= [cof=cafe gat=cage sam=gage]
%. [cof sam]
%- tabl-run
|= [cof=cafe sam=cage]
(cope (maul cof q.gat q.sam) faun)
==
::
%cast
%+ cool |.(leaf/"ford: cast {<p.kas>}")
%+ cope $(kas q.kas)
|= [cof=cafe cay=gage]
%- tabl-run
|= [cof=cafe cay=cage]
^- (bolt gage)
%+ cool |.(leaf/"ford: casting {<p.cay>} to {<p.kas>}")
?. ?=(@ p.cay)
(flaw cof leaf/"bad cast marc" ~)
%+ cope (link cof p.kas p.cay q.cay)
|= [cof=cafe vax=vase]
(fine cof [p.kas vax])
(fine cof [%& p.kas vax])
::
%diff
%+ cool |.(leaf/"ford: diff {<`@p`(mug p.kas)>} {<`@p`(mug q.kas)>}")
(diff cof p.kas q.kas)
::
%done [cof %0 p.kas q.kas]
%done [cof %0 p.kas %& q.kas]
%dude (cool |.(p.kas) $(kas q.kas))
%dune
?~ q.kas [cof [%2 p.kas [%leaf "no data"]~]]
@ -1142,46 +1166,44 @@
%+ cool |.(leaf/"ford: pact {<`@p`(mug p.kas)>} {<`@p`(mug q.kas)>}")
(pact cof p.kas q.kas)
::
%plan
%+ cope (abut:(meow p.kas q.kas) cof r.kas)
|= [cof=cafe vax=vase]
(fine cof %noun vax)
::
%reef (fine cof %noun pit)
%plan (cope (abut:(meow p.kas q.kas) cof r.kas) faun)
%reef (faun cof pit)
%ride
%+ cool |.(leaf/"ford: ride {<`@p`(mug kas)>}")
%+ cope $(kas q.kas)
|= [cof=cafe cay=gage]
%- tabl-run
|= [cof=cafe cay=cage]
%+ cope (maim cof q.cay p.kas)
|= [cof=cafe vax=vase]
(fine cof %noun vax)
(faun cof vax)
::
%tabl
%+ cope
|- ^- (bolt (pair (list (pair marc marc)) vase))
?~ p.kas (fine cof ~ *vase)
|- ^- (bolt (list (pair gage gage)))
?~ p.kas (fine cof ~)
%+ cope (make cof p.i.p.kas)
|= [cof=cafe key=gage]
%+ cope (make cof q.i.p.kas)
|= [cof=cafe val=gage]
%+ cope ^^$(p.kas t.p.kas)
|= [cof=cafe rex=(list (pair marc marc)) rey=vase]
(fine cof [[p.key p.val] rex] (slop (slop q.key q.val) rey))
|= [cof=cafe rex=(list (pair marc marc)) rey=vase]
(fine cof [%tabl rex] rey)
|= [cof=cafe rex=(list (pair gage gage))]
(fine cof [[key val] rex])
|= [cof=cafe rex=(list (pair gage gage))]
(fine cof [%tabl rex])
::
%vale
%+ cool |.(leaf/"ford: vale {<p.kas>} {<q.kas>} {<`@p`(mug r.kas)>}")
%+ cope (lave cof p.kas q.kas r.kas)
|= [cof=cafe vax=vase]
(fine cof `cage`[p.kas vax])
(fine cof `gage`[%& p.kas vax])
::
%volt
%+ cool |.(leaf/"ford: volt {<p.q.kas>}")
%+ cope $(kas [%bunt p.q.kas])
|= [cof=cafe cay=gage]
%- tabl-run
|= [cof=cafe cay=cage]
^- (bolt gage)
[cof %0 p.kas p.q.kas p.q.cay q.q.kas]
[cof %0 p.kas %& p.q.kas p.q.cay q.q.kas]
==
::
++ malt :: cached slit
@ -1403,7 +1425,7 @@
(flaw cof [%leaf "type error: {<p.hon>} {<q.hon>}"]~)
(fine cof [p.tug q.vax])
::
%toy (cope (make cof %boil p.hon how ~) feel)
%toy (cope (cope (make cof %boil p.hon how ~) furl) feel)
==
::
++ head :: consume structures
@ -1511,12 +1533,10 @@
%. [cof kas kos]
;~ cope
;~ coax
|=([cof=cafe p=silk q=silk] (make cof p))
|=([cof=cafe p=silk q=silk] (make cof q))
|=([cof=cafe p=silk q=silk] (cope (make cof p) furl))
|=([cof=cafe p=silk q=silk] (cope (make cof q) furl))
==
|= [cof=cafe cay=gage coy=gage]
?. &(?=(@ p.cay) ?=(@ p.coy))
(flaw cof leaf/"bad pact marc" ~)
|= [cof=cafe cay=cage coy=cage] ^- (bolt gage)
?: ?=(?(%hoon %hook) p.cay)
?. ?=(%txt-diff p.coy)
(flaw cof leaf/"{<p.cay>} mark with bad diff type: {<p.coy>}" ~)
@ -1528,7 +1548,7 @@
=- (flaw cof leaf/"{<p.cay>} data with bad diff" -)
[>type=p.q.coy< >shouldbe=-:!>(*(urge cord))< ~]
=+ pac=(role (lurk (lore (cat 3 u.txt '\0a')) u.dif))
(fine cof p.cay [%atom %t] (end 3 (dec (met 3 pac)) pac))
(fine cof %& p.cay [%atom %t] (end 3 (dec (met 3 pac)) pac))
%+ cope (fang cof p.cay)
|= [cof=cafe pro=vase]
?. (slab %grad p.pro)
@ -1557,7 +1577,7 @@
(slap (slap pox [%cnzy %grad]) [%cnzy %pact])
q.coy
|= [cof=cafe pat=vase]
(fine cof p.cay pat)
(fine cof %& p.cay pat)
==
::
++ resp
@ -1622,8 +1642,8 @@
~
::
++ load :: highly forgiving
|= old=axle
..^$(+>- old)
:: |= old=axle
:: ..^$(+>- old)
::=. old
:: ?. ?=([%0 *] old) old :: remove at 1
:: :- %1
@ -1632,12 +1652,13 @@
:: ?> ?=([n=[p=* q=[tad=* dym=* deh=* jav=*]] l=* r=*] +.old)
:: :- [p.n.+.old [tad.q.n.+.old dym.q.n.+.old deh.q.n.+.old ~]]
:: [$(+.old l.+.old) $(+.old r.+.old)]
:: =+ lox=((soft axle) old)
:: ^+ ..^$
:: ?~ lox
:: ~& %ford-reset
:: ..^$
:: ..^$(+>- u.lox)
|= old=*
=+ lox=((soft axle) old)
^+ ..^$
?~ lox
~& %ford-reset
..^$
..^$(+>- u.lox)
::
++ scry
|= [fur=(unit (set monk)) ren=@tas who=ship syd=desk lot=coin tyl=path]

View File

@ -130,9 +130,10 @@
(~(nest ut -:!>(*hide)) %| p:(slot 12 vax))
::
++ mo-boom :: complete new boot
|= [dap=dude pup=scup dep=@uvH gux=(each gage tang)]
|= [dap=dude pup=scup dep=@uvH gux=gage]
^+ +>
?- -.gux
%tabl ~|(%made-tabl !!)
%|
=. +> (mo-bold dap dep)
=. +> (mo-give %onto %| p.gux)
@ -169,13 +170,14 @@
==
::
++ mo-boon :: complete old boot
|= [dap=dude pup=scup dep=@uvH gux=(each gage tang)]
|= [dap=dude pup=scup dep=@uvH gux=gage]
^+ +>
?. (~(has by bum) dap)
~& [%gall-old-boon dap]
+>
=. +> (mo-bold dap dep)
?- -.gux
%tabl ~|(%made-tabl !!)
%| (mo-give %onto %| p.gux)
%& ?> ?=(@ p.p.gux)
ap-abet:(ap-peep:(ap-abed:ap dap [%high [~ our]]) q.p.gux)
@ -321,9 +323,9 @@
num=(slav %ud i.t.t.t.pax)
==
?- -.q.+>.sih
%tabl ~|(%made-tabl !!)
%| (mo-give %mack `p.q.+>.sih) :: XX should crash
%& ?> ?=(@ p.p.q.+>.sih)
=. +>.$ (mo-give %mack ~) :: XX pump should ack
%& =. +>.$ (mo-give %mack ~) :: XX pump should ack
(mo-give(hen (mo-ball him num)) %unto %diff `cage`p.q.+>.sih)
==
::
@ -335,9 +337,9 @@
==
?: ?=([%f %made *] sih)
?- -.q.+>.sih
%tabl ~|(%made-tabl !!)
%| (mo-give %mack `p.q.+>.sih) :: XX should crash
%& ?> ?=(@ p.p.q.+>.sih)
(mo-pass [%sys pax] %g %deal [him our] i.t.t.pax %poke p.q.+>.sih)
%& (mo-pass [%sys pax] %g %deal [him our] i.t.t.pax %poke p.q.+>.sih)
==
?: ?=([%a %woot *] sih) +>.$ :: quit ack, boring
?> ?=([%g %unto *] sih)
@ -805,9 +807,7 @@
^+ +>
=+ cug=(ap-find /lame)
?~ cug
~> %slog.
:- ~
rose/[" " "[" "]"]^[>%ap-lame< >wut< why]
~& [%ap-lame wut why]
+>.$
=^ cam +>.$
%+ ap-call q.u.cug
@ -986,7 +986,6 @@
%merg `%c
%plug `%c
%them `%e
%wait `%t
%want `%a
==
--

View File

@ -9618,7 +9618,6 @@
== ::
++ curd ,[p=@tas q=*] :: typeless card
++ duct (list wire) :: causal history
++ gage (pair marc vase) :: structured cage
++ from ,[ost=bone src=ship] :: forward problem
++ hide :: standard app state
$: $: our=ship :: owner/operator

View File

@ -2475,9 +2475,9 @@
[%call p=silk q=silk] :: slam
[%cast p=mark q=silk] :: translate
[%diff p=silk q=silk] :: diff
[%done p=(set beam) q=gage] :: literal
[%done p=(set beam) q=cage] :: literal
[%dude p=tank q=silk] :: error wrap
[%dune p=(set beam) q=(unit gage)] :: unit literal
[%dune p=(set beam) q=(unit cage)] :: unit literal
[%file p=beam] :: from clay
[%flag p=@uvH q=silk] :: re-apply user deps
[%join p=mark q=silk r=silk] :: merge
@ -2492,8 +2492,13 @@
[%volt p=(set beam) q=(cask ,*)] :: unsafe add type
== ::
::::
++ gage :: recursive cage/tang
$% [%& p=cage] :: success
[%| p=tang] :: error
[%tabl p=(list (pair gage gage))] :: table of results
==
++ gift-ford :: out result <-$
$% [%made p=@uvH q=(each gage tang)] :: computed result
$% [%made p=@uvH q=gage] :: computed result
[%mass p=mass] :: memory usage
[%news ~] :: fresh depends
== ::