I also spent some time yesterday to see what pegs needs to run at compile time. My first quick hack was the same as chrishellers: drop init() and move its contents into parsePeg.
After that I ran into a few places where the pattern buffer is accessed out of bounds (always len+1). I suspect this is by design, because the PegLexer buf is declared as cstring instead of normal string, which makes this valid because of the trailing '0'. I guess this works fine at run time, but the VM does not like this trick. Fixing these three or four places results in my peg expression properly being parsed at compile time, but then I ran into this one: `Error: invalid type for const: Peg` Unfortunately, I'm lost here. It seems that inherited types can not be used for consts, but I have no clue why, and if there is a possible mitigation for this.
