Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

There's no parser generator; its primary purpose is to document how a format looks and works (similar to what ABNF and EBNF do). I am trying to make it consistent enough that tools could be made for it, however.

The & is something I added later, and I thought I'd updated all of the examples but I must have missed some. Using whitespace as an operator was just causing too much trouble and making the more complex grammars harder for a human to follow, which is why I opted to make every operation require an actual symbol, and leave whitespace without semantic value.



> Using whitespace as an operator was just causing too much trouble and making the more complex grammars harder for a human to follow…

Something (it’s late and I don’t quite remember) I’ve been playing with lately defines a rule named ‘_’ as the whitespace token so the grammars are both easily read and clear. Be like:

  _ = [ \t]+
  a = b _ (c | d) _ e




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: