Stuff
public text v1 · immutableexponentiate :: Int -> Int -> Int
exponentiate x y
| y == 0 = 1
| mod y 2 == 0 = exponentiate(exponentiate(x, (div y 2)), 2)
| otherwise = x*exponentiate(x, (y-1))exponentiate :: Int -> Int -> Int
exponentiate x y
| y == 0 = 1
| mod y 2 == 0 = exponentiate(exponentiate(x, (div y 2)), 2)
| otherwise = x*exponentiate(x, (y-1))