반복하는 또 다른 방법은 While 함수를 사용하는 것입니다. 이 함수는 테스트와 본문, 두 개의 인수만 사용합니다. 따라서 두 인수 중 하나에 카운터, 인덱스 또는 플래그 변수를 사용하려면 While 함수를 호출하기 전에 해당 변수를 초기화해야 합니다. JMP는 첫 번째 인수를 평가하고 이를 부울 결과로 해석하여 반복을 계속할지 여부를 결정합니다. 결과가 참이면 While 함수는 반복을 계속합니다. 거짓이면 While 함수는 반복을 종료하고 스크립트는 While 함수 다음에 나오는 코드로 계속합니다. JMP는 다음으로 두 번째 인수를 평가합니다. 이 코드는 일반적으로 반복의 본문으로 간주되며 JMP는 매번 이 코드를 평가합니다. 별도의 업데이트 인수가 없으므로 이 코드의 일부는 다음 반복을 위해 카운터, 인덱스 또는 플래그 변수를 업데이트해야 합니다. 예를 살펴보겠습니다. 이 코드에서 c는 카운터 또는 인덱스이며 초기에는 'Not Done'로 설정됩니다. 플래그 변수는 'Not Done'로 초기에는 'true'로 설정됩니다. 따라서 While 함수에서 JMP는 먼저 not Done을 평가하고 이를 부울 결과로 해석합니다. not Done이 참이면 함수는 계속 진행됩니다. 그런 다음 본문에는 반복의 주요 작업인 Distribution 플랫폼 실행이 포함되고 부울 비교를 기반으로 not Done 변수도 업데이트합니다. 여기에 표시된 코드에서 JMP는 데이터 테이블의 열 수를 카운터의 현재 값과 비교하고 카운터를 업데이트합니다. 비교는 데이터 테이블에 열이 더 있으면 a를 반환하고 모든 열이 평가되면 0을 반환합니다. 이 결과는 다음 반복의 시작 부분에서 평가되는 not Done에 저장됩니다. Post Increment 연산자는 증가하기 전에 현재 값을 반환합니다. 따라서 코드의 마지막 부분을 N Col이 c보다 큼, 세미콜론, c 더하기-더하기로 작성할 수 있으며 정확히 같은 작업을 수행합니다.