mirror of
https://github.com/ilyakooo0/urbit.git
synced 2024-12-15 18:12:47 +03:00
fixy uno~by, other vor-based code duplication
This commit is contained in:
parent
bba8c5adfd
commit
d5d8715b3c
@ -1405,27 +1405,19 @@
|
||||
::
|
||||
+- uni :: union
|
||||
~/ %uni
|
||||
=+ b=a
|
||||
|%
|
||||
+- $
|
||||
|* b=_a
|
||||
?: =(a b) a
|
||||
|- ^+ a
|
||||
?~ b
|
||||
a
|
||||
?~ a
|
||||
b
|
||||
?: (vor n.a n.b)
|
||||
=> ?.((vor n.a n.b) . .(a b, b a))
|
||||
?: =(n.b n.a)
|
||||
[n.b $(a l.a, b l.b) $(a r.a, b r.b)]
|
||||
?: (hor n.b n.a)
|
||||
$(a [n.a $(a l.a, b [n.b l.b ~]) r.a], b r.b)
|
||||
$(a [n.a l.a $(a r.a, b [n.b ~ r.b])], b l.b)
|
||||
?: =(n.a n.b)
|
||||
[n.b $(b l.b, a l.a) $(b r.b, a r.a)]
|
||||
?: (hor n.a n.b)
|
||||
$(b [n.b $(b l.b, a [n.a l.a ~]) r.b], a r.a)
|
||||
$(b [n.b l.b $(b r.b, a [n.a ~ r.a])], a l.a)
|
||||
--
|
||||
::
|
||||
+- wyt :: size of set
|
||||
=< $
|
||||
@ -1568,26 +1560,18 @@
|
||||
::
|
||||
+- int :: intersection
|
||||
~/ %int
|
||||
=+ b=a
|
||||
|%
|
||||
+- $
|
||||
|* b=_a
|
||||
|- ^+ a
|
||||
?~ b
|
||||
~
|
||||
?~ a
|
||||
~
|
||||
?: (vor p.n.a p.n.b)
|
||||
=> ?:((vor p.n.a p.n.b) . .(a b, b a))
|
||||
?: =(p.n.b p.n.a)
|
||||
[n.b $(a l.a, b l.b) $(a r.a, b r.b)]
|
||||
?: (gor p.n.b p.n.a)
|
||||
%- uni(a $(a l.a, b [n.b l.b ~])) $(b r.b)
|
||||
%- uni(a $(a r.a, b [n.b ~ r.b])) $(b l.b)
|
||||
?: =(p.n.a p.n.b)
|
||||
[n.b $(b l.b, a l.a) $(b r.b, a r.a)]
|
||||
?: (gor p.n.a p.n.b)
|
||||
%- uni(a $(b l.b, a [n.a l.a ~])) $(a r.a)
|
||||
%- uni(a $(b r.b, a [n.a ~ r.a])) $(a l.a)
|
||||
--
|
||||
::
|
||||
+- mar :: add with validation
|
||||
|* {b/* c/(unit *)}
|
||||
@ -1656,51 +1640,35 @@
|
||||
::
|
||||
+- uni :: union, merge
|
||||
~/ %uni
|
||||
=+ b=a
|
||||
|%
|
||||
+- $
|
||||
|* b=_a
|
||||
|- ^+ a
|
||||
?~ b
|
||||
a
|
||||
?~ a
|
||||
b
|
||||
?: (vor p.n.a p.n.b)
|
||||
=> ?:((vor p.n.a p.n.b) . .(a b, b a))
|
||||
?: =(p.n.b p.n.a)
|
||||
[n.b $(a l.a, b l.b) $(a r.a, b r.b)]
|
||||
?: (gor p.n.b p.n.a)
|
||||
$(a [n.a $(a l.a, b [n.b l.b ~]) r.a], b r.b)
|
||||
$(a [n.a l.a $(a r.a, b [n.b ~ r.b])], b l.b)
|
||||
?: =(p.n.a p.n.b)
|
||||
[n.b $(b l.b, a l.a) $(b r.b, a r.a)]
|
||||
?: (gor p.n.a p.n.b)
|
||||
$(b [n.b $(b l.b, a [n.a l.a ~]) r.b], a r.a)
|
||||
$(b [n.b l.b $(b r.b, a [n.a ~ r.a])], a l.a)
|
||||
--
|
||||
::
|
||||
+- uno :: general union
|
||||
=+ b=a
|
||||
|%
|
||||
+- $
|
||||
|* meg/$-({* * *} *)
|
||||
|= b=_a
|
||||
|= meg/$-({_p:node _q:node _q:node} _q:node)
|
||||
|- ^+ a
|
||||
?~ b
|
||||
a
|
||||
?~ a
|
||||
b
|
||||
?: (vor p.n.a p.n.b)
|
||||
?: =(p.n.b p.n.a)
|
||||
[n.b $(a l.a, b l.b) $(a r.a, b r.b)]
|
||||
?: (gor p.n.b p.n.a)
|
||||
$(a [n.a $(a l.a, b [n.b l.b ~]) r.a], b r.b)
|
||||
$(a [n.a l.a $(a r.a, b [n.b ~ r.b])], b l.b)
|
||||
=> ?:((vor p.n.a p.n.b) . .(a b, b a))
|
||||
?: =(p.n.a p.n.b)
|
||||
:+ [p.n.a (meg p.n.a q.n.a q.n.b)]
|
||||
$(b l.b, a l.a)
|
||||
$(b r.b, a r.a)
|
||||
?: (gor p.n.a p.n.b)
|
||||
$(b [n.b $(b l.b, a [n.a l.a ~]) r.b], a r.a)
|
||||
$(b [n.b l.b $(b r.b, a [n.a ~ r.a])], a l.a)
|
||||
--
|
||||
$(a [n.a $(a l.a, b [n.b l.b ~]) r.a], b r.b)
|
||||
$(a [n.a l.a $(a r.a, b [n.b ~ r.b])], b l.b)
|
||||
::
|
||||
::
|
||||
+- urn :: apply gate to nodes
|
||||
|
Loading…
Reference in New Issue
Block a user