> Need to iterate over a collection of things?

Iterable[T]

> Want to create a data object that maps any hashable type to just about anything else?

Mapping[T, U]

Beyond the advantage that a type-checker/linter can tell if you're doing the right thing when writing those functions, it lets an IDE infer what type you're iterating over, in order to provide more support/completion/hinting/checks (without recursively analyzing arbitrary code, so: 'instantly' vs 'maybe not ever).