Dora
JIT-compiler for the programming language Dora implemented in Rust. Works on Linux, Windows and macOS (x86_64 and aarch64). Build with:
Compilation & Testing
Install Rust stable with the help of rustup.rs. Dora uses
cargo
for building:
# build in debug and release mode
cargo build && cargo build --release
# run all tests in debug and release mode (needs Ruby)
tools/test && tools/test-release # Linux and macOS
tools/test.bat && tools/test-release.bat # Windows
Note that the test runner is implemented in Ruby
and therefore a Ruby interpreter needs to be installed on your system (e.g.
brew/dnf/apt install ruby
).
Working on the standard library
The standard library (stdlib) is included into the dora
-binary at compile
time. Changing the stdlib therefore requires recompiling Dora, even though the
stdlib is written in Dora. In order to avoid this recompilation when working on
the stdlib, simply pass your working directory of the stdlib to Dora using the
--stdlib
argument. With this parameter, Dora loads the stdlib from the
specified directory instead of the one bundled in the executable.