Mgmt here
Dunno, but this example doesn't look strange to me at all. The rule is very straightforward and does not break any aspect of legacy uses in existing projects:
If you use a numerical index - as is suggested by the oval input slot - it's a numerical index, just like it always has been. if you use anything else that is not a number it is not used as index but instead as a key in an equality dictionary.
That's it. Don't fret about the language. Of course the words "insert" and "replace" don't fit, we know. Both those blocks end up doing the exact same thing when used with non-numerical indices: They associate a value with a key, and in doing so make sure the key is unique. And no, keys and indices are not and never will be the same, nor will it make sense to use them interchangeably, just as using linked and arrayed lists interchangeably is not good pedagogy.
Why did we do that? 2 Reasons: Because we've been implored by professors and teachers to find a way that lets them teach "objects" and "dictionaries" in Snap without having to use a library, and so we can refer to imported data fields by their names instead of counting columns or indices in sub-lists. To me, personally, who cares deeply about objects, the first request isn't even important. Almost nobody gets OOP right, and abusing dictionaries for ad-hoc ADTs or "objects" is as questionable as it has become commonplace. But the other way, the one that lets us explore tables and data sets by their fields and column names is a major step towards making a lot of existing exercises and examples more accessible, by taking away the need for numbers everywhere and instead letting learners use names. Never forget that when kids learn about variables the concept of giving a thing a name is not just powerful, but also a consolation for everyone who has had bad experiences in Maths: CS is their chance to get even with STEM.
If you don't like the new feature, just pretend it's not there. The blocks look the same as always and they can be used the same as always by simply using numbers inside every oval input slot. Just now there's also another way to use them that formerly didn't do anything at all.