Error Message while Creeping


I am getting the error EOF: exit (status 4) while creeping through the evaluation of a goal at a spy point. Any thoughts why would this happen?
The workflow is:

  • Load file.
  • Run spy(target_predicate).
  • Evaluate goal that eventually calls target_predicate.
  • Then when evaluation reaches target_predicate, I am able to creep through a few lines before the above error is thrown, a pop-up window is shown with the same error message, and the console is closed.

The evaluation of goal without using spy/1 finishes without showing the error message.

I used spy/1 with creeping numerous times in my debugging before, and I never witnessed this error message.


It suggests you are messing around with the standard (input) streams. This can be binding them to some other input or changing the properties such that they produce an error. The platform may also be relevant, e.g., whether or not you run the gui console on Windows or MacOS.

I found the cause of my problem.

I have imposed a timeout on the evaluation of the main goal in my program. The duration of the timeout was previously ample enough to allow me to creep through comfortably while spying. But recently, I have shrunk the timeout to an amount that is not large enough for manual inspection and creeping. When the timeout runs out, I get the error message.

It could be really useful if a timeout-related message is shown. I still do not know why end-of-file error was thrown (end of which file?), no file was open during the evaluation of the goal.

1 Like