[an error occurred while processing this directive]
begin
while there is another variable to be examined in D
if the variable is defined in a non-existent manner
then issue a notifiable error
while there is another guard to be examined in A
evaluate the guard
if the guard cannot be evaluated
then issue an avoidance error
elsif the guard is true
then
if the procedural action involves a non-evaluable variable
or a non-evaluable variable is evaluated in a command
or a variable used as a parameter cannot be evaluated
then halt execution due to a fatal error
add the associated command to the command list
if the run set is empty
then halt
if the run set contains a redefinition of a non-existent variable
or the run set contains an instantiation of an entity not in P
or the run set contains two redefinitions of the same variable
which are not in the same command list
or the run set contains a redefinition of a variable and a
dynamic action on the entity owning that variable, other
than when the redefinition and dynamic action are in the
same command list and either the redefinition comes before
an entity deletion or after an entity instantiation
or the run set contains an invalid dynamic action
or the run set contains two dynamic actions on the same
entity, other than when they are in the same command list
and valid when performed sequentially
then halt execution due to a fatal error
simulate the parallel execution of all the command lists in the run set
end
[an error occurred while processing this directive]