Strictly speaking, nothing. Stylistically speaking, it's not a good way to
write maintainable code. That's because you're using these constructs not
for their return values but rather for their side-effects, and side-effects
can be mystifying. There's no void grep that's not better written as a for
(well, foreach
, technically) loop.