urbit/gen/hood/merge.hoon

36 lines
939 B
Plaintext
Raw Normal View History

2015-05-12 03:31:37 +03:00
::
2015-09-12 00:15:25 +03:00
:::: /hoon/merge/hood/gen
2015-05-12 03:31:37 +03:00
::
/? 314
2015-07-31 01:32:06 +03:00
!:
|%
++ beaky ,[span span span ~]
++ sorc ?([bek=beaky ~] [her=@p sud=@tas ~])
--
2015-05-12 03:31:37 +03:00
::
::::
!:
2015-09-12 03:24:51 +03:00
:- %say
2015-07-31 01:32:06 +03:00
|= $: [now=@da eny=@uvI bek=beak]
2016-01-07 01:08:46 +03:00
[arg=[?(sorc [syd=$|(desk beaky) sorc])] cas=case gem=?(%auto germ)]
2015-05-12 03:31:37 +03:00
==
2016-01-13 23:48:20 +03:00
=. cas ?:(=(*case cas) da/now cas)
2015-07-31 01:32:06 +03:00
=* our p.bek
|^ :- %kiln-merge
2016-01-07 01:08:46 +03:00
^- [syd=desk her=ship sud=desk cas=case gem=?(%auto germ)]
2015-07-31 01:32:06 +03:00
?- arg
2016-01-07 01:08:46 +03:00
[@ @ ~] =+(arg [sud ?.(=(our her) her (sein her)) sud cas gem])
[^ ~] =+ (pars bek.arg)
[dez ?.(=(our who) who (sein who)) dez cas gem]
[* @ @ ~] [(pars-src syd.arg) =+(arg [her sud cas gem])]
[* ^ ~] [(pars-src syd.arg) =+((pars bek.arg) [who dez cas gem])]
2015-07-31 01:32:06 +03:00
==
++ pars |=(a=beaky =+((need (tome a)) `[who=ship dez=desk]`[p q]))
++ pars-src
|= syd=$|(desk beaky)
?@ syd syd
=+ (pars syd)
~| [%into-foreign who `path`syd]
?>(=(our who) dez)
--