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.
This commit is contained in:
@@ -0,0 +1,45 @@
|
||||
default:
|
||||
just --list
|
||||
|
||||
# Build everything
|
||||
build:
|
||||
cargo build --workspace
|
||||
|
||||
# Run all tests
|
||||
test:
|
||||
cargo test --workspace
|
||||
|
||||
# Run Forth 2012 compliance tests
|
||||
compliance:
|
||||
cargo test --test compliance -- --nocapture
|
||||
|
||||
# Run clippy lints
|
||||
clippy:
|
||||
cargo clippy --workspace -- -D warnings
|
||||
|
||||
# Check formatting
|
||||
fmt:
|
||||
cargo fmt --all --check
|
||||
|
||||
# Format code
|
||||
fmt-fix:
|
||||
cargo fmt --all
|
||||
|
||||
# Run the REPL
|
||||
repl:
|
||||
cargo run -p wafer
|
||||
|
||||
# Run a Forth file
|
||||
run file:
|
||||
cargo run -p wafer -- {{file}}
|
||||
|
||||
# Run benchmarks
|
||||
bench:
|
||||
cargo bench --workspace
|
||||
|
||||
# Full CI check (what CI runs)
|
||||
ci: fmt clippy test
|
||||
|
||||
# Check compilation without running
|
||||
check:
|
||||
cargo check --workspace
|
||||
Reference in New Issue
Block a user