xo-tokenizer2/xo-jit
2025-11-27 11:50:34 -05:00
..
cmake Add 'xo-jit/' from commit '855887df71' 2025-05-11 01:54:47 -05:00
docs Add 'xo-jit/' from commit '855887df71' 2025-05-11 01:54:47 -05:00
example xo-interpreter: add Primitive object, to expose builtin functions 2025-11-27 11:03:41 -05:00
include/xo/jit xo-interpreter: Object->TaggedPtr conversion (prep for primitives) 2025-11-26 20:15:03 -05:00
src/jit xo-expression: naming: {Primitive,Function}ExprInterface 2025-11-26 13:43:02 -05:00
utest xo-interpreter: plumb initial global symtab so builtins reach parser 2025-11-27 11:50:34 -05:00
.gitignore Add 'xo-jit/' from commit '855887df71' 2025-05-11 01:54:47 -05:00
CMakeLists.txt xo-jit: build: install examples with XO_ENABLE_EXAMPLES 2025-09-22 12:53:34 -04:00
HOWTO Add 'xo-jit/' from commit '855887df71' 2025-05-11 01:54:47 -05:00
LICENSE Add 'xo-jit/' from commit '855887df71' 2025-05-11 01:54:47 -05:00
README.md Add 'xo-jit/' from commit '855887df71' 2025-05-11 01:54:47 -05:00

xo-jit library

A library for representing abstract syntax trees for EGAD (a small jit-based language).

Getting Started

build + install xo-cmake dependency

Installs a few cmake ingredients, along with a build assistant xo-build for XO projects such as this one.

build + install other necessary XO dependencies

$ xo-build --clone --configure --build --install xo-indentlog
$ xo-build --clone --configure --build --install xo-refnct
$ xo-build --clone --configure --build --install xo-subsys
$ xo-build --clone --configure --build --install xo-reflect
$ xo-build --clone --configure --build --install xo-expression

Note: can use xo-build -n to dry-run here

copy xo-jit repository locally

$ xo-build --clone xo-jit

or equivalently

$ git clone git@github.com:Rconybea/xo-jit.git

build + install xo-jit

$ xo-build --configure --build --install xo-jit

or equivalently:

$ PREFIX=/usr/local  # or wherever you prefer
$ cmake -DCMAKE_INSTALL_PREFIX=${PREFIX} -S xo-jit -B xo-jit/.build
$ cmake --build xo-jit/.build
$ cmake --install xo-jit/.build

build for unit test coverage

$ cmake -DCMAKE_BUILD_TYPE=coverage -DCMAKE_INSTALL_PREFIX=$PREFIX xo-jit/.build-ccov
$ cmake --build xo-jit/.build-ccov

LSP support

$ cd xo-jit
$ ln -s build/compile_commands.json  # lsp will look for compile_commands.json in the root of the source tree