Zmeu (named after the zmeu, a dragon, from the Slavic zmey, змей, meaning "dragon" or "serpent") is a systems programming language with an indentation-based source syntax and an owned-value memory model: ownership and borrowing are checked at compile time, before any code is generated. Programs run two ways: a built-in interpreter, and a native path that lowers a custom MLIR dialect to LLVM IR and a clang-linked executable. It also has structured, scoped concurrency with green tasks and a Linux reactor for direct-style I/O.
See STATUS.md for the precise, up-to-date snapshot of what the compiler implements today.
- 📖 Website & guide: getting started, a language tour, and standard-library reference. Goes live once the repository is public.
- STATUS.md: canonical implementation snapshot and compatibility matrix.
- docs/current-syntax.md: compact accepted-syntax guide.
- docs/README.md: documentation index.
- CHANGELOG.md: release notes.
cargo test
cargo clippy --all-targets -- -D warnings
cargo build --features mlir-backend
env -u MLIR_DIR -u LLVM_DIR -u ZMEU_MLIR_DIR -u ZMEU_LLVM_DIR cargo test --features mlir-backendCheck an example program:
cargo run -- check examples/core/control_flow.zmeuBuild a native binary through the MLIR backend:
cargo run --features mlir-backend -- build examples/core/control_flow.zmeu -o /tmp/zmeu-control-flowsrc/: Rust compiler frontend, HIR/MIR pipeline, interpreter, and CLI.runtime/: C runtime support used by native builds.std/: Zmeu standard-library sources.mlir/: MLIR dialect, passes, and C API bridge.tests/phase0/: frontend, interpreter, MLIR, runtime, and diagnostic tests.examples/: executable source examples and fixtures.benchmarks/: benchmark fixtures, IR counters, and performance scripts.
Thank you so much for supporting Zmeu!
See CONTRIBUTING.md for local checks, optional MLIR backend setup, CI expectations, and documentation hierarchy.
Zmeu is licensed under the Apache License 2.0.