in reply to undef and empty variables
However you should use warnings because it will catch other things, and so should include the defined check to avoid that warning. Furthermore think carefully about your data. It could be that "" is a valid value. Therefore my natural inclination would be to keep "" as a valid value, and map undef to null.