Putting aside legacy issues for the moment,
I suggest that it might be appropriate to rename the .grep list
operator to .where, so we can say, for example:
@filtered = @originals.where:{ .foo eq $bar };
We already have a "where" keyword in the language, which is used for
very similar things, and I think it would be reasonable that users
would see it used in other situations and think they can use it for
filtering a list too.
Moreover, to people who don't come from the Unix command line, or in
general, the term ".where" is more descriptive to what is actually
happening, and as well, it strongly resembles the english statement
for what is happening.
If we want to keep .grep too, it should be an alias, like != is an
alias to !==, but I think letting people use "where" instead would be
a very good thing.
-- Darren Duncan