tree-sitter-visitor
go-tree-sitter
Our great sponsors
tree-sitter-visitor | go-tree-sitter | |
---|---|---|
1 | 1 | |
1 | 359 | |
- | - | |
10.0 | 7.2 | |
over 2 years ago | 6 days ago | |
C | C | |
MIT License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
tree-sitter-visitor
-
Show HN: Alumina Programming Language
Honestly, Tree Sitter is fantastic, I can highly recommend it. By far the most user friendly and powerful parser generator I've worked with. The C API is very nice.
The only two pain point I had is that the `node-types.json` that's generated only contains the names of the nodes, not the numerical IDs. This means that if you have some codegen generating Rust enums is difficult if you want to avoid matching nodes by string.
I wrote https://github.com/tibordp/tree-sitter-visitor for generating visitor traits in Rust for a given grammar. I actually did it a bit differently in the end for Alumina, but it might come useful.
go-tree-sitter
What are some alternatives?
alumina - A general purpose programming language
tree-sitter-embedded-template - Tree-sitter grammar for embedded template languages like ERB, EJS
tree-sitter-go-template - Golang template grammar for tree-sitter
tree-sitter-racket - Racket grammar for tree-sitter
syntax-highlighter - Syntax Highlighter extension for Visual Studio Code (VSCode). Based on Tree-sitter.
grove - Universal AST parser built on Tree-sitter
tree-sitter-elisp - tree-sitter grammar for emacs lisp
ngx-export - A comprehensive web framework aimed at building custom Haskell handlers for the Nginx Web Server
tree-sitter-comment - Tree-sitter grammar for comment tags like TODO, FIXME(user).
tree-sitter-sql - SQL grammar for tree-sitter