<div dir="ltr"><div><div><div>There is a PR implementing typing ABC cache optimization: <a href="https://github.com/python/typing/pull/383">https://github.com/python/typing/pull/383</a><br><br>The main idea is straightforward: subscripted generic ABCs like Iterable[int], Iterable[str], etc. should not have separate ABC caches (positive and negative), since they all are equivalent to plain Iterable at runtime.<br><br>It is proposed that they will share their caches with a parent ABC from abc module for abstract collections, or with original (unsubscripted) class generic for concrete classes.<br><br></div>Inada-san confirmed that this optimization reduces the memory footprint.<br>I will be grateful for a code review.<br><br></div>Best regards,<br></div>Ivan<br></div>