CREATE, ALLOT and VARIABLE now work as they should.
[forth.jl.git] / src / forth.jl
index c1ca1a0..98999a3 100644 (file)
@@ -768,6 +768,8 @@ end)
 
 # Compilation
 
+STATE, STATE_CFA = defNewVar("STATE", 0)
+
 HEADER = defPrimWord("HEADER", () -> begin
 
     wordLen = popPS()
@@ -786,8 +788,6 @@ COMMA = defPrimWord(",", () -> begin
     return NEXT
 end)
 
-STATE, STATE_CFA = defNewVar("STATE", 0)
-
 LBRAC = defPrimWord("[", () -> begin
     mem[STATE] = 0
     return NEXT
@@ -810,6 +810,11 @@ HIDE = defWord("HIDE",
     HIDDEN,
     EXIT])
 
+CREATE = defWord("CREATE",
+    [WORD,
+    HEADER,
+    LIT, DOVAR, COMMA, EXIT]);
+
 COLON = defWord(":",
     [WORD,
     HEADER,