Topic

ast

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.

Repositories (1648)

mulang
mulang mumuki Haskell

:bamboo: Universal, Multi Language, Multi Paradigm code analyzer

123
codemark
codemark DanielCardonaRojas Rust

A semantic code bookmarking system for humans and agents

123
performance-decorator
performance-decorator Wscats

🏇User behavior & Function execution tracking solution - 大型前端项目的用户行为跟踪,函数调用链分析,断点调试共享化和复用化实践

123
gm-exec
gm-exec AnEntrypoint JavaScript

wanna develop an app ❓

122
yacep
yacep tupac-amaru C#

yet another csharp expression parser

121
gorm2sql
gorm2sql liudanking Go

auto generate sql from gorm model struct

121
astexplorer.app
astexplorer.app JamieMason TypeScript

An https://astexplorer.net wrapper which adds module bundling and hot reloading.

121
flutter_ast
flutter_ast rodydavis Dart

Flutter and Dart AST Analyzer/Parser

121
astmaker
astmaker linkdd Rust

Build Abstract Syntax Trees and tree-walking models quickly in Rust.

121
starlasu-kotlin
starlasu-kotlin Strumenta Kotlin

Starlasu - A Language Engineering Framework

120
hlb
hlb openllb Go

A developer-first language to build and test any software efficiently

118
rector-phpunit
rector-phpunit rectorphp PHP

Rector upgrade rules for PHPUnit

117
ex_dna
ex_dna elixir-vibe Elixir

Code duplication detector powered by Elixir AST analysis

116
swift-mod
swift-mod ra1028 Swift

A tool for Swift code modification intermediating between code generation and formatting.

116
GoSQLX
GoSQLX ajitpratap0 Go

High-performance SQL parser, formatter, linter & security scanner for Go - 1.5M+ ops/sec, multi-dialect, zero-copy, race-free

115
deno_swc
deno_swc littledivy JavaScript

The SWC compiler for Deno.

115
abstract-syntax-tree
abstract-syntax-tree buxlabs JavaScript

A library for working with abstract syntax trees.

115
RESSA
RESSA rusty-ecma Rust

Rusty EcmaScript Syntax Analyzer

114
grit
grit rtk-ai Rust

Git for AI agents — zero merge conflicts, any number of parallel agents, same codebase

114
cybermonday
cybermonday activexray Clojure

Markdown as Clojure Data

113
babel-plugin-react-persist
babel-plugin-react-persist DAB0mB JavaScript

Automatically useCallback() & useMemo(); memoize inline functions

112
reson
reson nexepic Rust

A high-performance tool for detecting code duplication based on Abstract Syntax Tree (AST).

112
inmemantlr
inmemantlr julianthome Java

ANTLR as a libray for JVM based languages

111
show_ast
show_ast hchasestevens Jupyter Notebook

An IPython notebook plugin for visualizing ASTs.

110
parcera
parcera carocad Clojure

Grammar-based Clojure(script) parser

109
translate-readme
translate-readme ephraimduncan JavaScript

Translate Github Readme to any other Language

108
estemplate
estemplate estools JavaScript

Proper (AST-based) JavaScript code templating with source maps support.

106
parser-series
parser-series tlaceby Go

Welcome to my comprehensive YouTube series on building a lexer/parser using the Go programming language. We will start with the basics of what lexers...

106
astviewer
astviewer titusjan Python

Python Abstract Syntax Tree viewer in Qt

105
code-index-mcp
code-index-mcp Regsorm Rust

Поиск по коду для ИИ-агентов: 32 инструмента MCP, индекс на SQLite, один бинарник без зависимостей. Разбирает выгрузки 1С:Предприятие — Конфигуратор и...

105
pyccolo
pyccolo smacke Python

Declarative instrumentation for Python.

104
elm-markdown
elm-markdown pablohirafuji Elm

Pure Elm markdown parsing and rendering

102
ts-evaluator
ts-evaluator wessberg TypeScript

An interpreter for Typescript that can evaluate an arbitrary Node within a Typescript AST

102
parser-reflection
parser-reflection goaop PHP

Parser Reflection API - Provides source code analysis without loading classes into the PHP memory

101
uaiso
uaiso ltcmelo C++

A multi-language parsing infrastructure with an unified AST

100
apidom
apidom swagger-api TypeScript

Semantic parser for API specifications

100
charly-vm
charly-vm KCreate C++

Fully parallel dynamically typed programming language

99
unplugin-ast
unplugin-ast unplugin TypeScript

Manipulate the AST to transform your code.

99
stack-editor
stack-editor Cirru Cirru

[Deprecated, prefer calcit-editor]

98
Headache
Headache LucasMW C

Programming Language that compiles to 8 Bit Brainfuck

98
clickhouse-ast-parser
clickhouse-ast-parser JiamingMai Java

AST parser and visitor for ClickHouse SQL

98
Onboard-CLI
Onboard-CLI animesh-94 TypeScript

An AST-powered, local-first CLI that visualizes complex system architectures and enforces architectural boundaries via instant Git hooks.

97
sass-lint-auto-fix
sass-lint-auto-fix srowhani TypeScript

Automatically resolve s(a|c)ss linting issues

96
ts-type-info
ts-type-info dsherret TypeScript

TypeScript AST and code generator [Deprecated]

95
proleap-vb6-parser
proleap-vb6-parser uwol Java

ProLeap ANTLR4-based parser for Visual Basic 6.0

95
smlfmt
smlfmt shwestrick Standard ML

A custom parser/auto-formatter for Standard ML

94
xast
xast syntax-tree

Extensible Abstract Syntax Tree

94
clang-plugins-demo
clang-plugins-demo nsumner C++

A simple example of defining custom plugins for clang and the clang static analyzer.

94
raddsl
raddsl true-grue Python

Tools for rapid prototyping of DSL compilers

92
progex
progex ghaffarian Java

PROGEX (Program Graph Extractor); a cross platform tool for extracting graphical program representations from software source code

90