Commit graph

67 commits

Author SHA1 Message Date
6eff29f62d forge/sf: exec-string, using iter:string-iterator 2024-09-16 10:50:12 +02:00
66bc23c97a forge/sf: define current-package in forge-env, use for registering and finding words 2024-09-15 18:39:03 +02:00
ee2acbe1b9 util/iter: string-iterator 2024-09-14 23:23:28 +02:00
33afa42f24 forge/sf: more basic builtin words 2024-09-14 16:09:33 +02:00
c85ab638a5 forge/sf: fixes, improvements; work in progress: if, while, ... 2024-09-14 10:11:52 +02:00
78cce53f29 forge/sf: stack and vocabulary in class forge-env 2024-09-13 10:12:52 +02:00
5df8a852b1 forge/sf: new forge-env class, work in progress: put stack and vocabulary there 2024-09-13 09:39:07 +02:00
65fbf0aac4 forge/sf: tests, fixes - define wforge definition word 2024-09-11 10:03:30 +02:00
aa8017be9c forge/sf: register compiler words; reverse word index: use for printing functions 2024-09-10 15:46:22 +02:00
180bcca22e forge/sf, work in progress: define / compile forge words 2024-09-10 11:11:06 +02:00
b86005e111 forge/sf: exec-item improvements, basic comp-item implementation 2024-09-10 08:57:29 +02:00
18bfcd8224 forge/sf: steps towards compiling, + minor improvements 2024-09-09 18:51:53 +02:00
2c9dbfde3e forge/sf, work in progress: generic functions for execution and compiling 2024-09-09 13:09:55 +02:00
ae4495e939 forge/sf: store words in sf-builtin:... variables; work in progress: use generic functions/methods 2024-09-09 12:05:55 +02:00
3e26a361c4 forge/sf: minor improvements 2024-09-08 22:29:01 +02:00
a61dc2f1dc new forge/sf: first working version processing input list 2024-09-08 17:14:15 +02:00
79afabb4b8 start with new forge implementation (forge/sf) 2024-09-08 15:39:25 +02:00
2a29b0bd9c minor refactoring, clean-up 2024-05-30 19:36:40 +02:00
fa086ade6a provide defc for defining compiler words (def, const, var); clean-up 2024-05-30 17:24:41 +02:00
11c7ed9cf1 simple var implementation working 2024-05-30 13:17:31 +02:00
c0f51af40d forge: decompile all codewhen tracing calls 2024-05-30 10:39:44 +02:00
b5dabdb73b store reverse word index and word metadata index in forge-env 2024-05-29 15:00:29 +02:00
fb88c0b934 make forge:repl working, with ? and ?? words; test-forge: keep *forge-env* 2024-05-29 12:03:38 +02:00
ef7ee0b9f4 forge: define def in forge code 2024-05-29 10:21:17 +02:00
70bdac68a2 remove obsolete legacy code 2024-05-29 09:57:30 +02:00
15fe5242f6 forge: const basically working; provide with-trace macro 2024-05-29 09:38:14 +02:00
52f9f7e3ed work in progress: const as forge-word defined with reg and regc 2024-05-28 16:10:07 +02:00
18203bd833 forge: clean-up, start next steps 2024-05-28 10:34:44 +02:00
192c6c0fb9 forge: reg basically working 2024-05-28 09:39:29 +02:00
3a764bc9f8 forge: minor refactoring - use + and * for add and mul, ... 2024-05-26 13:56:40 +02:00
98e9e59017 forge: setup, register: more improvements, refactoring, simplification 2024-05-25 08:49:13 +02:00
43a0b0f9d8 forge improvements: use macro for registration, initialize builtins via explicit init-forge-env 2024-05-24 19:52:58 +02:00
7c9434960e forge, new implementation: basically working 2024-05-24 17:34:17 +02:00
944b3402e5 work in progress: organizing words in hash-tables; simple exec working again 2024-05-24 15:39:30 +02:00
272430f36c work in progress: define 'def' 2024-05-24 11:32:41 +02:00
4d2f6655ef forge rewrite: improvements: get-symbol, access to cp, ip 2024-05-23 14:50:32 +02:00
abd8e6e2e0 forge rewrite: basic interpreter / compiler working 2024-05-23 11:54:59 +02:00
b6e1e3ccd4 work in progress: rewrite of forge implementation; keep old versions in ...-legacy files 2024-05-23 10:33:16 +02:00
547e02b85f forge: use deftest; implement seq as class 2024-05-21 11:39:34 +02:00
778409a842 work in progress: testing improvements 2024-05-20 12:22:29 +02:00
f3c44f7baf keep functional seq (pointer) definition in separate file for reference 2024-05-20 12:22:05 +02:00
8e5317810b forge sequence: functional version 2024-05-19 11:05:52 +02:00
3eca0d0c19 forge sequence: improvements 2024-05-19 10:30:45 +02:00
7dd30882e0 work in progress: forge sequence (pseudo-pointer) 2024-05-19 10:03:39 +02:00
db405da6d9 simplify forge code: use special variable *forge-env* 2024-05-07 14:06:28 +02:00
5d7a4c0b82 replace tabs with spaces 2024-05-06 12:15:33 +02:00
53a999bb38 compile recursively 2024-04-29 15:28:16 +02:00
27fb32feb2 compile code in def 2024-04-29 14:48:05 +02:00
df88bec20a provide var definition with get and put operations 2024-04-28 14:56:46 +02:00
c2b48289ab add const definition 2024-04-27 08:25:53 +02:00