This trait provides a limited interface, only allowing reading of elements.
There are two extensions of this trait, in packages
scala.collection.mutable
and
scala.collection.immutable, which provide functionality for
adding new key/value mappings to a map. The trait in the first package is
for maps that are modified destructively, whereas the trait in
the second package is for immutable maps which create a new map
when something is added or removed from them.

This trait provides a limited interface, only allowing reading of elements.
There are two extensions of this trait, in packages
scala.collection.mutable
and
scala.collection.immutable, which provide functionality for
adding and removing objects from the set. The trait in the first package is
for sets that are modified destructively, whereas the trait in
the second package is for immutable sets which create a new set
when something is added or removed to them.