Take an example from some floating point documents, but with a theoretical twist.
import scalaz.stream._ import scalaz.concurrent.Task val converter: Task[Unit] = io.linesR("testdata/fahrenheit.txt") .filter(s => !s.trim.isEmpty && !s.startsWith("//")) .map(line => fahrenheitToCelsius(line.toDouble).toString) .intersperse("\n") .pipe(text.utf8Encode) .to(io.fileChunkW("testdata/celsius.txt")) .run
In this case, the file may well contain some non-dual string, and fahrenheitToCelsius will raise some NumberFormatException . Let's say that in this case we want, perhaps, to record this error and ignore it for further processing of the stream. What is the idiomatic way to do this? I saw a few examples, but they usually collectFrom stream.
source share