the parsing module example is at
Parse::RecDescent Example
About comments: what i've found so far is that comments are a very personal thing, i.e. gibberish to others that may confuse further. The one must have comment in any code is the standard header: author, date created, last modified. the last one "last modified" being most important that that field is kept up to date.
I think we all here understand that you'll be judging the code (not the programmers) by the comments; alas everyone posting so far (including myself) deplore the idea of using such a measure, as it would be the worst of the metrics to use.