|Did you know ...||Search Documentation:|
:- use_module(library(listing)).(can be autoloaded)
A listing is produced by enumerating the clauses of the predicate using clause/2 and printing each clause using portray_clause/1. This implies that the variable names are generated (A, B, ... ) and the layout is defined by rules in portray_clause/1.