At the end of the day, what's the advantage of new syntax, over "matches"?
Incidentally, isn't match a special case of |> ? After all, PartialFunction extends Function1. Match essentially takes an argument on the left and a PartialFunction on the right, and applies the PartialFunction with the argument. Only, it requires it to be a PartialFunction literal, and takes advantage of that fact to perform optimizations.
But couldn't you have a syntax that could take any function, and would optimize partial function literals, and still work on other functions?
Sorry for getting off topic, partially I'm wondering if the above (that is, any hypothetical scenario where the above influences scala in the future in any way) has any impact on your idea.