1 2 3 4 5
val power: Int => (Int => Int) = { case 0 => 1 case n if (n%2==1) => power(n-1)(x) * x case n if (n%2==0) => power(n/2)(x) * power(n/2)(x) }