aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Chambers <[email protected]>2021-10-14 16:43:31 +1300
committerAndrew Chambers <[email protected]>2021-10-14 16:43:31 +1300
commit303d73960d49a67f45d7b653bbeff5b6c0b4efa7 (patch)
treed6f6c00aae3314de43743ffc34c2f7921b5609ac
parent2d566c410d7c36cc267e0a2c3d4509391ab06d67 (diff)
Update readme.
-rw-r--r--README.md19
1 files changed, 19 insertions, 0 deletions
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.