It looks to me like the order of keys in a dict is safe (not the case in Python), so we can reliably iterate through a dict and always get the same order. I'm curious as to why there is no built in step-by-step iterator for dict though, as there is with coll. My question is whether treating the contents of a dict as an ordered collection is safe to do, and if so, if one has to do this by hacking up your own iterator by getting the keys with a getkeys message and keeping track of your index yourself. Or maybe I'm missing something obvious. Or maybe one should dump to coll to do this?