estoy corriendo en unos pocos lugares en los que tengo bastantes algo parecido a¿Existe una forma más idiomática de obtener IO [Opción [A]] de la Opción [IO [Opción [A]] y luego usar secuencia y asignación de correspondencia?
def f(s: String): Option[Long] = ...
def g(l: Long): IO[Option[Wibble]] = ...
val a: IO[Option[Wibble]] = f(param).flatMap(g).sequence.map(_.join)
Al ver la .sequence.map(_.join)
repiten una y otra está empezando a molestarme. ¿Hay una forma más idiomática de lograr lo mismo?
¿Estás seguro de los tipos en el ejemplo? El tipo de g no parece compatible con flatMap allí para mí. –
Si le entiendo correctamente, quiere hacer exactamente eso: http://stackoverflow.com/questions/5968345/un-optioning-an-optioned-option –