<div dir="ltr">Our Flussonic is using neotoma to parse our own config.<div><br></div><div>Neotoma creates parser, this parser reads text config.</div><div><br></div><div>It was great, users were really happy when we changed from erlang syntax to our own syntax, but now time to pay came.</div><div><br></div><div>One user came with 280 KB config file (written by hands, yes). Neotoma parser parses it during 45 seconds.</div><div><br></div><div>We've met with this problem earlier in our pulsedb library, when we changed very small (one screen) parser from neotoma to yecc and got 50-100 times speedup.</div><div><br></div><div>Now it is not easy to do it, because our config parser takes about 1000 lines of peg file.</div><div><br></div><div>I don't undertand what is the problem with speed of neotoma parser:</div><div>1) is it a nature of state machines that it generate?</div><div>2) is it a forgotten switch [{disable_slow,true}] in options?</div><div>or is it something else?</div><div><br></div><div>Maybe there is a simple thing that we can do with neotoma for it to generate faster parser?</div><div><br></div></div>