bnf
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.
Here are 27 public repositories matching this topic...
Recognizes a formatted Backus-Naur form rule-set and solves left-recursions, performs factoring, and finds first sets.
-
Updated
Jul 27, 2020 - Python
-
Updated
Mar 29, 2022 - Python
frontend of a compiler for "TSLANG"(The Simple Language)
-
Updated
Nov 22, 2022 - Python
Simple parser for modified basicDTD LL(1) grammar written in Python
-
Updated
Feb 22, 2017 - Python
Python helper library to expand multi-lingual modified BNFs.
-
Updated
Jan 13, 2021 - Python
Generate random strings given a BNF grammar.
-
Updated
Apr 28, 2023 - Python
BNF parsing, formal grammar conversion, and string generation utilities in Python
-
Updated
Aug 6, 2022 - Python
Generate a sublime-syntax file from a non-left-recursive, follow-determined, context-free grammar
-
Updated
Dec 6, 2021 - Python
Simple SAT solver implementation using python. It also includes a BNF to CNF converter
-
Updated
Aug 21, 2022 - Python
Principles of Programming Languages Autumn 2019 Course Exercises.
-
Updated
Apr 23, 2024 - Python
A compiler to translate regular expressions (regular grammars) and LL1 BNF languages (subset of context free grammars) to generated scanners and/or parsers.
-
Updated
May 27, 2019 - Python
Small little context-free expression generator and parser using user provided EBNF-like source.
-
Updated
Oct 14, 2020 - Python
- Followers
- 10.4k followers
- Wikipedia
- Wikipedia