for the boring real-world software I write I do not feel the need for monads and the other fancy stuff.
reduce and flat_map and frieds take you a long way.
And using lists like [1,2,3] ++ [] ++ [4] is nearly a monad isn’t it?
As for design patterns, the picture you posted is correct (Its from Scott Wlaschin, right? https://fsharpforfunandprofit.com/). But there are some helpful architectural patterns, like






















