This commit is contained in:
Philip C Monk 2015-02-11 20:41:05 -05:00
parent 0e128a1a3e
commit 428aaa0674
2 changed files with 92 additions and 72 deletions

View File

@ -297,7 +297,9 @@
++ echo :: announce changes ++ echo :: announce changes
|= [wen=@da mim=(map path mime) lem=nori] |= [wen=@da mim=(map path mime) lem=nori]
^+ +> ^+ +>
=. yel ~& [%echoing syd]
%_ +>.$
yel
=+ pre=`path`~[(scot %p for) syd (scot %ud let.dom)] =+ pre=`path`~[(scot %p for) syd (scot %ud let.dom)]
?- -.lem ?- -.lem
| :_ yel | :_ yel
@ -310,39 +312,6 @@
?-(-.q.i.q.p.lem %del '-', %ins '+', %mut ':', %dif ';') ?-(-.q.i.q.p.lem %del '-', %ins '+', %mut ':', %dif ';')
[%leaf (spud (weld pre p.i.q.p.lem))] [%leaf (spud (weld pre p.i.q.p.lem))]
== ==
?~ hez +>.$
?. ?=(%& -.lem) +>.$
=+ ^= ceq
|= a=miso
?| ?=(%del -.a)
&(?=(%ins -.a) ?=(%mime -.+.a))
&(?=(%mut -.a) ?=(%mime -.+>.a))
==
=. wok
:+ ~
%+ murn `(list ,[path miso])`q.p.lem
|= [a=path b=miso]
?: ?=(%del -.b) (some a ~)
(bind (~(get by mim) a) |=(c=mime [a (some c)]))
%+ murn `(list ,[path miso])`q.p.lem
|=([a=path b=miso] ?:((ceq b) ~ (some a)))
?> ?=(^ wok)
?~ lon.u.wok
apply-ergo
%_ +>.$
tag :: ?~(hez reg :_(reg [u.hez [%ergo who syd let.dom]]))
%- welp :_ tag
^- (list ,[duct path note])
%+ murn `(list ,[path miso])`q.p.lem
|= [a=path b=miso]
?: (ceq b)
~
%- some
:+ u.hez
[%ergoing (scot %p who) syd a]
:* %f %exec who ~ %cast %mime %done ~
~|(%bad-echo (need (read:ze %x [%ud let.dom] a)))
==
== ==
:: ::
++ edit :: apply changes ++ edit :: apply changes
@ -356,7 +325,7 @@
+>.$ +>.$
(echo:(checkout-ankh u.hat) wen ~ lem) (echo:(checkout-ankh u.hat) wen ~ lem)
?. =(~ dok) ?. =(~ dok)
~& %already-applying-changes !! ~& %already-applying-changes +>
=+ ^= sop =+ ^= sop
|= [a=path b=miso] |= [a=path b=miso]
^- ? ^- ?
@ -432,16 +401,14 @@
++ apply-edit ++ apply-edit
|= wen=@da |= wen=@da
^+ +> ^+ +>
=^ hat +>.$ ~& [%applying-edit syd]
(edit:ze wen %& *cart ?~(dok ~|(%no-changes !!) sot.u.dok)) =+ ^= hat
(edit:ze wen %& *cart ?~(dok ~|(%no-changes !!) sot.u.dok))
?~ dok ~& %no-changes !! ?~ dok ~& %no-changes !!
?^ lon.u.dok ~& %not-done-diffing !! ?^ lon.u.dok ~& %not-done-diffing !!
?~ hat ?~ -.hat
(echo(dok ~) wen mim.u.dok %& *cart sot.u.dok) ([echo(dok ~)]:.(+>.$ +.hat) wen mim.u.dok %& *cart sot.u.dok)
%^ echo:(checkout-ankh(dok ~) u.hat) (checkout-ankh u.-.hat)
wen
mim.u.dok
[%& *cart sot.u.dok]
:: ::
++ apply-ergo ++ apply-ergo
^+ . ^+ .
@ -516,33 +483,81 @@
++ take-patch ++ take-patch
|= res=(each bead (list tank)) |= res=(each bead (list tank))
^+ +> ^+ +>
~& [%taking-patch syd]
?: ?=(%| -.res) ?: ?=(%| -.res)
%_ +>.$ %_ +>.$
dok ~
yel yel
[[hen %note '!' %rose [" " "" ""] leaf/"clay patch failed" p.res] yel] [[hen %note '!' %rose [" " "" ""] leaf/"clay patch failed" p.res] yel]
== ==
=^ hat +>.$
(edit:ze now %& *cart ?~(dok ~|(%no-changes !!) sot.u.dok))
?~ dok ~& %no-dok +>.$
?^ lon.u.dok ~& %not-done-diffing !!
=>
%= .
+>.$
?< ?=(~ hat)
%^ echo:(checkout-ankh u.hat)
now
mim.u.dok
[%& *cart sot.u.dok]
==
?~ dok ~& %no-dok +>.$
?^ lon.u.dok ~& %not-done-diffing !!
=+ cay=q.p.res
?@ p.cay ~| %patch-bad-marc !!
=+ ^= 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)]
=. ank.dom (checkout-ankh:ze (mo can))
?~ hez +>.$(dok ~)
=+ ^= ceq
|= a=miso
?| ?=(%del -.a)
&(?=(%ins -.a) ?=(%mime -.+.a))
&(?=(%mut -.a) ?=(%mime -.+>.a))
==
=. wok
:+ ~
%+ murn sot.u.dok
|= [a=path b=miso]
?: ?=(%del -.b) (some a ~)
(bind (~(get by mim.u.dok) a) |=(c=mime [a (some c)]))
%+ murn sot.u.dok
|=([a=path b=miso] ?:((ceq b) ~ (some a)))
?> ?=(^ wok)
?~ lon.u.wok
apply-ergo(dok ~)
%_ +>.$ %_ +>.$
ank.dom dok ~
=+ cay=q.p.res tag :: ?~(hez reg :_(reg [u.hez [%ergo who syd let.dom]]))
?@ p.cay ~| %patch-bad-marc !! %- welp :_ tag
%- checkout-ankh:ze ^- (list ,[duct path note])
%- mo %+ murn sot.u.dok
|- ^- (list ,[path cage]) |= [a=path b=miso]
?~ p.p.cay ?: (ceq b)
~ ~
:_ %_($ cay [[%tabl t.p.p.cay] (slot 3 q.cay)]) %- some
?. ?=(%path p.i.p.p.cay) :+ u.hez
~| %patch-strange-marc-a [%ergoing (scot %p who) syd a]
!! :* %f %exec who ~ %cast %mime %done ~
?. ?=(@ q.i.p.p.cay) ~|((crip <[%bad-echo syd let.dom a]>) (need (read:ze %x [%ud let.dom] a)))
~| %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)]
== ==
:: ::
++ take-ergo ++ take-ergo
@ -769,8 +784,8 @@
(blab p.i.xiq p.q.i.xiq u.u.cas) (blab p.i.xiq p.q.i.xiq u.u.cas)
== ==
=+ nao=(case-to-aeon:ze q.p.q.i.xiq) =+ nao=(case-to-aeon:ze q.p.q.i.xiq)
?~ nao $(xiq t.xiq, xaq [i.xiq xaq]) ?~ nao ~& [%not-waking syd] $(xiq t.xiq, xaq [i.xiq xaq])
$(xiq t.xiq, ..wake (balk p.i.xiq u.nao p.q.i.xiq)) ~& [%waking syd] $(xiq t.xiq, ..wake (balk p.i.xiq u.nao p.q.i.xiq))
:: ::
| |
=+ mot=`moot`p.q.i.xiq =+ mot=`moot`p.q.i.xiq
@ -842,7 +857,8 @@
|= [[pat=path gar=lobe] bat=(map path blob)] |= [[pat=path gar=lobe] bat=(map path blob)]
?: (~(has in sar) pat) :: has update ?: (~(has in sar) pat) :: has update
bat bat
(~(put by bat) pat (lobe-to-blob gar)) :: use original %+ ~(put by bat) pat
~|((crip <pat gar (lent (~(tap by lat.ran)))>) (lobe-to-blob gar)) :: use original
^= bar ^- (map path blob) ^= bar ^- (map path blob)
%+ roll lar %+ roll lar
|= [[pat=path mys=misu] bar=(map path blob)] |= [[pat=path mys=misu] bar=(map path blob)]
@ -1012,7 +1028,10 @@
++ make-nako :: gack a through b ++ make-nako :: gack a through b
|= [a=aeon b=aeon] |= [a=aeon b=aeon]
^- [(map aeon tako) aeon (set yaki) (set blob)] ^- [(map aeon tako) aeon (set yaki) (set blob)]
!! :^ hit.dom
let.dom
(sa `(list yaki)`(turn (~(tap by hut.ran)) |=([tako yaki] +<+)))
(sa `(list blob)`(turn (~(tap by lat.ran)) |=([lobe blob] +<+)))
:: ::
++ query :: query:ze ++ query :: query:ze
|= ren=?(%u %v %x %y %z) :: endpoint query |= ren=?(%u %v %x %y %z) :: endpoint query
@ -1068,7 +1087,8 @@
|= [lag=(map path blob) sta=(map lobe blob)] :: fix lat |= [lag=(map path blob) sta=(map lobe blob)] :: fix lat
^- [(map lobe blob) (map path lobe)] ^- [(map lobe blob) (map path lobe)]
%+ roll (~(tap by lag) ~) %+ roll (~(tap by lag) ~)
|= [[pat=path bar=blob] [lut=_sta gar=(map path lobe)]] =< .(lut sta)
|= [[pat=path bar=blob] [lut=(map lobe blob) gar=(map path lobe)]]
?~ (~(has by lut) p.bar) ?~ (~(has by lut) p.bar)
[lut (~(put by gar) pat p.bar)] [lut (~(put by gar) pat p.bar)]
:- (~(put by lut) p.bar bar) :- (~(put by lut) p.bar bar)

