By Alvin Alexander. Last updated: January 20, 2018
Here’s a little fun with Scala functions, including the use of andThen
and compose
:
scala> val add1 = (i: Int) => i + 1 add1: Int => Int = <function1> scala> val double = (i: Int) => i * 2 double: Int => Int = <function1> scala> val addThenDouble = add1 andThen double addThenDouble: Int => Int = <function1> scala> addThenDouble(1) res0: Int = 4 scala> val doubleThenAdd = add1 compose double doubleThenAdd: Int => Int = <function1> scala> doubleThenAdd(1) res1: Int = 3
(Inspired by the book, Functional and Reactive Domain Modeling, and my own book, Learning Functional Programming in Scala.)