I am learning Forth with Gforth and the conditional confuses me. In other languages THEN comes right after the condition, but here it closes the statement: : CHECK ( n -- ) 10 > IF ." big" ELSE ." small" THEN ;. I also cannot see where the condition goes, and typing 5 10 > IF ." yes" THEN at the prompt gives an error about a compile-only word.
How should I read this structure, what exactly does IF test, and why does it only work inside a colon definition?




