From ce55be3d16cf4ccb4284d323fc045b2afed20320 Mon Sep 17 00:00:00 2001 From: Tim Vaughan Date: Tue, 19 Apr 2016 07:32:39 +1200 Subject: [PATCH] Added HIDE, IMMEDIATE --- src/forth.jl | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/forth.jl b/src/forth.jl index cdfe88d..8c5c3de 100644 --- a/src/forth.jl +++ b/src/forth.jl @@ -700,6 +700,12 @@ HIDDEN = defPrim("HIDDEN", () -> begin reurn mem[NEXT] end) +HIDE = defWord("HIDE", + [WORD, + FIND, + HIDDEN, + EXIT]) + COLON = defWord(":", [WORD, CREATE, @@ -714,6 +720,12 @@ SEMICOLON = defWord(";", LBRAC, EXIT], flags=F_IMMEDIATE) +IMMEDIATE = defPrim("IMMEDIATE", () -> begin + lenAndFlagsAddr = mem[LATEST] + 1 + mem[lenAndFlagsAddr] = mem[lenAndFlagsAddr] $ F_IMMEDIATE + return mem[NEXT] +end, flags=F_IMMEDIATE) + #### VM loop #### function runVM() jmp = NEXT -- 2.20.1