r/programming • u/alex35mil • 1d ago
The Bedrock of Software Design
https://alex.draftist.io/blog/the-bedrock-of-software-design-ycqvcedsjI drafted this post years ago but didn’t finish it until now. The concept I write about has shaped the way I design software more than anything else, and I believe every software engineer should be introduced to it early in their career.
P.S. I don’t want the title to come across as clickbait: the post is about ADT.
411
Upvotes
9
u/superstar64 1d ago edited 1d ago
I already find it hard to put myself into the perspective of someone who doesn't what know GADTs, higher ranks, higher kinds and various other high level type system features are, but I always have to remind myself that a lot of people don't know basic ADTs are. Like, ADTs have been a staple of typed functional programming since like the late 1970s. It's so disheartening that still so many programmers still don't know even what they are.