userdetermines the extensions considered by file_search_path/2. Extension is the filename extension without the leading dot, and Type denotes the type as used by the
file_type(Type)option of file_search_path/2. Here is the initial definition of prolog_file_type/2:
user:prolog_file_type(pl, prolog). user:prolog_file_type(Ext, prolog) :- current_prolog_flag(associate, Ext), Ext \== pl. user:prolog_file_type(qlf, qlf). user:prolog_file_type(Ext, executable) :- current_prolog_flag(shared_object_extension, Ext).
Users can add extensions for Prolog source files to avoid conflicts
(for example with perl) as well as to be compatible with another
Prolog implementation. We suggest using
.pro for avoiding
conflicts with perl. Overriding the system definitions can stop
the system from finding libraries.