function powi(atom b, integer i) atom v=1 b = iff(i<0 ? 1/b : b) i = abs(i) while i>0 do if and_bits(i,1) then v *= b end if b *= b i = floor(i/2) end while return v end function ?powi(-3,-5) ?power(-3,-5)