But there are also other optimizations in the current set
implementation, so "fine, add the doubly linked list to sets but not
to dicts" is only part of it.
Which may or may not be possible to match, let alone beat, in an
ordered set implementation. A practical barrier now is that Python is
too mature to bank on loving optimizations _after_ a change to a core
feature is released. It's going to need a highly polished
implementation first.
Starting with "collections.OrderedSet" seems like a reasonable idea, though - that way "like a built-in set, but insertion order preserving" will have an obvious and readily available answer, and it should also make performance comparisons easier.
Cheers,
Nick.
______________________________