6
pk76
5y

A highly efficient reusable pattern declaration and parsing engine.

Project Type
Existing open source project
Summary

A highly efficient reusable pattern declaration and parsing engine.

Description
This project was originally born out of a need for reusable patterns which could be defined in-language. It is based around pattern combination, a similar concept to parser combination but with drastically different characteristics. Patterns do not dictate how parsing occurs, only what to parse, so different parsers can be employed. This also enables advanced optimization techniques like automatic construction time pattern rewriting. You only need to describe what to parse, not how to parse it. The engine currently supports C# and VisualBasic directly, with first class bindings to F#. A lot was finished in the initial public release, but there's still a lot of room for feature experimentation and further optimization. Collaborators only need to know how polymorphism works and the difference between value and reference semantics. The rest can easily be explained from there.
Tech Stack
.NET, C#, VisualBasic, F#
Current Team Size
1
URL
Comments
Add Comment