This bit me today too. In a lecture hall full of students. Luckily I had SWI Prolog installed as well, or it would have been a serious disaster.
--Barak. $ cat mortal.pl man(aristotle). mortal(X) :- man(X). % for all X $ gprolog GNU Prolog 1.4.5 (64 bits) Compiled Feb 5 2017, 10:30:08 with gcc By Daniel Diaz Copyright (C) 1999-2016 Daniel Diaz | ?- ['mortal.pl']. compiling /home/barak/tmp/mortal.pl for byte code... /home/barak/tmp/mortal.pl compiled, 4 lines read - 356 bytes written, 6 ms yes | ?- mortal(barak). uncaught exception: error(existence_error(procedure,man/0),mortal/0) | ?- mortal(aristotle). uncaught exception: error(existence_error(procedure,man/0),mortal/0) | ?- man(barak). no | ?- man(aristotle). yes | ?- man(X). X = aristotle yes | ?-