Pure functions and higher-order functions

From the computer science perspective, functions can have many forms such as first order functions, higher-order functions, or pure functions. This is also true from the mathematics point of view. Using a higher-order function is a function one of the following can be performed:

  • Takes one or more functions as arguments to do some operations
  • Returns a function as its result

All other functions except the higher-order functions are first-order functions. However, from the mathematics point of view, higher-order functions are also called operators or functionals. On the other hand, if the return value of a function is only determined by its input and of course without observable side effects, it is called a pure function.

In this section, we will briefly discuss why and how to use different functional paradigms in Scala. Especially, pure functions, and higher-order functions will be discussed. At the end of this section, a brief overview of using anonymous functions will also be provided since this is used frequently while developing a Spark application using Scala.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.16.218.105