Another issue I have for maintaining order is for debug ease. In particular, comparing of log files during debug, of slightly different runs (e.g. suppose I change X, how does it handle that case.) If the generation of log files has indeterminate order (e.g. in printing options, or eval execution ordering), the log files can get way out of sync. A flag in the debug config which says "use invariant order" would float my boat. I just haven't found that yet.