Um... does this type check? Shouldn't `fn pow` above have `exp: uint`?