summary refs log tree commit diff
path: root/interpret.e
AgeCommit message (Collapse)Author
2026-05-21whew, okay, lots of interpret stuff implemented nowIrene Knapp
not fully tried though Force-Push: yes Change-Id: I19b39f2b982fde66863c710b6d458c3bd12bdf4a
2026-05-21dynamic.e is split up again, and more progressIrene Knapp
see dynamic.e, input.e, interpret.e, and flow-control.e there were a couple things in the log-load transform that need to work in compile mode, too Force-Push: yes Change-Id: I7caac3b9205f36f7e082a3fd280561d67e27942c
2026-05-21some comment stuff, and implement "keyword"Irene Knapp
Force-Push: yes Change-Id: Iecf4079b9629f9c041b7fe994b1a69b6ef7b6dd0
2026-05-21thanks Verità! great catch :)Irene Knapp
Force-Push: yes Change-Id: I3308856db0fd1fc1b066f4e6d9925b4fc8830a4e
2026-05-16implement more internal wordsIrene Knapp
Force-Push: yes Change-Id: I273879e9d05260db0603bc5a36970e240f3e366a
2026-05-15make the label transformation work all the way, no crashingIrene Knapp
the code doesn't quite run yet, that'll be a future CL Force-Push: yes Change-Id: I71e6a45127c1fc37906d902e36142c17afef2a21
2026-05-11implement all the core Forth stuff in Evocation-assemblyIrene Knapp
also, add support for ;asm and stuff Force-Push: yes Change-Id: I904bc0c31e7e4c8b0abc7790f3af5d20c275f2a5
2026-05-10defined interpreter-stateIrene Knapp
that was quite some debugging. the write-up is still in progress (see the TODO) Force-Push: yes Change-Id: Ia1494bcde2b66e82efe8598899e93bdff60841d4
2026-05-09implement more stuff in interpret.eIrene Knapp
it depended on the execution-model stuff, for the "next" macro. in general, any word implemented in assembly will depend on that. so, the execution stuff is moved into its own file, leaving evoke.e with only the job of bringing everything together. that's a little disappointing because talking about the execution model seems like a good introduction to the whole topic, but perhaps the problem can be solved down the line with literate programming... Force-Push: yes Change-Id: Ic2fe22dcc39980ef75763ae293e41024abc8ba38
2026-05-09implement "create" in interpret.eIrene Knapp
memmove never had a heap-based implementation, probably due to excessive hurrying when it was first written. it has now been added. it's identical to the original static implementation. a minor documentation error in evoke.e was discovered while coding this, and is now fixed. Force-Push: yes Change-Id: I55ff09712a992410167a53cd83e96a452ed49744
2026-05-09implement more of the interpeter, and add some documentationIrene Knapp
Force-Push: yes Change-Id: I33ad8783283643ca4977ab19c378156436707687
2026-05-08add a rough draft of a self-hosted "interpret"Irene Knapp
Force-Push: yes Change-Id: I063232ca7d840237f53dc805bc896c7b452cedc8