First of all, congratulations on this implementation, the code is very clear! In case of a program error during evaluation, could we loop back to modify the program using the errors as feedback?