Talk is cheap.
func Power(base float64, exponent int) float64 {
r, p := 1.0, 0
if exponent < 0 {
p = -exponent
} else {
p = exponent
}
for p != 0 {
if p & 1 == 1 { r = r*base }
base = base*base
p >>= 1
}
if exponent > 0 {
return r
} else {
return 1/r
}
}