Did you know ... Search Documentation:
Pack pac -- prolog/pac/basic.pl
PublicShow source
 max(+A, +B, -C) is det
C is unified with the max of A and B.
 min(+A, +B, -C) is det
C is unified with the min of A and B.
 max_of_list(+L, -M) is det
M is uinified with the maximum of elements in L.
 min_of_list(+L, -M) is det
M is uinified with the minimum of elements in L.
 completing_options(+X:list, +Y:list, -Z:list) is det
Update options list Y with X to Z.
 if(+X, +Y, +Z) is nondet
Meta predicate for conditional sentences.
 listp(+X) is det
True if X is [] or [_|_].
 prepend(?A, -X, -Y) is det
roughly works like flatten(A, B), append(B, Y, X).
 verbatim_skip(+X, +Y, +A, -B) is det
B is unified so that append([X, _, Y, B], A). Intended use is to skip a long comment like /* ... */ in TeX with X=`/*`, Y=`/*`.
 smash(+X:text) is det
Write all elements of text to the standard output ignoring the null byte code.
 smash(+X:text, -Y:string) is det
Same as smash/1, but unify Y with the output string instead.
 smash_codes(+X:text, -Y:codes) is det
Same as smash/2, but unify Y with the output codes instead.
 zip(?X:list, ?Y:list, ?Z:list) is det
Zip X and Y into Z with comma (,). ?- zip([a,b],[x,y], R), zip(A, X, R).

Undocumented predicates

The following predicates are exported, but not or incorrectly documented.

 ahead_compare(Arg1, Arg2, Arg3, Arg4)
 associative_comma(Arg1, Arg2, Arg3)
 comma_list(Arg1, Arg2)
 kleene_star(Arg1, Arg2, Arg3)
 kleene_star_greedy(Arg1, Arg2, Arg3)
 kleene_plus_greedy(Arg1, Arg2, Arg3)
 kleene_string_codes(Arg1, Arg2, Arg3)
 term_codes(Arg1, Arg2)
 term_codes(Arg1, Arg2, Arg3)
 concat(Arg1, Arg2)
 flatten(Arg1, Arg2, Arg3)
 pipe_create(Arg1, Arg2)
 pipe_create(Arg1, Arg2, Arg3)
 pipe_to_obj(Arg1, Arg2)
 obj_to_pipe(Arg1, Arg2)
 assocq(Arg1, Arg2, Arg3)
 memq(Arg1, Arg2)
 clear(Arg1, Arg2)
 clear(Arg1, Arg2, Arg3)
 collect(Arg1, Arg2, Arg3)
 current(Arg1, Arg2, Arg3)
 env(Arg1, Arg2, Arg3)
 herbrand(Arg1, Arg2)
 herbrand(Arg1, Arg2, Arg3)
 herbrand(Arg1, Arg2, Arg3, Arg4)
 herbrand0(Arg1, Arg2)
 herbrand_in_context(Arg1, Arg2)
 herbrand_in_context(Arg1, Arg2, Arg3)
 id(Arg1, Arg2)
 if(Arg1, Arg2)
 listcast(Arg1, Arg2)
 listsubst(Arg1, Arg2, Arg3)
 ordered_pair(Arg1, Arg2, Arg3)
 paragraph(Arg1, Arg2)
 peek(Arg1, Arg2, Arg3)
 peek(Arg1, Arg2, Arg3, Arg4)
 remove(Arg1, Arg2, Arg3)
 remove_last(Arg1, Arg2, Arg3)
 smash_string(Arg1, Arg2)
 term_string0(Arg1, Arg2)
 pred_term_smash(Arg1, Arg2, Arg3)
 term_smash(Arg1, Arg2)
 term_smash0(Arg1, Arg2)
 fst(Arg1, Arg2)
 fst(Arg1, Arg2, Arg3)
 snd(Arg1, Arg2)
 snd(Arg1, Arg2, Arg3)
 split(Arg1, Arg2)
 split(Arg1, Arg2, Arg3)
 split(Arg1, Arg2, Arg3, Arg4)
 split(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6)
 split_rest(Arg1, Arg2, Arg3, Arg4, Arg5, Arg6)
 stack_init
 split_string_by_word(Arg1, Arg2, Arg3)
 scan_prefix(Arg1, Arg2, Arg3, Arg4)
 scan_prefix(Arg1, Arg2, Arg3, Arg4, Arg5)
 remove_comment(Arg1, Arg2)
 remove_comment(Arg1, Arg2, Arg3)
 bi_reverse(Arg1, Arg2, Arg3)
 stack_pop(Arg1, Arg2)
 stack_push(Arg1)
 stack_push(Arg1, Arg2)
 stack_top(Arg1)
 stack_top(Arg1, Arg2)
 stack_update(Arg1)
 residue(Arg1, Arg2, Arg3)
 stack_update(Arg1, Arg2)
 union(Arg1, Arg2)
 flatten_dl(Arg1, Arg2, Arg3)
 herbrand_opp(Arg1, Arg2)
 herbrand_opp(Arg1, Arg2, Arg3)
 variant(Arg1, Arg2, Arg3, Arg4)
 cons(Arg1, Arg2, Arg3)