Sure, "" can be confusing when crammed into the middle of a big list of values, and a bunch of spaces is even worse. It's really common, though, to write this code to get a default, false, defined string:

  my $value = $got || '';

It's got a certain charm about it that just isn't manifested by these:

  my $value = $got || $EMPTY;
  my $value = $got || q{};

This policy prohibits all-whitespace strings constructed by single or double quotes, except for the empty string when it follows the high-precedence ``or'' or ``defined or'' operators.


Ricardo SIGNES <rjbs@cpan.org>

Adapted from ValuesAndExpressions::ProhibitEmptyQuotes by Jeffrey Ryan Thalhammer


Copyright (c) 2006 Ricardo Signes and Jeffrey Ryan Thalhammer.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.