The built-in set and frozenset types were designed based
on lessons learned from the sets module. The key differences are:
Set and ImmutableSet were renamed to set and
frozenset.
There is no equivalent to BaseSet. Instead, use
isinstance(x, (set, frozenset)).
The hash algorithm for the built-ins performs significantly better
(fewer collisions) for most datasets.
The built-in versions have more space efficient pickles.
The built-in versions do not have a union_update() method.
Instead, use the update() method which is equivalent.
The built-in versions do not have a _repr(sorted=True) method.
Instead, use the built-in repr() and sorted()
functions: repr(sorted(s)).
The built-in version does not have a protocol for automatic conversion
to immutable. Many found this feature to be confusing and no one
in the community reported having found real uses for it.