You make a very good point, and one that I whole-heartedly agree with. As I said, I wouldn't use this sort of thing in real code, but I thought it's worth demonstrating that there are cases where it's quite useful to be able to declare a variable of static lifetime without having to create an enclosing scope. Yes, I see that it can be done with tie, though I usually avoid tied variables after having had a few nasty experiences with their performance. The requisite caller
voodoo makes a tied implementation even less appealing.
s aamecha.s a..a\u$&owag.print