Раз уж такая тема зашла. Про монады чатенько говорят, что они нужны для вычислений с эффектом. Например, последовательность запросов на бек и обработка их респонсов. Или операции ввода вывода, когда мы ждем, что пользователь что-то нажмет. А вот где могут пригодиться комонады? У них есть extract и extend. Что это за методы как работают - это понятно. Но зачем они нужны?