@J-James has resolved the var/non-var by just using the mutability of the variable, if you match on a mutable variable it's mutable, and same for immutable.
> There's some ways to one line if/else matches but they're all kinda hacky. What you think `if (circ: Circle) from shape` is hacky?! It's hardly readable! :P