A grammar describes the syntax of a programming language, and might be defined in Backus-Naur form (BNF). A lexer performs lexical analysis, turning text into tokens. A parser takes tokens and builds a data structure like an abstract syntax tree (AST). The parser is concerned with context: does the sequence of tokens fit the grammar? A compiler is a combined lexer and parser, built for a specific grammar.
Powershell script deobfuscation using AST in Python
Trace the history of an individual method in a git repository (experimental)
golang parser-combinator library
Parser and compiler for Ravi and Lua
An interpreter for Typescript that can evaluate an arbitrary Node within a Typescript AST
PROGEX (Program Graph Extractor); a cross platform tool for extracting graphical program representations from software source code
Implement a Lisp, in C, from scratch, no libs
Don't just graphql, batchql!
☄️ A Type-safe Markdown parser in Swift.
The Elixir AST explorer
Graphviz dot file processor powered by plugins based on @unifiedjs
Markdown documentation generator from Google docstrings
A developer utility for automatically upgrading deprecated code for Drupal 9
Ahead-of-time compiler for Chocopy, a statically typed subset of Python 3, built in Python 3, targeting CIL/CLR, JVM, LLVM IR, and WASM.
Native language with Rust & LLVM
A Jetbrains Plugin for react PropTypes
Rust-like macros in Python by abusing type annotations
A Javascript to PICO-8 Lua transpiler
A monorepo with series of helpful tools designed for frond-ends
A simple example of defining custom plugins for clang and the clang static analyzer.
Clojure Parser for Emacs Lisp
Translate Github Readme to any other Language
:black_small_square: An engine for searching patterns in the source code, based on Unified AST or UST. At present time C#, Java, PHP, PL/SQL, T-SQL, M...
machine code+i git matrix + user
Safely evaluate JavaScript (estree) expressions, sync and async.
Fast tokenization and structural analysis of any programming language
Java Parser for JavaScript/TypeScript (based on antlr4ts)
:notebook_with_decorative_cover: Vue 源码的探讨和学习
Astra: a Java tool for analysing and refactoring Java source code
ScalaJSON - JSON for Scala, currently contains minimal AST
Converts golang AST to JSON and JSON to AST
An advanced Java library for GLSL parsing, program transformation, and printing that uses ANTLR4. Developed and maintained by @douira.
静态分析
fuzzer for generative testing of ECMAScript parsers
A small ECMAScript parser, tokenizer and minifier written in JavaScript.
Golang source code parsing, usage like reflect package
Yet another Lua lexer and Lua parser for Lua 5.3 written in pure Rust.
A custom parser/auto-formatter for Standard ML
Universal and language-independent abstract syntax tree
Plugin-driven CLI utility for code generation using Go source as IDL
Markdown To Slack: Convert Markdown and GitHub Flavoured Markdown to Slack BlockKit block objects 🔀💬
Functional helpers for working with a GraphQL AST
find all require/import calls by walking the AST
A simple, extendable markdown renderer for your terminal.
Simple tools for working with immutable trees
Reverts the php-ast AST back into (somewhat) PSR-compliant code
Parse CSS, Sass, SCSS, and Less into a unist syntax tree
libclang for Delphi
Parse programming languages syntax into an AST using PEGs with ease (LPeg Extension).
👟 Tiny and fast ESTree-compliant AST walker and modifier.