-
Notifications
You must be signed in to change notification settings - Fork 35
Home
Olivier Duhart edited this page Dec 3, 2017
·
13 revisions
Welcome to the csly wiki!
this wiki presents the main functionnality of CSLY.
#LY is a parser generator halfway between parser combinators and parser generator like
I needed a solution for building parsers and found all existing solution either
- too complicated to integrate with an additional build step as with ANTLR )
- or too different from the classical BNF notation (as parser combinators like sprache or Eto.Parse). These tools are great, but I don't feel comfortable with them.
SLY is highly inspired by the python lex yacc library (PLY)
The parser and lexer implementations fully reside in a single class. The class describes
- every token definition for the lexer
- every grammar rule and its associated action to transform the syntaxic tree.
#LY is a composite library :
- a lexer component allows to easily write a lexer/ scanner
- a parser component allows to write parsers with
- finallly an expression parsing component silplifies the write of expression parsers.
Install from the NuGet gallery GUI or with the Package Manager Console using the following command:
Install-Package sly
or with dotnet core
dotnet add package sly