mirror of
https://github.com/ilyakooo0/urbit.git
synced 2024-09-21 23:47:35 +03:00
annotated merges seem to be working
This commit is contained in:
parent
9e10039dfc
commit
b62bacbf1d
@ -16,6 +16,7 @@
|
||||
[%nice ~]
|
||||
[%rush %tang (list tank)]
|
||||
==
|
||||
++ milk (trel ship desk silk)
|
||||
++ move ,[p=bone q=(mold note gift)]
|
||||
++ note
|
||||
$% $: %c
|
||||
@ -53,7 +54,7 @@
|
||||
[%dune p=(set beam) q=(unit gage)] :: unit literal
|
||||
[%file p=beam] :: from clay
|
||||
[%join p=mark q=silk r=silk] :: merge
|
||||
[%mash p=mark q=silk r=silk] :: merge
|
||||
[%mash p=mark q=milk r=milk] :: merge
|
||||
[%mute p=silk q=(list (pair wing silk))] :: mutant
|
||||
[%pact p=silk q=silk] :: patch
|
||||
[%reef ~] :: kernel reef
|
||||
@ -141,7 +142,7 @@
|
||||
++ work
|
||||
|= sih=sign
|
||||
^+ +>
|
||||
~& > [%working auto=auto gem=gem syd=syd her=her sud=sud]
|
||||
~| [%working auto=auto gem=gem syd=syd her=her sud=sud]
|
||||
?: ?=(%meld gem)
|
||||
?- -.sih
|
||||
%g
|
||||
@ -174,10 +175,12 @@
|
||||
=+ base=[%file [our.hid tic %da lat.hid] (flop pax)]
|
||||
=+ alis=[%file [her sud cas] (flop pax)]
|
||||
=+ bobs=[%file [our.hid syd %da lat.hid] (flop pax)]
|
||||
=+ dali=[%diff base alis]
|
||||
=+ dbob=[%diff base bobs]
|
||||
=+ ^- for=mark
|
||||
=+ (slag (dec (lent pax)) pax)
|
||||
?~(- %$ i.-)
|
||||
[%mash for [%diff base alis] [%diff base bobs]]
|
||||
[%mash for [her sud dali] [our.hid syd dbob]]
|
||||
==
|
||||
=+ "failed to merge with strategy {<p.p.are.sih>}"
|
||||
lose:(spam leaf/- q.p.are.sih)
|
||||
@ -201,7 +204,8 @@
|
||||
=+ ^- tan=(list tank)
|
||||
%- zing
|
||||
^- (list (list tank))
|
||||
:~ :~ leaf/"done setting up scratch space in %{-}"
|
||||
:~ :~ leaf/""
|
||||
leaf/"done setting up scratch space in %{-}"
|
||||
leaf/"please resolve conflicts in the following files and run"
|
||||
leaf/":merge %{(trip syd)} our %{-}"
|
||||
==
|
||||
@ -209,18 +213,19 @@
|
||||
~
|
||||
:~ leaf/""
|
||||
leaf/"annotated conflicts in:"
|
||||
>annotated<
|
||||
>`(list path)`annotated<
|
||||
==
|
||||
?~ unnotated
|
||||
~
|
||||
:~ leaf/""
|
||||
leaf/"some conflicts could not be annontated."
|
||||
leaf/"some conflicts could not be annotated."
|
||||
leaf/"for these, the scratch space contains"
|
||||
leaf/"the most recent common ancestor of the"
|
||||
leaf/"conflicting content."
|
||||
leaf/""
|
||||
|
||||
leaf/"unannotated conflicts in:"
|
||||
>unnotated<
|
||||
>`(list path)`unnotated<
|
||||
==
|
||||
==
|
||||
=< win
|
||||
|
@ -198,17 +198,14 @@
|
||||
++ aver :: read
|
||||
|= mun=mood
|
||||
^- (unit (unit (each cage silk)))
|
||||
~? =(for ~zod) [%avering mun]
|
||||
?: &(=(p.mun %u) !=(p.q.mun now)) :: prevent bad things
|
||||
~& [%clay-fail p.q.mun %now now]
|
||||
!!
|
||||
=+ ezy=?~(ref ~ (~(get by haw.u.ref) mun))
|
||||
?^ ezy
|
||||
`(bind u.ezy (cury same %&))
|
||||
~? =(for ~zod) [%case-to-aeoning mun]
|
||||
=+ nao=(case-to-aeon:ze q.mun)
|
||||
:: ~& [%aver-mun nao [%from syd lim q.mun]]
|
||||
~? =(for ~zod) [%reading-at-aeon mun]
|
||||
?~(nao ~ (read-at-aeon:ze u.nao mun))
|
||||
::
|
||||
++ made-to-tage
|
||||
@ -519,19 +516,19 @@
|
||||
++ take-patch
|
||||
|= res=(each bead (list tank))
|
||||
^+ +>
|
||||
~& > %taking-patch
|
||||
:: ~& %taking-patch
|
||||
?: ?=(%| -.res)
|
||||
%_ +>.$
|
||||
dok ~
|
||||
yel
|
||||
[[hen %note '!' %rose [" " "" ""] leaf/"clay patch failed" p.res] yel]
|
||||
==
|
||||
~& > %editing
|
||||
:: ~& %editing
|
||||
=^ hat +>.$
|
||||
(edit:ze now %& *cart ?~(dok ~|(%no-changes !!) sot.u.dok))
|
||||
~& > %edited
|
||||
:: ~& %edited
|
||||
=. +>.$ wake
|
||||
~& > %woked
|
||||
:: ~& %woked
|
||||
?~ dok ~& %no-dok +>.$
|
||||
?^ lon.u.dok ~& %not-done-diffing !!
|
||||
=>
|
||||
@ -547,7 +544,7 @@
|
||||
?^ lon.u.dok ~& %not-done-diffing !!
|
||||
=+ cay=q.p.res
|
||||
?@ p.cay ~| %patch-bad-marc !!
|
||||
~& > %canning
|
||||
:: ~& %canning
|
||||
=+ ^= can
|
||||
|- ^- (list ,[path cage])
|
||||
?~ p.p.cay
|
||||
@ -565,10 +562,10 @@
|
||||
!!
|
||||
:- ((hard path) -.q.coy)
|
||||
[q.i.p.p.cay (slot 3 coy)]
|
||||
~& > %canned
|
||||
~& > %checking-out
|
||||
:: ~& %canned
|
||||
:: ~& %checking-out
|
||||
=. ank.dom (checkout-ankh:ze (mo can))
|
||||
~& > %checked-out
|
||||
:: ~& %checked-out
|
||||
?~ hez +>.$(dok ~)
|
||||
=+ ^= ceq
|
||||
|= a=miso
|
||||
@ -576,8 +573,8 @@
|
||||
&(?=(%ins -.a) ?=(%mime -.+.a))
|
||||
&(?=(%mut -.a) ?=(%mime -.+>.a))
|
||||
==
|
||||
~& > %forming-ergo
|
||||
=- ~& > %formed-ergo -
|
||||
:: ~& %forming-ergo
|
||||
:: =- ~& %formed-ergo -
|
||||
%_ +>.$
|
||||
dok ~
|
||||
tag :: ?~(hez reg :_(reg [u.hez [%ergo who syd let.dom]]))
|
||||
@ -904,9 +901,9 @@
|
||||
==
|
||||
=+ nao=(case-to-aeon:ze q.p.q.i.xiq)
|
||||
?~ nao $(xiq t.xiq, xaq [i.xiq xaq])
|
||||
~& > %reading-at-aeon
|
||||
:: ~& %reading-at-aeon
|
||||
=+ vid=(read-at-aeon:ze u.nao p.q.i.xiq)
|
||||
~& > %red-at-aeon
|
||||
:: ~& %red-at-aeon
|
||||
?~ vid ~& [%oh-well mood=p.q.i.xiq] $(xiq t.xiq, xaq [i.xiq xaq])
|
||||
$(xiq t.xiq, ..wake (balk p.i.xiq u.vid p.q.i.xiq))
|
||||
::
|
||||
@ -1255,20 +1252,17 @@
|
||||
++ read-x
|
||||
|= [yon=aeon pax=path]
|
||||
^- (unit (unit (each cage silk)))
|
||||
~? =(for ~zod) [%reading-x yon pax]
|
||||
=+ tak=(~(get by hit.dom) yon)
|
||||
?~ tak
|
||||
~
|
||||
?: &(?=(~ ref) =(yon let.dom))
|
||||
`(bind q.ank:(descend-path:(zu ank.dom) pax) (corl (cury same %&) tail))
|
||||
~? =(for ~zod) [%coming-along yon pax]
|
||||
=+ yak=(tako-to-yaki u.tak)
|
||||
=+ lob=(~(get by q.yak) pax)
|
||||
?~ lob
|
||||
[~ ~]
|
||||
=+ mar=(lobe-to-mark u.lob)
|
||||
?. ?=(?(%hoon %hook) mar)
|
||||
~? =(for ~zod) [%not-hooning yon pax]
|
||||
[~ ~ %| (lobe-to-silk pax u.lob)]
|
||||
:^ ~ ~ %&
|
||||
:+ mar [%atom %t]
|
||||
@ -1448,15 +1442,15 @@
|
||||
::
|
||||
%fine
|
||||
?: =(r.ali.dat r.bob.dat)
|
||||
~& > [%fine-trivial ali=<ali> bob=<bob> r.ali.dat r.bob.dat]
|
||||
~& [%fine-trivial ali=<ali> bob=<bob> r.ali.dat r.bob.dat]
|
||||
(done:he ~)
|
||||
?: (~(has in (reachable-takos r.bob.dat)) r.ali.dat)
|
||||
~& > [%fine-mostly-trivial ali=<ali> bob=<bob>]
|
||||
~& [%fine-mostly-trivial ali=<ali> bob=<bob>]
|
||||
(done:he ~)
|
||||
?. (~(has in (reachable-takos r.ali.dat)) r.bob.dat)
|
||||
~& > [%fine-not-so-trivial ali=<ali> bob=<bob>]
|
||||
~& [%fine-not-so-trivial ali=<ali> bob=<bob>]
|
||||
(error:he %bad-fine-merge ~)
|
||||
~& > [%fine-lets-go ali=<ali> bob=<bob>]
|
||||
~& [%fine-lets-go ali=<ali> bob=<bob>]
|
||||
=. new.dat ali.dat
|
||||
=. erg.dat
|
||||
%- mo ^- (list ,[path ?])
|
||||
@ -2203,7 +2197,6 @@
|
||||
++ scry :: inspect
|
||||
|= [fur=(unit (set monk)) ren=@tas his=ship syd=desk lot=coin tyl=path]
|
||||
^- (unit (unit cage))
|
||||
~? =(his ~zod) [%scrying ren syd lot tyl]
|
||||
=+ got=(~(has by fat.ruf) his)
|
||||
=+ luk=?.(?=(%$ -.lot) ~ ((soft case) p.lot))
|
||||
?~ luk [~ ~]
|
||||
|
@ -50,6 +50,7 @@
|
||||
++ kiss :: in request ->$
|
||||
$% [%exec p=@p q=beak r=(unit silk)] :: make / kill
|
||||
== ::
|
||||
++ milk (trel ship desk silk) :: sourced silk
|
||||
++ move ,[p=duct q=(mold note gift)] :: local move
|
||||
++ note :: out request $->
|
||||
$% $: %c :: to %clay
|
||||
@ -73,7 +74,7 @@
|
||||
[%dune p=(set beam) q=(unit gage)] :: unit literal
|
||||
[%file p=beam] :: from clay
|
||||
[%join p=mark q=silk r=silk] :: merge
|
||||
[%mash p=mark q=silk r=silk] :: merge
|
||||
[%mash p=mark q=milk r=milk] :: annotate
|
||||
[%mute p=silk q=(list (pair wing silk))] :: mutant
|
||||
[%pact p=silk q=silk] :: patch
|
||||
[%plan p=beam q=spur r=hood] :: structured assembly
|
||||
@ -710,10 +711,9 @@
|
||||
==
|
||||
::
|
||||
++ mash
|
||||
|= [cof=cafe for=mark kas=silk kos=silk]
|
||||
|= [cof=cafe for=mark mas=milk mos=milk]
|
||||
^- (bolt gage)
|
||||
~& > [%lets-see-if-we-cannae-be-mashing for]
|
||||
%. [cof kas kos]
|
||||
%. [cof r.mas r.mos]
|
||||
;~ cope
|
||||
;~ coax
|
||||
|=([cof=cafe p=silk q=silk] (make cof p))
|
||||
@ -733,7 +733,8 @@
|
||||
=+ too=((soft ,@tas) q:(slap gar [%cnzy %sted]))
|
||||
?~ too
|
||||
(flaw cof leaf/"bad ++sted:grad" ~)
|
||||
(make cof %mash u.too [%done ~ cay] [%done ~ coy])
|
||||
%+ make cof
|
||||
[%mash u.too [p.mas q.mas [%done ~ cay]] [p.mos q.mos [%done ~ coy]]]
|
||||
=+ fom=((soft ,@tas) q:(slap gar [%cnzy %form]))
|
||||
?~ fom
|
||||
(flaw cof leaf/"bad ++form:grad" ~)
|
||||
@ -748,7 +749,12 @@
|
||||
%+ cope
|
||||
%^ maul cof
|
||||
(slap (slap pro [%cnzy %grad]) [%cnzy %mash])
|
||||
(slop q.cay q.coy)
|
||||
;: slop
|
||||
(slop [[%atom %p] p.mas] [[%atom %tas] q.mas])
|
||||
(slop [[%atom %p] p.mos] [[%atom %tas] q.mos])
|
||||
q.cay
|
||||
q.coy
|
||||
==
|
||||
|= [cof=cafe dif=vase]
|
||||
(fine cof u.fom dif)
|
||||
==
|
||||
@ -834,7 +840,7 @@
|
||||
|= [cof=cafe bem=beam]
|
||||
^- (bolt beam)
|
||||
?: ?=(%ud -.r.bem) (fine cof bem)
|
||||
=+ von=(ska ~ %cw bem(s ~))
|
||||
=+ von=(save ~ %cw bem(s ~))
|
||||
?~ von [p=cof q=[%1 [%w bem ~] ~ ~]]
|
||||
(fine cof bem(r [%ud ((hard ,@) +.+:(need u.von))]))
|
||||
::
|
||||
@ -859,14 +865,7 @@
|
||||
++ lear :: load vase
|
||||
|= [cof=cafe bem=beam]
|
||||
^- (bolt cage)
|
||||
~& > [%a-bit-leary bem]
|
||||
=+ ral=(~(get by keg) %cx bem)
|
||||
?^ ral
|
||||
~& > %already-done
|
||||
(fine cof u.ral)
|
||||
~& > %not-already-done
|
||||
=+ von=(ska ~ %cx bem)
|
||||
~& > [%at-least-cx-worked bem]
|
||||
=+ von=(save ~ %cx bem)
|
||||
?~ von
|
||||
[p=*cafe q=[%1 [[%x bem ~] ~ ~]]]
|
||||
?~ u.von
|
||||
@ -876,14 +875,14 @@
|
||||
++ lend :: load arch
|
||||
|= [cof=cafe bem=beam]
|
||||
^- (bolt arch)
|
||||
=+ von=(ska ~ %cy bem)
|
||||
=+ von=(save ~ %cy bem)
|
||||
?~ von [p=cof q=[%1 [%y bem ~] ~ ~]]
|
||||
(fine cof ((hard arch) q.q:(need u.von)))
|
||||
::
|
||||
++ liar :: load vase
|
||||
|= [cof=cafe bem=beam]
|
||||
^- (bolt vase)
|
||||
=+ von=(ska ~ %cx bem)
|
||||
=+ von=(save ~ %cx bem)
|
||||
?~ von
|
||||
[p=*cafe q=[%1 [[%x bem ~] ~ ~]]]
|
||||
?~ u.von
|
||||
@ -1020,7 +1019,7 @@
|
||||
^- (bolt vase)
|
||||
%+ cope (mail cof p.vax gen)
|
||||
|= [cof=cafe typ=type fol=nock]
|
||||
%+ (coup cof) (mock [q.vax fol] (mole (slod (save ska))))
|
||||
%+ (coup cof) (mock [q.vax fol] (mole (slod save)))
|
||||
|=(val=* `vase`[typ val])
|
||||
::
|
||||
++ make :: reduce silk
|
||||
@ -1189,7 +1188,7 @@
|
||||
^- (bolt vase)
|
||||
%+ cope (malt cof p.gat p.sam)
|
||||
|= [cof=cafe typ=type]
|
||||
%+ (coup cof) (mong [q.gat q.sam] (mole (slod (save ska))))
|
||||
%+ (coup cof) (mong [q.gat q.sam] (mole (slod save)))
|
||||
|=(val=* `vase`[typ val])
|
||||
::
|
||||
++ meow :: assemble
|
||||
@ -1557,14 +1556,13 @@
|
||||
exec(q.kig (~(del by q.kig) tik), keg (~(put by keg) [- bem] r.u.rot))
|
||||
::
|
||||
++ save
|
||||
|= sky=sled
|
||||
^- sled
|
||||
|= [(unit (set monk)) tem=term bem=beam]
|
||||
^- (unit (unit cage))
|
||||
=+ (~(get by keg) tem bem)
|
||||
?^ -
|
||||
``u.-
|
||||
(sky +<.$)
|
||||
(ska +<.$)
|
||||
--
|
||||
--
|
||||
::
|
||||
|
@ -13,6 +13,6 @@
|
||||
++ form %mime
|
||||
++ diff |=(mime +<)
|
||||
++ pact |=(mime +<)
|
||||
++ join |=([mime mime] `(unit mime)``+<-)
|
||||
++ join |=([mime mime] `(unit mime)`~)
|
||||
--
|
||||
--
|
||||
|
@ -1,4 +1,4 @@
|
||||
:: maybeze
|
||||
::
|
||||
:::: /hook/door/term-line/mar
|
||||
::
|
||||
/? 314
|
||||
@ -27,6 +27,7 @@
|
||||
::
|
||||
++ pact
|
||||
|= dif=(urge cord)
|
||||
~| [%pacting dif]
|
||||
^- wain
|
||||
(lurk txt dif)
|
||||
::
|
||||
@ -60,6 +61,7 @@
|
||||
|=(cud=(urge cord) [i.bob cud])
|
||||
~
|
||||
==
|
||||
::
|
||||
%|
|
||||
?- -.i.bob
|
||||
%| ~
|
||||
@ -88,8 +90,166 @@
|
||||
--
|
||||
::
|
||||
++ mash
|
||||
|= [ali=(urge cord) bob=(urge cord)]
|
||||
|= [als=[ship desk] bos=[ship desk] ali=(urge cord) bob=(urge cord)]
|
||||
^- (urge cord)
|
||||
(fall (join ali bob) ali)
|
||||
|^
|
||||
=. ali (clean ali)
|
||||
=. bob (clean bob)
|
||||
|- ^- (urge cord)
|
||||
?~ ali bob
|
||||
?~ bob ali
|
||||
?- -.i.ali
|
||||
%&
|
||||
?- -.i.bob
|
||||
%&
|
||||
?: =(p.i.ali p.i.bob)
|
||||
[i.ali $(ali t.ali, bob t.bob)]
|
||||
?: (gth p.i.ali p.i.bob)
|
||||
[i.bob $(p.i.ali (sub p.i.ali p.i.bob), bob t.bob)]
|
||||
[i.ali $(ali t.ali, p.i.bob (sub p.i.bob p.i.ali))]
|
||||
::
|
||||
%|
|
||||
?: =(p.i.ali (lent p.i.bob))
|
||||
[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)]
|
||||
(resolve ali bob)
|
||||
[fic $(ali ali, bob bob)]
|
||||
:: ~ :: here, alice is good for a while, but not for the whole
|
||||
== :: length of bob's changes
|
||||
::
|
||||
%|
|
||||
?- -.i.bob
|
||||
%|
|
||||
=+ ^- [fic=(unce cord) ali=(urge cord) bob=(urge cord)]
|
||||
(resolve ali bob)
|
||||
[fic $(ali ali, bob bob)]
|
||||
::
|
||||
%&
|
||||
?: =(p.i.bob (lent p.i.ali))
|
||||
[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)]
|
||||
(resolve ali bob)
|
||||
[fic $(ali ali, bob bob)]
|
||||
==
|
||||
==
|
||||
::
|
||||
++ annotate :: annotate conflict
|
||||
|= $: ali=(list ,@t)
|
||||
bob=(list ,@t)
|
||||
bas=(list ,@t)
|
||||
==
|
||||
^- (list ,@t)
|
||||
%- zing
|
||||
^- (list (list ,@t))
|
||||
%- flop
|
||||
^- (list (list ,@t))
|
||||
:- :_ ~
|
||||
%^ cat 3 '<<<<<<<<<<<<'
|
||||
%^ cat 3 ' '
|
||||
%^ cat 3 `@t`(scot %p -.bos)
|
||||
%^ cat 3 '/'
|
||||
+.bos
|
||||
:- bob
|
||||
:- ~['------------']
|
||||
:- bas
|
||||
:- ~['++++++++++++']
|
||||
:- ali
|
||||
:- :_ ~
|
||||
%^ cat 3 '>>>>>>>>>>>>'
|
||||
%^ cat 3 ' '
|
||||
%^ cat 3 `@t`(scot %p -.als)
|
||||
%^ cat 3 '/'
|
||||
+.als
|
||||
~
|
||||
::
|
||||
++ clean :: clean
|
||||
|= wig=(urge cord)
|
||||
^- (urge cord)
|
||||
?~ wig ~
|
||||
?~ t.wig wig
|
||||
?: ?=(%& -.i.wig)
|
||||
?: ?=(%& -.i.t.wig)
|
||||
$(wig [[%& (add p.i.wig p.i.t.wig)] t.t.wig])
|
||||
[i.wig $(wig t.wig)]
|
||||
?: ?=(%| -.i.t.wig)
|
||||
$(wig [[%| (welp p.i.wig p.i.t.wig) (welp q.i.wig q.i.t.wig)] t.t.wig])
|
||||
[i.wig $(wig t.wig)]
|
||||
::
|
||||
++ resolve
|
||||
|= [ali=(urge cord) bob=(urge cord)]
|
||||
^- [fic=[%| p=(list cord) q=(list cord)] ali=(urge cord) bob=(urge cord)]
|
||||
=- [[%| bac (annotate alc boc bac)] ali bob]
|
||||
|- ^- $: $: bac=(list cord)
|
||||
alc=(list cord)
|
||||
boc=(list cord)
|
||||
==
|
||||
ali=(urge cord)
|
||||
bob=(urge cord)
|
||||
==
|
||||
?~ ali [[~ ~ ~] ali bob]
|
||||
?~ bob [[~ ~ ~] ali bob]
|
||||
?- -.i.ali
|
||||
%&
|
||||
?- -.i.bob
|
||||
%& [[~ ~ ~] ali bob] :: no conflict
|
||||
%|
|
||||
=+ lob=(lent p.i.bob)
|
||||
?: =(lob p.i.ali)
|
||||
[[p.i.bob p.i.bob q.i.bob] t.ali t.bob]
|
||||
?: (lth lob p.i.ali)
|
||||
[[p.i.bob p.i.bob q.i.bob] [[%& (sub p.i.ali lob)] t.ali] t.bob]
|
||||
=+ wat=(scag (sub lob p.i.ali) p.i.bob)
|
||||
=+ res=$(ali t.ali, bob [[%| (scag (sub lob p.i.ali) p.i.bob) ~] t.bob])
|
||||
:* :* (welp bac.res wat)
|
||||
(welp alc.res wat)
|
||||
(welp boc.res q.i.bob)
|
||||
==
|
||||
ali.res
|
||||
bob.res
|
||||
==
|
||||
==
|
||||
::
|
||||
%|
|
||||
?- -.i.bob
|
||||
%&
|
||||
=+ loa=(lent p.i.ali)
|
||||
?: =(loa p.i.bob)
|
||||
[[p.i.ali q.i.ali p.i.ali] t.ali t.bob]
|
||||
?: (lth loa p.i.bob)
|
||||
[[p.i.ali q.i.ali p.i.ali] t.ali [[%& (sub p.i.bob loa)] t.bob]]
|
||||
=+ wat=(slag (sub loa p.i.bob) p.i.ali)
|
||||
=+ res=$(ali [[%| (scag (sub loa p.i.bob) p.i.ali) ~] t.ali], bob t.bob)
|
||||
:* :* (welp bac.res wat)
|
||||
(welp alc.res q.i.ali)
|
||||
(welp boc.res wat)
|
||||
==
|
||||
ali.res
|
||||
bob.res
|
||||
==
|
||||
::
|
||||
%|
|
||||
=+ loa=(lent p.i.ali)
|
||||
=+ lob=(lent p.i.bob)
|
||||
?: =(loa lob)
|
||||
[[p.i.ali q.i.ali q.i.bob] t.ali t.bob]
|
||||
=+ ^= res
|
||||
?: (gth loa lob)
|
||||
$(ali [[%| (scag (sub loa lob) p.i.ali) ~] t.ali], bob t.bob)
|
||||
~& [%scagging loa=loa pibob=p.i.bob slag=(scag loa p.i.bob)]
|
||||
$(ali t.ali, bob [[%| (scag (sub lob loa) p.i.bob) ~] t.bob])
|
||||
:* :* (welp bac.res ?:((gth loa lob) p.i.bob p.i.ali))
|
||||
(welp alc.res q.i.ali)
|
||||
(welp boc.res q.i.bob)
|
||||
==
|
||||
ali.res
|
||||
bob.res
|
||||
==
|
||||
==
|
||||
==
|
||||
--
|
||||
--
|
||||
--
|
||||
|
Loading…
Reference in New Issue
Block a user