When do you choose to type a given function\'s return type as Seq vs Iterable vs Traversable (or alternatively even deeper within Se
Seq
Iterable
Traversable
Se
Make your method's return type as specific as possible. Then if the caller wants to keep it as a SuperSpecializedHashMap or type it as a GenTraversableOnce, they can. This is why the compiler infers the most specific type by default.
SuperSpecializedHashMap
GenTraversableOnce