At the very least, if setting the nil key of a Dictionary causes unpredictable problems, SC should raise an error. This was quite a puzzle to figure out today.
it seems to come up from time to time, this question of what is nil? it’s meant to express the idea of a non-value, the absence of a value. using it as a dictionary key is treating this non-value as the presence of a concrete absence-of-value – a self-contradiction. that’s a long way of saying, don’t do that if you need a neutral key, maybe a symbol \nil would be better than a real nil.
Thanks @jamshark70. To be clear, I didn’t set this intentionally! This was part of a much more complicated block of code and it took me a while to realize that the key could be nil at times. The code above is just for demonstration. The point here is that SC should throw an error, it would help debug this kind of situation much more efficiently.