From aa3f43c00d9342fb511618509a9d38c5ab0a5f23 Mon Sep 17 00:00:00 2001 From: Joe Bryan Date: Mon, 27 Aug 2018 14:56:45 -0700 Subject: [PATCH] Revert "fixy uno~by, other vor-based code duplication" This reverts commit d5d8715b3c9325cdb89ea3f95cec9a1be4b62d75. --- sys/hoon.hoon | 66 ++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 49 insertions(+), 17 deletions(-) diff --git a/sys/hoon.hoon b/sys/hoon.hoon index 6a2f58930..5a824a294 100644 --- a/sys/hoon.hoon +++ b/sys/hoon.hoon @@ -1415,19 +1415,27 @@ :: +- uni :: union ~/ %uni - |* b=_a - ?: =(a b) a - |- ^+ a - ?~ b - a - ?~ a - b - => ?.((vor n.a n.b) . .(a b, b a)) + =+ b=a + |% + +- $ + ?: =(a b) a + |- ^+ a + ?~ b + a + ?~ a + b + ?: (vor n.a n.b) ?: =(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 =< $ @@ -1570,18 +1578,26 @@ :: +- int :: intersection ~/ %int - |* b=_a + =+ b=a + |% + +- $ |- ^+ a ?~ b ~ ?~ a ~ - => ?:((vor p.n.a p.n.b) . .(a b, b a)) + ?: (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) %- 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 *)} @@ -1650,35 +1666,51 @@ :: +- uni :: union, merge ~/ %uni - |* b=_a + =+ b=a + |% + +- $ |- ^+ a ?~ b a ?~ a b - => ?:((vor p.n.a p.n.b) . .(a b, b a)) + ?: (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) + ?: =(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/$-({_p:node _q:node _q:node} _q:node) + =+ b=a + |% + +- $ + |* meg/$-({* * *} *) |- ^+ a ?~ b a ?~ a b - => ?:((vor p.n.a p.n.b) . .(a b, b a)) + ?: (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) ?: =(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) - $(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) + $(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) + -- :: :: +- urn :: apply gate to nodes