Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/stephan-tolksdorf/fparsec

A parser combinator library for F#
https://github.com/stephan-tolksdorf/fparsec

Last synced: about 2 months ago
JSON representation

A parser combinator library for F#

Awesome Lists containing this project

README

        

# FParsec

FParsec is a [parser combinator](https://en.wikipedia.org/wiki/Parser_combinator) library for [F#](http://fsharp.org/).

With FParsec you can implement [recursive‐descent](https://en.wikipedia.org/wiki/Recursive_descent_parser) text parsers for [formal grammars](https://en.wikipedia.org/wiki/Formal_grammar).

FParsec’s features include:
- support for context‐sensitive, infinite look‐ahead grammars,
- automatically generated, highly readable error messages,
- Unicode support,
- efficient support for very large files,
- an embeddable, runtime‐configurable [operator‐precedence parser](https://en.wikipedia.org/wiki/Operator-precedence_parser) component,
- a simple, efficient and easily extensible API,
- an implementation thoroughly optimized for performance,
- comprehensive documentation,
- a permissive open source license.

## Documentation

- [FParsec vs alternatives](http://www.quanttec.com/fparsec/about/fparsec-vs-alternatives.html)
- [NuGet packages and building FParsec from source](http://www.quanttec.com/fparsec/download-and-installation.html)
- [Tutorial](http://www.quanttec.com/fparsec/tutorial.html)
- [User's guide](http://www.quanttec.com/fparsec/users-guide/)
- [Parser quick reference](http://www.quanttec.com/fparsec/reference/parser-overview.html)
- [Reference](http://www.quanttec.com/fparsec/reference/)

## License

- *Code*: 2-clause BSD license ("Simplified BSD License")
- *Data*: FParsec includes some data derived from the Unicode Character Database which is distributed under the [Unicode, Inc. License Agreement](http://www.unicode.org/copyright.html#Exhibit1).
- *Documentation*: Creative Commons Attribution‐NonCommercial 3.0 Unported License

See the [www.quanttec.com/fparsec/license.html](http://www.quanttec.com/fparsec/license.html) for more details.