Considering it is impossible for the callbacks to tamper with their caller's data using my solution, I don't see why one needs to try even harder. Unless you don't trust yourself, which is why we use strictures and friends. However, that's an entirely different issue, not paranoia. Perl is not a language for the paranoid, anyway.