![](https://secure.gravatar.com/avatar/884f97bc8a88bf26f8d7e8c7352a4bc8.jpg?s=120&d=mm&r=g)
I suppose you might be wrong. The distinction between TypedDict literals and ordinary dict literals is still significant. For example, the code shown below is legal for now: ``` def a(b: {'test': int}) -> {'foo': int}: ... ``` Now, with Python 3.11, `{'test': int}` and `{'foo': int}:` are treated as a dict literal, thus `a.__annotations__` is a dict `{'b': {'test': int}, 'return': {'foo': int}}` not any other types nor syntax error. Suppose you want to introduce the TypedDict type-literal. In that case, we must admit the special grammatical case; the literal is interpreted as a type representation when the literal is used as a type annotation. If we allow the particular kind of dict as a type, the above syntactical issue is no longer problematic, but we'll face the destructive changing of the typing system.