루프 조건에 True이므로 항상 참이 되고, 루프는 break 문을 만날 때까지 계속 실행된다.
루프를 반복할 때마다 사용자에게 화살괄호 >를 표시한다. 사용자가 done을 입력하면 break 문에서 루프를 빠져나간다. 그렇지 않으면 프로그램은 사용자가 입력한 것을 메아리처럼 반복해서 출력하고 루프의 처음으로 돌아간다. 다음 실행 예를 보자.
> not done
not done
> done
Done!
while 루프를 이런 방식으로 작성하는 것은 흔히 볼 수 있는데, 왜냐하면 루프의 처음이 아닌 루프의 어디서나 조건을 검사할 수 있고, “발생하지 않을 때까지 계속하기”라는 부정적인 표현이 아니라 “이런 일이 발생할 때 중단하기”라는 긍정적인 표현으로 루프 중지 조건을 표현할 수 있기 때문이다.