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.