From 16149ed17cc89e871e20ed63382093f9ceba2a38 Mon Sep 17 00:00:00 2001 From: RawToast Date: Tue, 4 Apr 2017 20:20:17 +0100 Subject: [PATCH] Simplify Kleisli example Amended second instance of parseAndReciprocal to use the same functions as in the earlier example. --- docs/src/main/tut/datatypes/kleisli.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/src/main/tut/datatypes/kleisli.md b/docs/src/main/tut/datatypes/kleisli.md index 7e84123968..ad5108e9c8 100644 --- a/docs/src/main/tut/datatypes/kleisli.md +++ b/docs/src/main/tut/datatypes/kleisli.md @@ -77,9 +77,9 @@ Returning to our earlier example: // Bring in cats.FlatMap[Option] instance import cats.implicits._ -val parse = Kleisli((s: String) => try { Some(s.toInt) } catch { case _: NumberFormatException => None }) +val parse = Kleisli((s: String) => if (s.matches("-?[0-9]+")) Some(s.toInt) else None) -val reciprocal = Kleisli((i: Int) => if (i == 0) None else Some(1.0 / i)) +val reciprocal = Kleisli((i: Int) => if (i != 0) Some(1.0 / i) else None) val parseAndReciprocal = reciprocal.compose(parse) ```