From 303d73960d49a67f45d7b653bbeff5b6c0b4efa7 Mon Sep 17 00:00:00 2001 From: Andrew Chambers Date: Thu, 14 Oct 2021 16:43:31 +1300 Subject: Update readme. --- README.md | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/README.md b/README.md index bc9cbe2..1f960e5 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,8 @@ Non Goals: # Building +Install the [peg/leg](https://www.piumarta.com/software/peg/) parser generator, make and a C compiler and run: + ``` make ``` @@ -27,6 +29,23 @@ leg asm.peg > asm.peg.inc cc -O2 *.c -o minias ``` +# Notes + +- Minias deliberately does not free data as it all is + freed by the OS at the end of execution. In the future + we one ould use an arena allocator for minias and still + avoid manual calls to free. + +- Minias deliberately kept the peg grammar quite repetitive + and simple, please keep it this. + +- Our performance is quite fast, but with the current design + it is limited by the parser, it would be interesting + to see if we can improve the parser generator upstream. + +- One day it would be nice to write a 'minipeg' in a single .c + file that can be bundled in projects. + # Resources - [intel reference](https://software.intel.com/content/dam/develop/external/us/en/documents-tps/325383-sdm-vol-2abcd.pdf) - Specifically chapter 2.1 and chapter 3.1. -- cgit v1.2.3