«I’m a monoid in category of endofunctors» — что это значит?
Определение монады в теории категорий. Соответственно, чтобы понять это определение, придётся теоркат изучить хотя бы в основах. Поверхностно познакомиться с вопросом поможет тысяча и одна статья, которые гуглятся по этому определению. Например эта или эта.
Добавлю для информации, что монада очень легко объясняется по-другому: это вычисление с эффектом.
На Haskell заменяем определение функции (т.к. функция может быть и параметром, то всё сводится к одному параметру):
а -> b
на стрелку Клейсли:
а -> m b
И тут же нам дают примеры. (можете посмотреть первый курс на Степике от Дениса Москвина)