6 releases
new 0.2.1 | Dec 8, 2024 |
---|---|
0.2.0 | Dec 7, 2024 |
0.1.2 | Dec 6, 2024 |
0.1.1 | Jun 24, 2023 |
0.0.8 | Jan 28, 2023 |
#127 in WebAssembly
331 downloads per month
1.5MB
1.5K
SLoC
Contains (ELF lib, 1.5MB) libcbqn.so
cbqn
A Rust crate for running BQN code within a Rust program using CBQN interpreter shared object or WASI reactor.
Building
Native backend (libcbqn.so)
With the native backend (default), please make sure the libcbqn shared object can be found by rustc. Build libcbqn.so
with make shared-o3
in CBQN repository and set up .cargo/config.toml
as following:
[build]
rustflags = "-L/path/to/CBQN"
rustdocflags = "-L/path/to/CBQN"
To make the executable aware of libcbqn.so, if no global install is available for you, you can use LD_LIBRARY_PATH
to tell where to load libcbqn.so
from:
LD_LIBRARY_PATH=/path/to/CBQN cargo test
WASI backend (BQN.wasm)
To build the WASI backend, point the BQN_WASM
environment variable to the BQN.wasm
file built with make wasi-reactor-o3
CBQN makefile target. Disable default features and use wasi-backend
feature. For example running the tests for this crate:
BQN_WASM=/path/to/CBQN/BQN.wasm cargo test --no-default-features --features=wasi-backend --release
Usage
The documentation contains multiple examples on how to use the crate.
License
Licensed either under GPLv3, LGPLv3 or MPL 2.0 following the licensing of CBQN.
Dependencies
~2–16MB
~226K SLoC