DO — 반복 루프 시작

DO — 반복 루프 시작

DO는 루프 제어 매개변수를 설정하는 컴파일링 단어로, LOOP+LOOP와 함께 쓰여 반복 루프를 구성하는 코어 단어예요.

출처: DO — Forth 2012 Standard

본문

컴파일 (Compilation)

( C: -- do-sys )

do-sys를 제어 흐름 스택(control-flow stack)에 놓아요. 아래 주어진 실행 시점 의미를 현재 정의에 추가해요. 이 의미는 LOOP 같은 do-sys의 소비자에 의해 해결될 때까지 불완전해요.

실행 (Run-time)

( n1 | u1 n2 | u2 -- ) ( R: -- loop-sys )

인덱스 n2 | u2와 한계 n1 | u1로 루프 제어 매개변수를 설정해요. n1 | u1n2 | u2가 둘 다 같은 타입이 아니면 애매한 조건이 존재해요. 복귀 스택에 이미 있던 것은 루프 제어 매개변수가 버려질 때까지 사용할 수 없게 돼요.

참조 (See)

  • 3.2.3.2 Control-flow stack
  • 6.1.0140 +LOOP
  • 6.1.1800 LOOP
  • A.6.1.1240 DO

합리성 (Rationale)

전형적인 사용:

: X ... limit first DO ... LOOP ;

또는

: X ... limit first DO ... step +LOOP ;

테스트 (Testing)

F.6.1.1800 LOOP, F.6.1.0140 +LOOP, F.6.1.1730 J, F.6.1.1760 LEAVE, F.6.1.2380 UNLOOP 를 참조하세요.

더 알아보기 (Learn more)

출처: DO — Forth 2012 Standard