> Think of the comma operator as the is expression.  It's a useful feature, but even advanced users may end up having to look up the documentation to remind themselves of its tricky semantics. Unless of course those experts practically implemented the feature. :)

The is expression is a lot more complex than the comma operator.  The comma operator has the same precedence as the comma in function calls, so the problem is usually forgetting it exists rather than now it works.

The is expression also cannot be trivially rewritten in terms of other constructs. Comma can be: `e1, e2` -> `{ e1; return e2; }()`.