Рассмотрим следующий фрагмент
def sayManyTimes(a: String): IO[String] = IO(a * 3)
(1 to 2).foldLeft("Read this: ")((c, i) =>
c + sayManyTimes("mayo").unsafeRunSync)
Теперь, это дает желаемый результат, но не идеально, потому что это небезопасная операция.
Я хотел бы реструктурировать код так, чтобывторая строка, вместо возврата строки, возвращает IO
, который создаст строку.