Just a quick note to document a funny error.

I tried to remove trailing empty strings from an array of strings with the following code.

pop @msgstr while !length($msgstr[-1]);

This didn't work. Can you guess why? Solution under the fold.

This is an infinite loop if @msgstr contains only empty strings.

Replies are listed 'Best First'.
Re: How not to remove trailing empty strings from an array
by Neighbour (Friar) on Apr 16, 2013 at 14:32 UTC
      Nope, I suppose ambrus also wants to strip trailing ...
      ... undefs

      Cheers Rolf

      ( addicted to the Perl Programming Language)

Re: How not to remove trailing empty strings from an array
by LanX (Saint) on Apr 16, 2013 at 17:17 UTC
    the problem comes from ...

    ...stringification of undef to ""

    I thought

    could solve this, but no chance.

    Cheers Rolf

    ( addicted to the Perl Programming Language)