in reply to Parsing Templates

I heartily encourage you to stick with strict and -w. It can feel like a real pain at first to get used to them. It can seem like they are just getting in your way. But the warnings they produce are telling you that you have numerous latent or actual errors in the way you are doing things.

They will catch a lot of errors for you and your work will go much better once you get the knack and you will wonder how you ever got anything done without them.

In this case it is going to require you to rework how you make values available in your subroutines. But your code will be much more robust and easy to maintain once you get it strict/-w compliant.

It is hardest when you have to convert a sizable chunk of non-strict/w code that (almost) works the way you want. When you start out on a new project with strict and -w things go much easier. So call it penance, bite the bullet, face the music, clean things up, and get on with life as a better programmer trusting that your pals 'use strict' and '-w' will help you avoid errors that lesser beings still struggle with.

Programming is hard enough. We need all the help we can get.