<div dir="ltr"><div class="gmail_quote">On Sun Feb 08 2015 at 12:34:48 AM Neil Girdhar <<a href="mailto:mistersheik@gmail.com">mistersheik@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">If it were called UniqueList, I would agree with you.  Since it's called OrderedSet, I expect it to use the same operations as set.</div></blockquote><div><br></div><div>I agree, and with that in mind, it seems wrong for it to redefine what "union" means.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"> Also, typically I implement something using set and then after the fact realize that I need ordering.  I then change the declaration to OrderedSet.  With your solution, I would have to also change | and |= to + and +=.  I feel that update should remain equivalent to |= rather than switching to +=,</div></blockquote><div><br></div><div>That's a convenient case if you happened to |= other sets (which you also had to change to OrderedSet) in in the correct order already, but if you didn't or you wanted some particular interesting ordering or you were getting your sets to add from somewhere that didn't deal in OrderedSets, you'd have to change that part of your program to support ordering anyway.</div><div><br></div><div>On the other hand, if you were .update()ing directly from some other ordered iterable, you wouldn't have to change anything. :)</div><div><br></div><div>Ed Kellett</div></div></div>