View File

@ -113,11 +113,11 @@
;~ pose ;~ pose
(stag %run ;~(plug (star ;~(sfix (task(tol %0) bar) ace)) (task col))) (stag %run ;~(plug (star ;~(sfix (task(tol %0) bar) ace)) (task col)))
(stag %end ;~(pfix col sem ;~(pose (stag %& dem) (stag %| sym)))) (stag %end ;~(pfix col sem ;~(pose (stag %& dem) (stag %| sym))))
(stag %del ;~(pfix hep ace loca)) :: (stag %del ;~(pfix hep ace loca))
(stag %mut ;~(pfix col ace ;~(plug loca expg))) :: (stag %mut ;~(pfix col ace ;~(plug loca expg)))
(stag %ins ;~(pfix lus ace ;~(plug loca (opts expg)))) :: (stag %ins ;~(pfix lus ace ;~(plug loca (opts expg))))
(stag %help ;~(pfix wut ace ;~(pfix col sym))) (stag %help ;~(pfix wut ace ;~(pfix col sym)))
(stag %path (full ;~(sfix loca(pax paf) (star ace)))) :: (stag %path (full ;~(sfix loca(pax paf) (star ace))))
(stag %var ;~(plug ;~(pfix tis sym) expg)) (stag %var ;~(plug ;~(pfix tis sym) expg))
(stag %rvar ;~(pfix ;~(plug tis tis) sym)) (stag %rvar ;~(pfix ;~(plug tis tis) sym))
(stag %hoon expr) (stag %hoon expr)