This is a tree sitter grammar for Convex Lisp, a distributed Lisp that runs on top of the Convex virtual machine.
Pull requests are welcome, especially to improve the corpus of examples for testing and development.
You’ll need to install various dependencies to begin development. If you use the Nix package manager you can configure your local environment using nix-shell:
[tree-sitter-convex-lisp]$ nix-shell
This sets up the environment using the declarative configuration in the shell.nix file.
Now you can install the Node package dependencies:
[tree-sitter-convex-lisp]$ npm install
And finally you can build the grammar:
[tree-sitter-convex-lisp]$ npm run build
This converts the grammar.js file into an object file that can be used with Emacs or other editors and tools to efficiently parse Convex Lisp into a concrete syntax tree useful to syntax highlighting, etc.
When you just want to check that your changes to the grammar are valid, you can `generate` parser C code from the grammar file (without compiling it) using:
[tree-sitter-convex-lisp]$ npm run generate