@laund thinking out loud:
- seeing an assignment in an `if` (in reality `if let`) condition is like having a scar in your mouth: it draws away my attention because it looks like wrong syntax
- having the subject of my "test" at the right-hand side of an expression feels backwards, esp. because if I destructure a value it "goes" from right (from the variable under test) to left (to the left-hand part of `let`), then jumps right to the code block where I can use it.
Based on this something like this would feel more natural to me (but I have no experience in language design, hence my question):
```
if x match Foo::Bar { ... };
if y_with_val match Foo::Baz(val) { /*...work with val...*/}
```