Starting the funset exercise.
newEmpty :: Set a
add :: Eq a -> Set a -> a -> Set a
contains :: Set a -> a -> Bool
singleton :: Eq a => a -> Set a
union :: Set a -> Set a -> Set a
intersect :: Set a -> Set a -> Set a
diff :: Set a -> Set a -> Set a
filter' :: (a -> Bool) -> Set a -> Set a
Adding map' to the list of implementations.
remove :: Eq a => a -> Set a -> Set a
set :: Eq a => [a] -> Set a
Simplifying set using add
Using no space between lambda and the first param
Using contains for add definition
commit to amend, not stable.
new function to develop
unstable commit to amend
Rewrite the base case appropriately
map' :: (Enum a, Num a, Eq a, Eq b) -> (a -> b) -> Set a -> Set b