IMHO a language feature to evaluate side-effecting expressions in arbitrary order is not a good idea. I can see the didactic value of such a construct in an algorithms textbook, but for real programs it's best to leave it to the compiler. The compiler's optimizer should be free to re-order or parallelize expressions whenever it can prove the effect stays the same. Giving programmers an easy-to-access construct with a short name to say "the order doesn't matter" (with no compiler check that this claim is true) will do its part to encourage the kind of micro-optimization culture that is endemic in C and C++. It leads to bugs and obscure code. Scheme should have fewer gotchas, not more. I can't stop the community from promulgating such a construct, but I'd like to ask that the name be changed to something less encouraging that more obviously says "here be dragons".