Вот хорошее объяснение из документации:
В терминах Arrow Monad - это интерфейс с двумя операциями: просто конструктор и flatMap
Arrow обеспечиваетобе документации для Monad и более длинных Объяснение Monad .
Однако, в кратком и не академическом смысле, Monad можно рассматривать как шаблон проектирования для безопасногоцепные звонки.Если вы использовали Stream API в Java, вы использовали монады.Если вы использовали обещания в JavaScript, вы использовали монады.