in reply to 'Out of memory!' Error with XML::Simple

This is covered in the XML::Simple FAQ. The cause of the problem is that you're treating an arrayref as if it was a hashref (as gjb pointed out).

There are a few more things worthy of consideration and I'd recommend you take a look at Does your XML::Simple code pass the strict test? for more complete coverage. But in brief:

The 'strict mode' link above has more detail.