b9
b9 copied to clipboard
An educational JS virtual machine based on Eclipse OMR

Welcome to base9!
Base9 is an educational language runtime and programming language! We’re using it to show people how to use Eclipse OMR to build their own language runtime with a Just in Time (JIT) Compiler! The base9 front-end language is a simple subset of JavaScript. For more information, visit the base9 website.
Build your own Language Runtime
If you'd like to build your own language runtime, visit our guide on Building a Language Runtime!
Getting started
This page contains some basic instructions to get you started. For more detailed instructions, go to:
- Ubuntu set-up page.
- OSX set-up page.
1. Requirements
To get started with base9 using the Ninja build system, you'll need the following:
-
git
-
build-essential
-
nodejs
(Minimum version 4.5.0) -
npm
-
esprima
-
cmake
(Minimum version 3.2.0) -
ninja
2. Clone the repository and get the submodules
git clone --recursive https://github.com/b9org/b9.git
3. Install Esprima
cd b9 \
&& npm install esprima
4. Build base9
mkdir build \
&& cd build \
&& cmake -GNinja -DCMAKE_BUILD_TYPE=Debug .. \
&& ninja
5. Run Hello World!
In the build
directory, run:
./b9run/b9run ./test/hello.b9mod
6. Test base9
You can run the full base9 test suite with:
ninja test