setops.osen
/union :
(
{
(
/left,
(
(
/right,
(/left) /o/get/addresses
) /o/gather,
1
) /o/nth
) /o/concat/elems
},
[ "/left", "/right" ]
) /o/defn,
/intersection :
(
{
(
(
(
/left,
(
(
(
/right,
(/left) /o/get/addresses
) /o/gather,
0
) /o/nth
) /o/get/addresses
) /o/gather,
0
) /o/nth
) /o/bundleitem/tobundleelem
},
[ "/left", "/right" ]
) /o/defn,
/difference :
(
{
(
(
(
/left,
(/right) /o/get/addresses
) /o/gather,
1
) /o/nth,
(
(
/right,
(/left) /o/get/addresses
) /o/gather,
1
) /o/nth
) /o/concat/elems
},
[ "/left", "/right" ]
) /o/defn
,
/a : (/x : 1, /y : 2),
/b : (/y : 3, /z : 4),
(/a, /b) /union,
(/a, /b) /intersection,
(/a, /b) /difference