Monday, September 19, 2016

Closures : Example...

scala> //#191

scala> var more = 5
more: Int = 5

scala>

scala> //Here we have function literal that has

scala> //been assigned to a function value

scala> //This function value is also a Closure

scala> //as it closes the free bound variable 'more'

scala> val sum = (x:Int) => {
     |     more = more + x
     |     more
     | }
sum: Int => Int = 

scala>

scala> sum(5)
res18: Int = 10

scala> more
res19: Int = 10