O'Reilly logo

Learning Scala Programming by Vikash Sharma

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Higher-order functions

We know that we can only pass a first-class value object as an argument to a method or a function. For example, take this simple method:

def sum(a: Int, b: Int) = a + b 

This is a method named sum and declares two parameters a and b. Now, to use this method, we will pass arguments. In the argument list, it's obvious we'll have to pass values of the integer type. It's clear that any type, if it's a value, can be declared as a function parameter and can be used as an argument while calling a function.

In Scala, function literals are nothing more than function trait objects, hence it's obvious that we can declare them as parameters and use them as arguments. This gives rise to functions which contain functions as parameters, ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required