I believe some of the work @ElegantBeef has done with [fungus](https://github.com/beef331/fungus/tree/commonfields) is useful to consider. In particular, how to handle var vs non-var matches? Also, having a conical if/else idiom would be useful. There's some ways to one line if/else matches but they're all kinda hacky.
- Algebraic data types and structural pattern matching RFC j-james
- Algebraic data types and structural pattern matching ... alexeypetrushin
- Algebraic data types and structural pattern match... mratsim
- Algebraic data types and structural pattern m... j-james
- Algebraic data types and structural patte... xigoi
- Algebraic data types and structural ... j-james
- Algebraic data types and structu... xigoi
- Algebraic data types and str... elcritch
- Algebraic data types and str... ElegantBeef
- Algebraic data types and str... elcritch
- Algebraic data types and str... j-james
- Algebraic data types and str... j-james
- Algebraic data types and str... xigoi
- Algebraic data types and str... PMunch
- Algebraic data types and str... mratsim
- Algebraic data types and str... elcritch
- Algebraic data types and str... ElegantBeef
- Algebraic data types and str... j-james