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.
.NET LINQ in JavaScript
AST-based fragmental source code refactoring toolkit for Python
It's Python with a Lissp.
竜 TatSu generates Python parsers from grammars in a variation of EBNF
Comprehensive tree-sitter grammar compilation with polyglot bindings — Rust, Python, Node.js, Go, Java, Ruby, Elixir, PHP, C#, WASM, Dart, Kotlin-Andr...
High performance JavaScript to JavaScript compiler with a Rust core
:open_file_folder: generic protocol generator based on golang's text/template (grpc/protobuf)
HexRays ctree visualization plugin
Dark magic delights in Python
A tool that allows you to analyse your Elm code, identify deficiencies and apply best practices.
Find all calls to require() no matter how deeply nested using a proper walk of the AST
Internationalize react apps within a lunch break
Function decorators for Elixir
Compile-time i18n toolkit that requires zero code changes and produces the smallest possible bundles. Supports React, Svelte, SolidJS, Astro, and more
A source-to-source transpiler for Python to Go translation
deep, reliable and confidential coding-context
A library to parse C/C++ source as AST
A curated list of awesome resources for Graal, GraalVM, Truffle and related topics
A self-hosted server for source code parsing
User Guides For those new to the LLVM system.(LLVM系统的新用户指南,中文翻译版)
Generic AST parsing library for kotlin multiplatform
CLI tool for quick size measure of PHP project, used PHP features and more. Zero dependencies. Runs anywhere
Yet another simple Postgres SQL parser
Check exhaustiveness of switch statements of enum-like constants in Go source code.
render abstract syntax trees with react
An 100% spec compliant ES2022 JavaScript toolchain
Mathematical expression parsing and calculation engine library. 数学表达式解析计算引擎库
utility functions for working with typescript's AST
babygo👶 is a small Go compiler made from scratch, which can compile itself. It's going to be the smallest and simplest go compiler in the world.
:diamond_shape_with_a_dot_inside: transform html with javascript plugins
MCP Server for Tree-sitter
Convert Go values to their AST
A golang source code scanner, this time in sql :)
Parse SQL (select) statements into abstract syntax tree (AST) and convert ASTs back to SQL.
Safe-to-use proc-macro-free self-referential structs in stable Rust.
A `typescript-go` toolchain for compiler-powered plugins + type-safe execution + 800x faster linter + codegraph reducing 90% AI tokens
An Elixir tool for checking safety of database migrations.
⚡️ Automatically add Trace Spans to Go functions
esmangle is mangler / minifier for Mozilla Parser API AST
Simple Swift interpreter for the Pascal language inspired by the Let’s Build A Simple Interpreter article series.
Contains source-code for viewers following along with my Beginners Guide To Building Interpreters series on my Youtube Channel.
JavaScript & Node.js open-source SAST scanner. A static analyser for detecting most common malicious patterns 🔬.
Generate PlantUML class diagrams to document your Python application.
Custom Python linting through AST expressions
Automatic test case generation for python and static analysis library
Conditions query translator for everything
ECMAScript parsing infrastructure for multipurpose analysis
Rector for TYPO3
A Go source transformation tool for generics
SQL(select) parser written with jison. parse SQL into abstract syntax tree(AST) and stringify back to SQL. sql grammar follows https://dev.mysql.com/d...