up previous next
If the ComputationStack option is on, a special variable named
ComputationStack contains a list tracing errors that occur during
the execution of CoCoA commands. This option is useful for debugging
programs.
Define Test(X)
If X>=0 Then PrintLn 1/X; EndIf;
EndDefine;
Set ComputationStack;
Test(0);
-------------------------------
ERROR: Division by zero
CONTEXT: 1 / X
-------------------------------
S := ComputationStack; -- to save typing later
S[1]; -- the command that produced the error
PrintLn(1 / X)
-------------------------------
S[2]; -- S[1] was part of an If-statement
If X >= 0 Then PrintLn(1 / X) EndIf
-------------------------------
S[3]; -- the command issued by the user
If X >= 0 Then PrintLn(1 / X) EndIf;
-------------------------------
|