in reply to Re^4: WHY DOESN'T THIS WORK
in thread WHY DOESN'T THIS WORK

length[$QMName]

When I first saw this expression and the others like it, I thought "No way that compiles! This guy's not even showing us the code he's using!" Lo and behold:

c:\@Work\Perl\monks>perl -wMstrict -le "our $Depth; $Depth = 'foo'; ;; if (length[$Depth] != 0) { print 'THIS WORKS?!?'; } ;; if (length[] != 0) { print 'THIS WORKS TOO?!?!?'; } " THIS WORKS?!? THIS WORKS TOO?!?!?
The trick, I now realize, is that  [ ... ] is the anonymous array constructor. The  [$Depth] and  [] expressions build anonymous arrays of one and zero elements, respectively, and return references to the arrays. The reference is then stringized and its length (always non-zero) taken and compared to zero. If having meaningful code doesn't help you with your issue, you have a very, very serious problem indeed.


Give a man a fish:  <%-{-{-{-<