Next: x1f4_look_program, Previous: x1f4_list_state, Up: Imperative Language Interpreter Functions [Index]
extern int x1f4_long_program (void *program, int *note, void *back, int (*call)(void *), void *output);
The x1f4_long_program
function executes the program
program.
After each successfully non
‘return’ introduced expression evaluation it tests the int
stored
at note
and upon non zero find it calls the call
routine, passing
it back
as its only argument. If the routine evaluates zero, the
x1f4_long_program
function resets the int
stored at note
and continues with the program execution, otherwise it immediately returns non
zero.
See Imperative Program Execution.
A non zero return of the call
routine may be examined against the
defined error classes and recovered later, depending on its value and whether
error trapping mechanisms have been installed.
See Error Classes.
See Limiting The Scope Of Errors.
If successful, the function stores the evaluation result of the last program
statement at the address indicated by output
and returns 0
. Non
zero is returned for failure. The statement would be a ‘return’
introduced one. The completion syntax when parsing the program would have
indicated that the last statement of the program is ‘return’ introduced.
See Imperative Language Syntax.
See Program Completions.
See Functions.