---- while (something) { foo(); } while (something) { foo(); bar(); } while (!something) { foo(); } while (!something) { foo(); bar(); } ---- foo() while something while something foo() bar() foo() until something until something foo() bar()