The result is of type real when any of the arguments is a real. When an integer is raised to the power of a negative integer, the result type depends on the value of the global flag prefer_rationals. If it is on it is a rational, otherwise a real. When the exponent is not an integer, the result is of type real.
In coroutining mode, if Number1 or Number2 are free variables, the call to ^/3 is delayed until these variables are instantiated.
Success: ^(5, 3, 125). ^(-5, 3, -125). ^(5, -2, 0.04). ^(5, 2.2, 34.493244). ^(5.0, 2, 25.0). Fail: ^(1, 2, 3). Error: ^(A, 2, 6). (Error 4). ^(1, 2, 3.0). (Error 5). ^(-5, 0.5, X). (Error 20). ^(2 + 3, 2, 25). (Error 24). ^(5, 2, r). (Error 24).