I am just getting started with Parse::RecDescent
, a powerful mind bender if there ever was one, to build a parser for a somewhat obscure language and am a bit flummoxed at the first hurdle.
Like many languages, semicolons separate statements. However, there may be semicolons in quotes; e.g.,:
This is a statement ; Another statement ;
A statement "with a quoted ';'" ;
I am inclined to start with something like
startrule: statement(s /;/)
but am stuck on how to elegantly handle the quoting issues. Does one need to resort to a big, nasty regex or is there a more elegant way?
I've taken a look at resources such as the Parse::RecDescent Tutorial but haven't been able to find an answer. This seems the kind of thing that P::RD monks would have encountered on many an occasion.