isEqual (x :: t^) a = x == a
isEqual _ _ = False
+//isEqual`:: Dynamic Dynamic -> Bool | Set t
+//isEqual` (x :: t^) (y :: t^) = x == y
+//isEqual` _ _ = False
+
+isEqual`` :: Dynamic Dynamic -> Bool
+isEqual`` x y = (fromJust(fromDynamic x)) == (fromJust(fromDynamic y))
+
class Set a | TC, ==, toString a
:: Set = Set [Dynamic]
intersection :: Set Set -> Set
intersection (Set []) bs = bs
intersection as (Set []) = as
-intersection (Set [a:as]) (Set [(b::t):bs]) = Set [a \\ a <- as | not (dynMemberOfSet a (Set bs))]
+intersection (Set [a:as]) (Set bs) = Set [a \\ a <- as | not (dynMemberOfSet a (Set bs))]
without :: Set Set -> Set
without a b = abort "without nog niet geimplementeerd.\n"