-
Notifications
You must be signed in to change notification settings - Fork 0
Build & Run
cd rust
cargo build --release -p bbb-cli # build → target/release/bbb
cargo test --workspace # run all tests (51)The workspace crates: bbb-syntax (lexer/parser), bbb-core (arena/Value),
bbb-vm (interpreter), bbb-llvm (LLVM backend), bbb-wasm (VSCode plugin
formatter core), bbb-cli (the bbb binary).
A prebuilt legacy interpreter is available at bin/bio (old C build, kept as
the regression baseline for examples output).
bbb examples/01-hello.bio # interpret
bbb run file.bio # explicit run
bbb run -m <bytes> file.bio # memory limit (v2)
bbb lexer file.bl # dump lexer tokens (debug)bin/bio shell build file.bio # → bin/file (standalone executable)
bin/bio shell build file.bio -o out # custom output pathbbb shell build compiles into a self-contained native executable (source
embedded + interpreter runtime linked via libbbb.a). At runtime it needs
neither bbb nor the source. Compiled products respect BIO_MEM_LIMIT.
A project has package.toml (manifest) + src/ (source, main.bio is the
entry) + utils/ (libraries) + .bbb/deps/ (dependencies).
bio init <name> # create a project skeleton
bio build [dir] -s # build → standalone executable (default)
bio build [dir] -m # build → .img package (app + platform CLI + libs)
bio build [dir] -m out.zip # build → .zip package (format by extension)
bio build [dir] [-o out] # explicit output path
bio run [dir] # run a project (interpret)
bio install [dir] # install package.toml dependencies
bio destroy [dir] # remove build artifacts-s (standalone) produces a single self-contained executable; -m (package)
bundles the app together with the current platform's CLI and shared runtime
into a distributable .img or .zip package.
need bundling starts from the main entry and collects providers
recursively from src/ + utils/ + .bbb/deps/ until the closure
stabilizes — any need without a provider is an error.
-
BIOLANG_CONFIG— global config file (TOML, may containrepo = ...for dependency resolution). -
BIO_MEM_LIMIT— memory limit for compiled products.
- Home
- Beginner — first steps
- Intermediate — real usage
- Advanced — masterclass
- Build & Run
- Packaging
- Language-Reference
- BR-Model
- BTM-Model