diff options
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/README.md b/README.md new file mode 100644 index 0000000..ebed7d7 --- /dev/null +++ b/README.md @@ -0,0 +1,30 @@ +# MRY + +## Grammar Files + +The grammar file needs to be in the following format: + +``` +main -> expression +expression -> binary_operation | number | '(' expression ')' +binary_operation -> expression binary_operand expression +binary_operand -> '+' | '-' | '*' | '/' +number -> digit number | digit +digit -> '0' | '1' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' +``` + +Where all terminals are in single-quotes and the rest are non-terminals. + +> NOTE: +> The default entry point name is always `main` if you want to use +> a different one, use the `-e` or `--entry` option. + +## Running Benchmark + +To run benchmark of your grammar run: + +```sh +$ zig build run --release=fast -- benchmark <grammar-file> -i <input-file> +``` + +Where `<input-file>` contains test-strings on each line. |