,

, (comma) — 셀 저장과 공간 예약

,(comma)는 데이터 공간에 셀 하나를 위한 공간을 예약하고 그 셀에 x를 저장하는 코어 단어예요.

출처: , — Forth 2012 Standard

본문

스택 효과

( x -- )

설명

데이터 공간에 셀 하나를 위한 공간을 예약하고 그 셀에 x를 저장해요. ,가 실행을 시작할 때 데이터 공간 포인터가 정렬되어 있으면, ,가 실행을 마칠 때에도 정렬된 상태로 유지돼요. , 실행 전에 데이터 공간 포인터가 정렬되어 있지 않으면 애매한 조건이 존재해요.

참조 (See)

  • 3.3.3 Data space(데이터 공간)
  • 3.3.3.1 Address alignment(주소 정렬)
  • A.6.1.0150 ,

합리성 (Rationale)

실행 토큰을 컴파일하기 위한 ,(comma)의 사용은 이식성이 없어요. 6.2.0945 COMPILE, 를 참조하세요.

테스트 (Testing)

T{       1ST 2ND U< -> <TRUE> }T
\ HERE MUST GROW WITH ALLOT
T{       1ST CELL+  -> 2ND }T
\ ... BY ONE CELL
T{   1ST 1 CELLS +  -> 2ND }T
T{     1ST @ 2ND @  -> 1 2 }T
T{         5 1ST !  ->     }T
T{     1ST @ 2ND @  -> 5 2 }T
T{         6 2ND !  ->     }T
T{     1ST @ 2ND @  -> 5 6 }T
T{           1ST 2@ -> 6 5 }T
T{       2 1 1ST 2! ->     }T
T{           1ST 2@ -> 2 1 }T
T{ 1S 1ST !  1ST @  -> 1S  }T
\ CAN STORE CELL-WIDE VALUE

더 알아보기 (Learn more)

출처: , — Forth 2012 Standard