Snap
Snap copied to clipboard
Dictionaries don't behave like lists
So, when y'all added dictionaries, you took pains (perhaps to make me happy?) to make them look like regular lists, merely extending the domain of ITEM. But when you try to mutate a dictionary, the results don't match what you'd expect from how lists behave. The worst case is
which replaces instead of inserting. I thought maybe that's because the item to be inserted didn't include a key, but this doesn't work either:
That's the worst case because it loses information, but there are other examples in which it's just the order of items in the list that's lost:
See more at https://forum.snap.berkeley.edu/t/replace-block-with-paired-values/16255
You'll say that this behavior doesn't matter for the use cases for dictionaries you have in mind, but I think if they look like lists, they should behave like lists.
Sigh. We talked about this in extenso when we first designed dicts a long time ago, and you were cool about it then.
I think I must not have understood that INSERT would actually do REPLACE.
Both do the same - only - in the case of non-numerical indices