Looking at PEP 484, I came up with two use cases that I felt were not
1. Specifying that a parameter should be a subclass of another
(example: Type[dict] would match dict or OrderedDict; plain "Type"
would equal "type" from builtins)
2. Specifying that a callable should take at least the specified
arguments but would not be limited to them: Callable[[str, int,
Case #2 works already (Callable[[str, int], Any] if the unspecified
arguments are optional, but not if they're mandatory. Any thoughts?