Documentation
The HTML based documentation, included in the package, addresses the following topics:
- The main part of the document (user tutorial) describes the grammar specification language, special features and how to apply the scanner and parser generator in order to create your own scanner and parser application.
- The reference section explains the (most important) libraray functions as well as the generator and helper programs.
- A few example applications and grammars for some modelling and programming languages are also included in the Styx package.
For more information, please refer to the online documentation.
Example Grammars
The below listed example grammars should give you an impression of the Styx modelling technique.
Language | Styx Grammar | Styx Version | Notes |
---|---|---|---|
XML according version 1.0 of the W3C specification |
xml.tar.gz ( view ) |
>= 1.6 | separated DTD grammar, embedded in the main XML grammar |
Express, ISO 10303 Part 11 STEP exchange format, ISO 10303 Part 21 |
step.tar.gz ( view ) |
>= 1.6 | nested comments |
Smalltalk 80 (not compatible with GNU smalltalk) |
st.tar.gz ( view ) |
>= 1.7 | The scanner must have enabled n character lookahead. |
PHP 5.2 | php52.tar.gz ( view ) |
>= 1.7 | pattern token evaluation dynamic scan group switching 4 shift/reduce conflicts regarding the elseif/else constructs, solved by the default shift action |
JSON | json.tar.gz ( view ) |
>= 1.8 | EBNF-like grammar notation |
Lua 5.2 | lua.tar.gz ( view ) |
>= 2.0 | The scanner must have enabled n character lookahead. 3 reduce/reduce conflicts, solved by explicit reduction rules |
Example Projects
The below listed projects uses Styx as compiler frontend.
If you would like to get your Styx grammar or project listet here, please send us a mail.