Note that I did not criticize the first-execute-then-check do{} until but the first-check-then-execute of $i++ until. THAT is the code that feels wrong. That is the construct that puzzles me. Anyone know a language where this is handled the same?
But I could live with the "wrong" construction if both cases were at least consistent with each other.