In coroutining mode, if Number is a free variable, the call to asin/2 is delayed until this variable is instantiated.
Success: asin(1.0, Result). (gives Result = 1.5708) asin(-0,5, Result). (gives Result = -0.523599) Fail: asin(1, 0.0). Error: asin(A, 6.0). (Error 4). asin(1, 3). (Error 5). asin(2, Result). (Error 20). asin(4 + 2, -0.279415). (Error 24). asin(1, r). (Error 24).