From 4137177c016928a6d255bbef762f0d220945083c Mon Sep 17 00:00:00 2001 From: Irene Knapp Date: Tue, 15 Sep 2026 14:14:50 -0700 Subject: do magic comments from the label transform when inside the hex transform the meaning of them in that setting is a bit different, which deserves to be documented eventually Change-Id: Ia7725bc776420c0ad62091a2e5100700868a6bfa Force-Push: yes --- core.e | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'core.e') diff --git a/core.e b/core.e index bbe1ba8..44f9fd5 100644 --- a/core.e +++ b/core.e @@ -68,6 +68,12 @@ ~ ~ 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. +~ +~ : This is the actual docol routine, the interpreter which is pointed to by +~ : the codeword of every interpreted word. It does not itself have an entry +~ : in the dictionary; the word "docol" will return a pointer to this routine. +~ : The word's entry follows immediately after the routine. +~ : indent here @ dup L!' docol-codeword-value :rsi pack-pushcontrol @@ -76,6 +82,7 @@ dup L!' docol-codeword-value pack-next 8 packalign here ! +~ : deindent ~ We can't use colon to create docol, not even the part that's a word, ~ because colon tries to dynamically invoke docol to fill in the codeword. @@ -87,6 +94,7 @@ L@' docol-codeword-value :rax mov-reg64-imm64 pack-next 8 packalign here ! +~ : deindent ~ Now that we have docol, colon will work and we can define words the normal ~ way. -- cgit 1.4.1