Try out a date:
parse!
Grammar (
https://en.wikipedia.org/wiki/Parsing_expression_grammar
)
The finished grammar will follow the JavaScript spec's normal format, this is a prototype.