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 (1326)

rector-nette
rector-nette efabrica-team PHP

Rector upgrades rules for Nette

25
org-to-markdown
org-to-markdown k2052 JavaScript

org mode to markdown/mdx

25
clangml
clangml Antique-team C++

OCaml bindings for clang

24
vaceline
vaceline shqld TypeScript

Toolchains for VCL that parses, lints, formats, and transpiles

24
snapdragon-node
snapdragon-node here-be JavaScript

Snapdragon utility for creating a new AST node in custom code, such as plugins.

24
react-proptypes-generate
react-proptypes-generate dpzxsm JavaScript

A Vscode extension for react PropTypes, Support command line

24
macro-visit
macro-visit sangria-graphql Scala

A macro-based generic visitor generator

24
awesome-ruby-ast
awesome-ruby-ast rajasegar

A list of awesome tools and libraries which deals with ASTs in Ruby

24
astVisualizer
astVisualizer viswesh HTML

A tool to visualize abstract syntax tree.

24
codeverter
codeverter southworks TypeScript

Convert ts source files into multiple languages

24
prettier-transform
prettier-transform azz JavaScript

Perform AST transforms before running prettier

24
decaffeinate-parser
decaffeinate-parser decaffeinate TypeScript

A better AST for CoffeeScript, inspired by CoffeeScriptRedux.

23
macro
macro opennota Go

Expand macros in Go using go/ast. This repository has migrated to https://gitlab.com/opennota/macro

23
talk-maringa-ast
talk-maringa-ast sibelius JavaScript

Slides of my talk about Practical AST at Front in Maring

23
go-assert
go-assert huandu Go

Magic assert macros for Go.

23
jast
jast DhaliwalX C++

JavaScript AST in C++

23
cppcombinator
cppcombinator MoserMichael C++

parser combinator and AST generator in c++17

23
fastobo-py
fastobo-py fastobo Rust

Faultless AST for Open Biomedical Ontologies in Python.

23
Sodium-Programming-Language
Sodium-Programming-Language Instruction-Oriented-Programming Python

Sodium is a general purpose programming language which is instruction-oriented (a new programming concept that we are developing and devising) [Still...

23
scope-analyzer
scope-analyzer goto-bus-stop JavaScript

simple scope analysis for javascript ASTs

22
wx2bd
wx2bd xujie-phper

微信和百度小程序的互转工具,脚本转换率目标为100%,持续更新中~~

22
LebJS
LebJS LebsterFace Java

My attempt at a JavaScript engine

22
rehype-dom
rehype-dom rehypejs JavaScript

HTML processor to parse and compile with browser APIs, powered by plugins

22
getrector-com
getrector-com rectorphp PHP

Rector Website

22
QinScript
QinScript Yaser-wyx TypeScript

A scripting language used to learn the principles of compilation

22
deco
deco vic Elixir

Minimalist Function Decorators for Elixir

21
gaq
gaq tamayika Go

GAQ(Go Ast Query) is the library to query ast.Node children like JavaScript querySelector or querySelectorAll for Go.

21
xgo
xgo Kretech Go

Go Components

21
gram-js
gram-js gram-data JavaScript

Gram in javascript.

21
parsers-compilers
parsers-compilers begin

Lexers, tokenizers, parsers, compilers, renderers, stringifiers... What's the difference, and how do they work?

21
open-fortran-parser-xml
open-fortran-parser-xml mbdevpl Fortran

XML output generator for Open Fortran Parser, and Python wrapper for it.

21
html-ast-transform
html-ast-transform jspaine TypeScript

Transform html with helpers for manipulating an AST

21
verilogAST-cpp
verilogAST-cpp leonardt C++

C++17 implementation of an AST for Verilog code generation

21
ninny-json
ninny-json nrktkt HTML

JSON typeclasses that know the difference between null and absent fields

21
ast-builder
ast-builder rajasegar JavaScript

Build your ASTs directly from code

21
filter-parser
filter-parser scim2 Go

SCIM v2 Query Filter Parser in Go

21
async2rewrite
async2rewrite tylergibbs2 Python

Automagically converts discord.py async-branch code to rewrite-branch code.

20
ts-alias-transformer
ts-alias-transformer ksaldana1 TypeScript

TypeScript AST transformer to resolve type aliases into fully formed interfaces

20
rector-cakephp
rector-cakephp deprecated-packages PHP

[DEPRECATED] Use following package instead

20
tiny-compiler
tiny-compiler arjunsk Java

Tiny Compiler in plain Java. Covers examples for AST, JDT, ANTLR & JavaParser

20
jsdast
jsdast geut JavaScript

JSDoc Abstract Syntax Tree

20
fastobo
fastobo fastobo Rust

Faultless AST for Open Biomedical Ontologies.

20
dedupimport
dedupimport nishanths Go

Deduplicate named and unnamed imports of the same import path in Go files

19
dive-into-ast
dive-into-ast azu

Dive into AST(Abstract Syntax Tree) in JavaScript.

19
bsparser
bsparser lead-tools 1C Enterprise

[RIP] Парсер встроенного языка

19
ctxexp-parser
ctxexp-parser WumaCoder JavaScript

In the dynamic execution of JS language environment (wechat applet) to execute JS class calling function.

19
macschema
macschema progrium Go

Toolchain for generating JSON definitions of Apple APIs

19
sdk
sdk codeconverter C#

SDK for CodeConverter.net

18
iroun
iroun pistis JavaScript

Name analyzer written in Javascript

18
astcopy
astcopy go-toolsmith Go

Package astcopy implements Go AST deep copy operations.

18