This Prolog program prints Hello:
main :-
write('Hello'), nl.
:- main.
I changed (:-)/1 to (?-)/1:
main :-
write('Hello'), nl.
?- main.
This produces exactly the same result. This also prints Hello.
So what's the difference between (:-)/1 and (?-)/1?