Commit Graph

5 Commits

Author SHA1 Message Date
ok 1fd8f7196e Update documentation to reflect current implementation state
README now documents all 70+ implemented words, working examples,
architecture overview, and accurate compliance status.
CLAUDE.md updated with actual file descriptions, patterns for adding
new words, and current test count.
2026-03-29 23:14:54 +02:00
ok 5eee0d1810 Add 50+ Core words: loops, defining words, memory, system primitives
- Loop support: I, J, UNLOOP, LEAVE
- Defining words: VARIABLE, CONSTANT, CREATE
- Memory: HERE, ALLOT, comma, C-comma, CELLS, CELL+, CHARS, CHAR+,
  ALIGNED, ALIGN, MOVE, FILL
- Stack: 2DUP, 2DROP, 2SWAP, 2OVER, ?DUP, PICK, MIN, MAX, WITHIN
- Comparison: 0<>, 0>
- System: EXECUTE, IMMEDIATE, DECIMAL, HEX, TYPE, SPACES, tick,
  CHAR, [CHAR], ['], >BODY, ENVIRONMENT?, SOURCE, ABORT
- Number output now respects BASE (HEX FF DECIMAL . prints 255)
- 185 tests passing
2026-03-29 23:10:51 +02:00
ok d22a0a5756 Implement core Forth runtime: dictionary, codegen, outer interpreter, REPL
- Dictionary: linked-list word headers in simulated linear memory with
  create/find/reveal, case-insensitive lookup, IMMEDIATE flag support
- WASM codegen: IR-to-WASM translation via wasm-encoder with full
  validation; all stack, arithmetic, comparison, logic, memory, control
  flow, and return stack operations; wasmtime execution tests
- Outer interpreter: tokenizer, number parsing (decimal/$hex/#dec/%bin),
  interpret/compile dispatch, control structures (IF/ELSE/THEN,
  BEGIN/UNTIL, BEGIN/WHILE/REPEAT), RECURSE, comments, string output
- 40+ primitive words registered via JIT-compiled WASM modules linked
  to shared memory/globals/table
- Interactive REPL with rustyline, piped input, and file execution
- 145 tests passing across dictionary, codegen, and runtime
2026-03-29 22:48:37 +02:00
ok b8993f556e Switch to dual MIT/Apache-2.0 licensing, fix repository URL 2026-03-29 22:30:18 +02:00
ok 683281363d Initial commit: WAFER (WebAssembly Forth Engine in Rust)
Optimizing Forth 2012 compiler targeting WebAssembly with IR-based
compilation pipeline, multi-typed stack inference, subroutine threading,
and JIT/consolidation modes. Rust kernel with ~35 primitives and Forth
standard library for core/core-ext word sets.
2026-03-29 22:30:18 +02:00