Commit graph

38 commits

Author SHA1 Message Date
psf
ca8ced9494 WORD no longer leaves delimiter on stack 2022-05-17 22:43:39 -07:00
psf
cd1310e803 forth!() macro, startup .fs, add build.sh 2022-05-17 22:30:29 -07:00
psf
c093bc96fe combine in/out ops into io, add u< op, lots of condensing 2022-05-17 01:09:49 -07:00
psf
60da6e54a9 fix collision betweeen opcode and large literals 2022-05-15 21:51:30 -07:00
psf
bd55267c35 v2, now with a better-layered virtual stack CPU 2022-05-15 19:16:13 -07:00
Peter Fidelman
214a4917cd add examples 2022-04-10 17:11:49 -07:00
Peter Fidelman
755d8e068b add README 2022-04-10 16:34:08 -07:00
psf
07f935e38e TODO list of upcoming features 2022-04-01 23:37:17 -07:00
psf
c0687799ec variable, constant, forget 2022-03-27 21:17:01 -07:00
psf
182c374117 better error handling, + "ok" in interpret mode only 2022-03-27 14:38:44 -07:00
psf
0b11491963 autoexec, better size accounting 2022-03-27 13:56:39 -07:00
psf
995e712359 recursion and iteration 2022-03-27 13:22:35 -07:00
psf
c4f7fa6b93 oops, extra include 2022-03-27 01:40:48 -07:00
psf
aa3a9651a1 use _d suffix for words that needed a special dictionary version 2022-03-27 01:12:41 -07:00
psf
e204ae6da7 error checking (it's a start anyway) 2022-03-27 01:05:23 -07:00
psf
72dae5a249 user-callable return-stack juggling words that work correctly 2022-03-27 00:44:04 -07:00
psf
3aa9c06fd3 stack ops 2022-03-27 00:15:39 -07:00
psf
e594cb6298 alphabetized table! 2022-03-27 00:08:28 -07:00
psf
673e53349b create, and all pieces needed for : ; 2022-03-26 23:49:25 -07:00
psf
75304a0c82 get rid of special words understood by outer interpreter 2022-03-26 21:11:55 -07:00
Peter Fidelman
a6e611ad2f further prettification 2022-03-26 15:20:52 -07:00
Peter Fidelman
b7c07685c3 call 2022-03-26 15:05:00 -07:00
Peter Fidelman
4a718a7cee prettification 2022-03-26 14:59:25 -07:00
Peter Fidelman
885f6b2a40 removed incorrect clamping of ShortName length to 3 2022-03-26 14:58:46 -07:00
Peter Fidelman
2adcf0ddea shrink stacks (they were excessively huge) 2022-03-26 14:55:05 -07:00
Peter Fidelman
aeca252239 PHEW, much better 2022-03-26 14:21:02 -07:00
Peter Fidelman
9e13b11e6d rearrange titanic deck chairs 2022-03-26 13:38:45 -07:00
psf
30cca5288e BETRAYED by the unified primitive/dict table, see TODOs 2022-03-26 11:24:22 -07:00
psf
d40b9d17d5 compiling 2022-03-26 02:15:00 -07:00
psf
53521b70f4 immediate mode 2022-03-26 01:01:56 -07:00
psf
f2d9b7a092 fixed missing RETs, added sensible termination case 2022-03-26 00:10:11 -07:00
psf
b1a477ea99 ret with nothing on the return stack should exit 2022-03-25 23:30:18 -07:00
psf
c90591b864 outer interpreter does dictionary lookup, then executes via inner interpreter 2022-03-24 00:52:39 -07:00
psf
94b9fbbb0b bugfix: long names weren't being truncated 2022-03-24 00:44:23 -07:00
psf
70fcc8e9a9 stored-program computer 2022-03-24 00:01:51 -07:00
psf
b864d77444 byte-addressable memory (was word-addressable) 2022-03-22 21:14:06 -07:00
psf
5e6b760ffe rename rpn to outer (interpreter) 2022-03-22 21:13:17 -07:00
psf
6c4ef18244 Initial commit 2022-03-21 20:45:42 -07:00