:- meta_predicate private_call(:). :- meta_predicate p/1. private_call(X) :- call(X). run :- private_call(a).