scala/ScalaBook/chapter-02/fn.scala


val sign = {x: Int => if (x >0) "plus" 
                      else if (x==0) "zero"
                      else "minus" }

println(sign(4))
println(sign(-4)) 

var w=1
def inc (x: Int) =  {w=w+1; x+1}
val max = { (x: Int, y:Int) => if (x>y) x else y} 

println(inc(4))

val sinc = sign compose inc 

println("w= "+w)

println(sinc(-1))

def max3(x: Int, y: Int, z: Int) = max(x,max(y,z))

println("maximum " + max3(7,8,9))