<div dir="ltr">Those are great articles.  One thing that Andrew does recommend would be to standardize the interface to the sorted containers, and add them to collections.abc as SortedDict, and SortedSet.<div><br></div><div>I recently switched from blist to sortedcontainers and it would be nice to have these standardized going forward.</div><div><br></div><div>Another reason to standardize them is for use with the new type checking.</div><div><br></div><div>Best,</div><div><br></div><div>Neil<br><div><br>On Thursday, October 13, 2016 at 5:54:09 PM UTC-4, Serhiy Storchaka wrote:<blockquote class="gmail_quote" style="margin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">On 13.10.16 23:36, Марк Коренберг wrote:<br>> I think it should be one standardized implementation of such containers<br>> in CPython.<br>><br>> For example, C++ has both ordered_map and unorderd_map.<br>><br>> Instead of trees, implementation may use SkipList structure, but this is<br>> just implementation details.<br>><br>> Such structres imply fast insertion and deletion, ability to iterate,<br>> and also memory efficiency.<p>I recommend to read thorough review articles written by Andrew Barnert:</p><p><a href="http://stupidpythonideas.blogspot.com/2013/07/sorted-collections-in-stdlib.html" target="_blank" rel="nofollow" onmousedown="this.href='http://www.google.com/url?q\x3dhttp%3A%2F%2Fstupidpythonideas.blogspot.com%2F2013%2F07%2Fsorted-collections-in-stdlib.html\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNE8CRceakYCwTf8zBg1YL0P3p8yhA';return true;" onclick="this.href='http://www.google.com/url?q\x3dhttp%3A%2F%2Fstupidpythonideas.blogspot.com%2F2013%2F07%2Fsorted-collections-in-stdlib.html\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNE8CRceakYCwTf8zBg1YL0P3p8yhA';return true;">http://stupidpythonideas.<wbr>blogspot.com/2013/07/sorted-<wbr>collections-in-stdlib.html</a></p><p><a href="http://stupidpythonideas.blogspot.com/2014/04/sortedcontainers.html" target="_blank" rel="nofollow" onmousedown="this.href='http://www.google.com/url?q\x3dhttp%3A%2F%2Fstupidpythonideas.blogspot.com%2F2014%2F04%2Fsortedcontainers.html\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNG2Ah7pgMDFdUG239FVgDEMuFE0Jw';return true;" onclick="this.href='http://www.google.com/url?q\x3dhttp%3A%2F%2Fstupidpythonideas.blogspot.com%2F2014%2F04%2Fsortedcontainers.html\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNG2Ah7pgMDFdUG239FVgDEMuFE0Jw';return true;">http://stupidpythonideas.<wbr>blogspot.com/2014/04/<wbr>sortedcontainers.html</a></p><p><br>______________________________<wbr>_________________<br>Python-ideas mailing list<br><a href="javascript:" target="_blank" gdf-obfuscated-mailto="GcCctq91AgAJ" rel="nofollow" onmousedown="this.href='javascript:';return true;" onclick="this.href='javascript:';return true;">Python...@python.org</a><br><a href="https://mail.python.org/mailman/listinfo/python-ideas" target="_blank" rel="nofollow" onmousedown="this.href='https://www.google.com/url?q\x3dhttps%3A%2F%2Fmail.python.org%2Fmailman%2Flistinfo%2Fpython-ideas\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFj1EaNHnVmh20FnFPoUi4J-MpfQw';return true;" onclick="this.href='https://www.google.com/url?q\x3dhttps%3A%2F%2Fmail.python.org%2Fmailman%2Flistinfo%2Fpython-ideas\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNFj1EaNHnVmh20FnFPoUi4J-MpfQw';return true;">https://mail.python.org/<wbr>mailman/listinfo/python-ideas</a><br>Code of Conduct: <a href="http://python.org/psf/codeofconduct/" target="_blank" rel="nofollow" onmousedown="this.href='http://www.google.com/url?q\x3dhttp%3A%2F%2Fpython.org%2Fpsf%2Fcodeofconduct%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHJOrArSUDKkjrnthO6_CznMzkPsA';return true;" onclick="this.href='http://www.google.com/url?q\x3dhttp%3A%2F%2Fpython.org%2Fpsf%2Fcodeofconduct%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNHJOrArSUDKkjrnthO6_CznMzkPsA';return true;">http://python.org/psf/<wbr>codeofconduct/</a></p><p></p><p></p><p></p></blockquote></div></div></div>