The article is very clear and accessible. Now I’d be curious to hear people’s practical experiences in leveraging the properties of algebraic data structures in their programs. It seems similar to UML: a great idea and a potentially impactful tool, which is very rarely used in practice.
Yeah, I’m really interested in that, too. It seems most interest is either formal verification or people that program in Haskell. I’m wondering how much if any practical value it has outside those groups. That is, outside it just being interesting and mind-expanding.
Algebraic data types are used extensively in Rust, where they’re called enums. It’s the same thing as a tagged union, but far more ergonomic thanks to pattern matching. If you want to understand their practical uses, I highly recommend reading some Rust code.
Once you become used to using them, it’s a pain to go back.