REPEAT — 루프 시작으로 분기

REPEAT — 루프 시작으로 분기

REPEATBEGIN...WHILE...REPEAT 구조에서 실행을 루프 시작으로 되돌려 반복하는 코어 단어예요.

출처: REPEAT — Forth 2012 Standard

본문

컴파일 (Compilation)

( C: orig dest -- )

아래 주어진 실행 시점 의미를 현재 정의에 추가하고, 역방향 참조 dest를 해결해요. 순방향 참조 orig는 실행 시점 의미 뒤의 위치를 이용해 해결해요.

실행 (Run-time)

( -- )

dest가 주는 위치에서 실행을 계속해요.

참조 (See)

  • 6.1.0760 BEGIN
  • 6.1.2430 WHILE
  • A.6.1.2140 REPEAT

합리성 (Rationale)

전형적인 사용:

: FACTORIAL ( +n1 -- +n2 )
    DUP 2 < IF
      DROP 1 EXIT  THEN
    DUP
    BEGIN  DUP 2 > WHILE
      1-  SWAP OVER *  SWAP
    REPEAT DROP
;

테스트 (Testing)

F.6.1.2430 WHILE 을 참조하세요.

더 알아보기 (Learn more)

출처: REPEAT — Forth 2012 Standard