Don't think it's practical/good to make people learn >>=, <$>, <*>, <|, <|* to decode JSON.
Alternative pragmatism:
Conversation
What power specifically are you concerned about lacking? The ability to define a function over unknown monads?
2
The ability to say
func fish<A, B, C, M : Monad>(f : A → M<B>, g : B → M<C>) → A → M<C>
1
Sure. I don't think that having that power will particularly help win industry engineers over to a monadic parser proposal.
2
Like there’s the “I can get rid of these if lets” moment or the “holy crap, ((→)r) is a monad” moment.
1
I get it. I just don't think it's the high-order bit at play here. I think the concepts are "too far from hand" and need priming.
1
So… Patterns. No need for concepts. “This object is immutable and has a method called -andThen that makes changed copies” 💥
2
Yeah. I think that's the path.
1
<3 the Internet. So much talking past each other.
Thanks for hearing me out.
1
Replying to
Yeah, I think you said that early on, and I didn't understand what you were trying to say. Prime with patterns; concepts later.


