1
Scalaz повторяет: «Поднимает» EnumeratorT для соответствия «IterateeT» для «большей» монады
Если у меня есть EnumeratorTи соответствующий, IterateeTя могу запустить их вместе: val en: EnumeratorT[String, Task] = EnumeratorT.enumList(List("a", "b", "c")) val it: IterateeT[String, Task, Int] = IterateeT.length (it &= en).run : Task[Int] Если монада перечислителя "больше", чем монада итерируемого, я могу использовать upили, в более общем смысле, Hoist"поднять" итератора для сопоставления: …