effects

evalMap

Stream('a', 'b', 'c').evalMap(_.pure[IO]).compile.toList

diagram

evalMap (with chunks)

Stream('a', 'b', 'c').evalMap(_.pure[IO]).compile.toList

diagram

evalMap2

Stream('a', 'b', 'c')
  .evalTap(char => IO(s"$char 1"))
  .evalTap(char => IO(s"$char 2"))
  .compile
  .toList

diagram

evalMap2 (with chunks)

Stream('a', 'b', 'c')
  .evalTap(char => IO(s"$char 1"))
  .evalTap(char => IO(s"$char 2"))
  .compile
  .toList

diagram

exec

Stream.exec(IO('a').void).compile.last

diagram

exec (with chunks)

Stream.exec(IO('a').void).compile.last

diagram

eval

Stream.eval(IO('a')).compile.last

diagram

eval (with chunks)

Stream.eval(IO('a')).compile.last

diagram

parEvalMap

Stream('a', 'b', 'c', 'd', 'e')
  .parEvalMap(2)(char => IO.sleep((105 - char.toInt).seconds).as(char))
  .compile
  .toList

diagram

parEvalMap (with chunks)

Stream('a', 'b', 'c', 'd', 'e')
  .parEvalMap(2)(char => IO.sleep((105 - char.toInt).seconds).as(char))
  .compile
  .toList

diagram

parEvalMapUnordered

Stream('a', 'b', 'c', 'd', 'e')
  .parEvalMapUnordered(2)(char => IO.sleep((105 - char.toInt).seconds).as(char))
  .compile
  .toList

diagram

parEvalMapUnordered (with chunks)

Stream('a', 'b', 'c', 'd', 'e')
  .parEvalMapUnordered(2)(char => IO.sleep((105 - char.toInt).seconds).as(char))
  .compile
  .toList

diagram