Your scheme would still need to evaluate the conditional twice (once in boolean context, and once in either scalar or list context), so if that's what youre looking to stop you're out of luck. There wouldn't be anything to stop you from bodging this together as a new parser rule for perl 6, I suppose.