in reply to Simple Noob Question

B::Deparse, use it
$ cat junk.pl ! defined and $_ = ' ' for @$row; $ perl -MO=Deparse,-p junk.pl ; (defined($_) or ($_ = ' ')) foreach (@$row); junk.pl syntax OK

I've never understood what this means '$_',

Then you haven't read perlintro, go read it now, and try out the examples.

Also see perlvar, it also explains $_

In other words, what does @$row mean or what is it accomplishing?

It is de-referencing, see references quick reference, basically

my @array = 1 ..2; print "@array\n"; my $ref = \@array; print "@$ref\n"; __END__ 1 2 1 2