It's interesting how forcing/using a wildcard is considered a best practice in Rust and yet it's considered an anti pattern in Haskell and OCaml. I wonder how that cultural difference came about
I think OCaml at least lets you force this with polymorphic variants?
Also interesting to compare to older Miranda/Haskell style, which leaned much more on partial functions.