From 53f52a67b7c5bb8af12c92a2f3a219e75dd9b0c3 Mon Sep 17 00:00:00 2001 From: Irene Knapp Date: Wed, 20 May 2026 18:23:07 -0700 Subject: colon, semicolon, and compiled integers all work with log-load now yay next up is to figure out why calling newly-defined docol-based words with it does not work Force-Push: yes Change-Id: I9c5f50d20f43ad8a15b6db58e046f1e0bb158266 --- evoke.e | 25 ++++++++++--------------- 1 file changed, 10 insertions(+), 15 deletions(-) (limited to 'evoke.e') diff --git a/evoke.e b/evoke.e index 4252e91..05e500e 100644 --- a/evoke.e +++ b/evoke.e @@ -8,7 +8,6 @@ s" source-to-precompile" variable -~ : fooze 4 . ; fooze 1024 read-to-buffer ~ We begin by outputting the actual docol routine, the one that codewords ~ should point to. Note that this is before we've done any word header. @@ -32,23 +31,19 @@ pack-next 8 packalign here ! +~ Now that we have docol, colon will work and we can define exit the normal +~ way. +: exit + [ here @ + :rsi pack-popcontrol + here ! ] ;asm -s" exit" create -here @ -dup 8 + pack64 -:rsi pack-popcontrol -here ! - -: foo [ crash 1 2 + ; +~ Now that we have exit, semicolon will also work and we can define +~ non-assembly words. +: foo 4 5 + ; -0 sys-exit +42 sys-exit -~ Now that we have docol, colon will work and we can define exit the normal -~ way. -~ : exit -~ [ here @ -~ :rsi pack-popcontrol -~ here ! ] ;asm pyrzqxgl ~ 0 sys-exit -- cgit 1.4.1