% while loop test, the extra lines before and after % help illistrate the bounds of the loop. begin y := 3; while y do begin print y; y := y -1; end; % notice here we need a semicolon % to mark the end of the while % _not_ the begin-end loop. print asdf; end % notice here we don't need a semicolon