-
Updated
Oct 11, 2020 - TypeScript
{{ message }}
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.
ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.
Powerful data visualization library based on G2 and React.
Rust parser combinator framework
Style and Grammar Checker for 25+ Languages
A grammar of graphics for Python
A parser library for Go
The rust code in the .lalrpop files are still on rust 2015 and need to be manually updated since cargo fix won't work on those files.
We should also update the generated code to emit 2018 idiomatic code (see #2018 )
Parsing Expression Grammar Template Library
Parsing Expression Grammar (PEG) parser generator for Rust
A powerful grammar checker for Vim using LanguageTool.
Hunspell dictionaries in UTF-8
a simple syntax for complex argumentation
Generation-based, context-free grammar fuzzer.
The fast scanner generator for Java™ with full Unicode support
An open source cross-platform programming language focused on efficiency.
Documenting All Ruby Specialities 💎︎
C++ Mathematical Expression Parsing And Evaluation Library
I'm using link-grammar-5.3.15.
This one didn't work for me:
https://github.com/opencog/link-grammar/blob/master/bindings/java/org/linkgrammar/LinkGrammar.java#L43
Even when I added /usr/local/lib to jvm props:
java.lang.UnsatisfiedLinkError: no liblink-grammar in java.library.path
I fixed it by replacing that line into:
System.load("/usr/local/lib/liblink-grammar-java.so")
Simple Swift interpreter for the Pascal language inspired by the Let’s Build A Simple Interpreter article series.
English verb conjugation for Ruby (and Rails)
Dynamic parser combinators in Dart.
The Hunspell binding for nodejs that exposes as much of hunspell as possible and also adds new features. Hunspell is a first class spellcheck library used by Google, Apple, and Mozilla.
Perhaps it should be opt-in, but most usage would expect a BOM is ignored.