Result is atan(Number)
which should be preferred for portability.
In coroutining mode, if Number is uninstantiated, the call to atan/2 is delayed until this variable is instantiated.
Success:
atan(0.0, 0.0).
atan(1.0, Result). (gives Result = 0.785398)
atan(-8, Result). (gives Result = -1.44644)
Fail:
atan(1, 0.0).
atan(1.55741, 1).
atan(5, r).
Error:
atan(A, 6.0). (Error 4).
atan(1 + 0.55741, 1.0). (Error 24).