It took me some time to get to grips with the syntax to use with Yapp, but following the examples is definitely the easiest way to go. Once you've learnt how to use this module you can achieve very effective results with a minimum of effort.
You can optionally compile Parse::Yapp into your generated module to make a "Standalone Parser". If you use more than one standalone parser you get lots of redefined warnings related to the embedded Driver module.
Otherwise an excellent module that does what it does with the minimum of fuss.