aggregate.pl |
| aggregate/3 | Aggregate bindings in Goal according to Template. |  |
| aggregate/4 | Aggregate bindings in Goal according to Template. |  |
| aggregate_all/3 | Aggregate bindings in Goal according to Template. |  |
| aggregate_all/4 | Aggregate bindings in Goal according to Template. |  |
| foldall/4 | Use Folder to fold V0 to V using all answers of Goal. |  |
| foreach/2 | True when the conjunction of instances of Goal created from solutions for Generator is true. |  |
| free_variables/4 | Find free variables in bagof/setof template. |  |
| safe_meta/2 | Declare the aggregate meta-calls safe. |  |
ansi_term.pl |
| ansi_format/3 | Format text with ANSI attributes. |  |
| ansi_get_color/2 | Obtain the RGB color for an ANSI color parameter. |  |
| ansi_hyperlink/2 | Create a hyperlink for a terminal emulator. |  |
| ansi_hyperlink/3 | Create a hyperlink for a terminal emulator. |  |
| tty_url_hook/2 | Hook for location_url/2. |  |
| console_color/2 | Hook that allows for mapping abstract terms to concrete ANSI attributes. | |
| message_line_element/2 | Hook implementation that deals with ansi(+Attr, +Fmt, +Args) in message specifications. |  |
apply.pl -- Apply predicates on a list |
apply_macros.pl -- Goal expansion rules to avoid meta-calling |
| apply_macros_sentinel/0 | Used to detect that library(apply_macros) is loaded into the current context explicitly. |  |
| expand_phrase/2 | Provide goal-expansion for PhraseGoal. |  |
| expand_phrase/4 | Provide goal-expansion for PhraseGoal. |  |
arithmetic.pl |
| arithmetic_expression_value/2 | True when Result unifies with the arithmetic result of evaluating Expression. |  |
| arithmetic_function/1 | Declare a predicate as an arithmetic function. |  |
assoc.pl -- Binary associations |
atom.pl |
| identifier_parts/2 | Parts is a list of atoms that make up Identifier. |  |
| join_identifier_parts/3 | Join parts of an identifier according to Style. |  |
| restyle_identifier/3 | Restyle an identifier by extracting the alnum substrings and joining them together according to Style. |  |
backcomp.pl |
| $apropos_match/2 | True if Needle is a sub atom of Haystack. |  |
| $arch/2 | |  |
| $argv/1 | |  |
| $declare_module/3 | Used in triple20 particle library. |  |
| $home/1 | |  |
| $module/2 | |  |
| $set_prompt/1 | Set the prompt for the toplevel. |  |
| $sig_atomic/1 | Execute Goal without processing signals. |  |
| $strip_module/3 | This used to be an internal predicate. |  |
| $version/1 | |  |
| C/3 | Used to be generated by DCG. |  |
| at_initialization/1 | Register goal only to be run if a saved state is restored. |  |
| call_cleanup/3 | Call Cleanup with an indication of the reason unified to Catcher. |  |
| checklist/2 | |  |
| concat/3 | |  |
| concat_atom/2 | Concatenate a list of atomic values to an atom. |  |
| concat_atom/3 | Concatenate a list of atomic values to an atom, inserting Separator between each consecutive elements. |  |
| convert_time/2 | Convert a time-stamp as obtained though get_time/1 into a textual representation using the C-library function ctime(). |  |
| convert_time/8 | Convert a time stamp, provided by get_time/1, time_file/2, etc. |  |
| current_module/2 | True if Module is a module loaded from File. |  |
| current_mutex/3 | |  |
| current_thread/2 | |  |
| displayq/1 | Write term ignoring operators and quote atoms. |  |
| displayq/2 | Write term ignoring operators and quote atoms. |  |
| eval_license/0 | |  |
| export_list/2 | Module exports the predicates of List. |  |
| feature/2 | Control Prolog flags. |  |
| flush/0 | |  |
| free_variables/2 | Return a list of unbound variables in Term. |  |
| hash/1 | Demands PredInd to be indexed using a hash-table. |  |
| hash_term/2 | If Term is ground, Hash is unified to an integer representing a hash for Term. |  |
| index/1 | Prepare the predicate indicated by Head for multi-argument indexing. |  |
| lock_predicate/2 | |  |
| merge/3 | Merge the ordered sets List1 and List2 into a new ordered list. |  |
| merge_set/3 | Merge the ordered sets Set1 and Set2 into a new ordered set without duplicates. |  |
| message_queue_size/2 | True if Queue holds Size terms. |  |
| proper_list/1 | Old SWI-Prolog predicate to check for a list that really ends in a []. |  |
| read_clause/1 | |  |
| read_clause/2 | |  |
| read_history/6 | |  |
| read_pending_input/3 | |  |
| read_variables/2 | |  |
| read_variables/3 | |  |
| set_base_module/1 | Set the default module from which we inherit. |  |
| set_feature/2 | Control Prolog flags. |  |
| setup_and_call_cleanup/3 | Call Cleanup once after Goal is finished. |  |
| setup_and_call_cleanup/4 | Call Cleanup once after Goal is finished, with Catcher unified to the reason. |  |
| sformat/2 | |  |
| sformat/3 | |  |
| string_to_atom/2 | Bi-directional conversion between string and atom. |  |
| string_to_list/2 | Bi-directional conversion between a string and a list of character codes. |  |
| sublist/3 | Succeeds if List2 unifies with a list holding those terms for which call(Goal, Elem) succeeds. |  |
| substring/4 | Predecessor of sub_string using 1-based Offset. |  |
| sumlist/2 | True when Sum is the list of all numbers in List. |  |
| thread_at_exit/1 | Register Goal to be called when the calling thread exits. |  |
| trie_insert_new/3 | |  |
| unlock_predicate/2 | |  |
| write_ln/1 | |  |
base32.pl -- Base32 encoding and decoding |
base64.pl |
| base64/2 | Equivalent to base64_encoded/3 using the options as(atom) and encoding(iso_latin_1). |  |
| base64/3 | Encode/decode list of character codes using base64. |  |
| base64_encoded/3 | General the base64 encoding and decoding. |  |
| base64_encoded/4 | |  |
| base64url/2 | Translates between plaintext and base64url encoded atom or string. |  |
| base64url/3 | Encode/decode list of character codes using Base64URL. |  |
broadcast.pl -- Event service |
charsio.pl -- I/O on Lists of Character Codes |
check.pl |
| check/0 | Run all consistency checks defined by checker/2. |  |
| checker/2 | Register code validation routines. |  |
| list_autoload/0 | Report predicates that may be auto-loaded. |  |
| list_cross_module_calls/0 | List calls from one module to another using Module:Goal where the callee is not defined exported, public or multifile, i.e., where the callee should be considered private. |  |
| list_format_errors/0 | List argument errors for format/2,3. |  |
| list_format_errors/1 | List argument errors for format/2,3. |  |
| list_rationals/0 | List rational numbers that appear in clauses. |  |
| list_rationals/1 | List rational numbers that appear in clauses. |  |
| list_redefined/0 | Lists predicates that are defined in the global module user as well as in a normal module; that is, predicates for which the local definition overrules the global default definition. |  |
| list_strings/0 | List strings that appear in clauses. |  |
| list_strings/1 | List strings that appear in clauses. |  |
| list_trivial_fails/0 | List goals that trivially fail because there is no matching clause. |  |
| list_trivial_fails/1 | List goals that trivially fail because there is no matching clause. |  |
| list_undefined/0 | Report undefined predicates. |  |
| list_undefined/1 | Report undefined predicates. |  |
| list_void_declarations/0 | List predicates that have declared attributes, but no clauses. |  |
| string_predicate/1 | Multifile hook to disable list_strings/0 on the given predicate. |  |
| trivial_fail_goal/1 | Multifile hook that tells list_trivial_fails/0 to accept Goal as valid. |  |
| valid_string_goal/1 | Multifile hook that qualifies Goal as valid for list_strings/0. |  |
codesio.pl -- I/O on Lists of Character Codes |
coinduction.pl -- Co-Logic Programming |
csv.pl -- Process CSV (Comma-Separated Values) data |
ctypes.pl -- Character code classification |
| is_digit/3 | Succeeds if `C' is a digit using `Base' as base and `Weight' represents its value. |  |
| is_paren/2 | True if Open is the open-parenthesis of Close. |  |
| to_lower/2 | Downcase a character code. |  |
| to_upper/2 | Upcase a character code. |  |
| upper_lower/2 | True when U is the character code of an uppercase character and L is the character code of the corresponding lowercase character. |  |
date.pl -- Process dates and times |
debug.pl -- Print debug messages and test assertions |
dialect.pl -- Support multiple Prolog dialects |
dicts.pl |
| dict_fill/4 | Implementation for the dicts_to_same_keys/3 OnEmpty closure that fills new cells with a copy of ValueIn. |  |
| dict_keys/2 | True when Keys is an ordered set of the keys appearing in Dict. |  |
| dict_size/2 | True when KeyCount is the number of keys in Dict. |  |
| dicts_join/3 | Join dicts in Dicts that have the same value for Key, provided they do not have conflicting values on other keys. |  |
| dicts_join/4 | Join two lists of dicts (Dicts1 and Dicts2) on Key. |  |
| dicts_same_keys/2 | True if List is a list of dicts that all have the same keys and Keys is an ordered set of these keys. |  |
| dicts_same_tag/2 | True when List is a list of dicts that all have the tag Tag. |  |
| dicts_slice/3 | DictsOut is a list of Dicts only containing values for Keys. |  |
| dicts_to_compounds/4 | True when Dicts and Compounds are lists of the same length and each element of Compounds is a compound term whose arguments represent the values associated with the corresponding keys in Keys. |  |
| dicts_to_same_keys/3 | DictsOut is a copy of DictsIn, where each dict contains all keys appearing in all dicts of DictsIn. |  |
| mapdict/2 | True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts. |  |
| mapdict/3 | True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts. |  |
| mapdict/4 | True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts. |  |
dif.pl |
| dif/2 | Constraint that expresses that Term1 and Term2 never become identical (==/2). |  |
edinburgh.pl |
| debug/0 | Switch on/off debug mode. |  |
| display/1 | Write a term, ignoring operators and special syntax constructs such as brace terms ({a}) and lists ([a,b,c]). |  |
| display/2 | Write a term, ignoring operators and special syntax constructs such as brace terms ({a}) and lists ([a,b,c]). |  |
| fileerrors/2 | Query and change the fileerrors flag. |  |
| nodebug/0 | Switch on/off debug mode. |  |
| reconsult/1 | Load source file(s), wiping the old content first. |  |
| unknown/2 | Edinburgh Prolog predicate for dealing dealing with undefined procedures. |  |
edit.pl |
| edit/0 | Edit associated or script file. |  |
| edit/1 | Edit indicated object. |  |
| edit_command/2 | This predicate should specify the shell-command called to invoke the user's editor. |  |
| locate/2 | Locate object from the specified location. |  |
| locate/3 | |  |
| select_location/3 | |  |
error.pl |
| current_encoding/1 | True if Name is the name of a supported encoding. |  |
| current_type/3 | True when Type is a currently defined type and Var satisfies Type of the body term Body succeeds. |  |
| domain_error/2 | The argument is of the proper type, but has a value that is outside the supported values. |  |
| existence_error/2 | Culprit is of the correct type and correct domain, but there is no existing (external) resource of type ObjectType that is represented by it. |  |
| existence_error/3 | Culprit is of the correct type and correct domain, but there is no existing (external) resource of type ObjectType that is represented by it in the provided set. |  |
| has_type/2 | True if Term satisfies Type. |  |
| instantiation_error/1 | An argument is under-instantiated. |  |
| is_of_type/2 | True if Term satisfies Type. |  |
| must_be/2 | True if Term satisfies the type constraints for Type. |  |
| permission_error/3 | It is not allowed to perform Operation on (whatever is represented by) Culprit that is of the given PermissionType (in fact, the ISO Standard is confusing and vague about these terms' meaning). |  |
| representation_error/1 | A representation error indicates a limitation of the implementation. |  |
| resource_error/1 | A goal cannot be completed due to lack of resources. |  |
| syntax_error/1 | A text has invalid syntax. |  |
| type_error/2 | Tell the user that Culprit is not of the expected ValidType. |  |
| uninstantiation_error/1 | An argument is over-instantiated. |  |
exceptions.pl -- Exception classification |
explain.pl |
| explain/1 | Give an explanation on Term. |  |
| explain/2 | True when Explanation is an explanation of Term. |  |
fastrw.pl |
| fast_read/1 | The next term is read from current standard input and is unified with Term. |  |
| fast_write/1 | Output Term in a way that fast_read/1 and fast_read/2 will be able to read it back. |  |
| fast_write_to_string/3 | Perform a fast-write to the difference-slist String\Tail. |  |
files.pl |
| can_open_file/2 | Succeeds if the user has access to `File' in mode `Mode'. |  |
| chdir/1 | Change Working Directory. |  |
gensym.pl |
| gensym/2 | Generate <Base>1, <Base>2, etc atoms on each subsequent call. |  |
| reset_gensym/0 | Reset gensym for all registered keys. |  |
| reset_gensym/1 | Restart generation of identifiers from Base at <Base>1. |  |
git.pl -- Run GIT commands |
hashtable.pl |
| ht_del/3 | Delete Key-Value from HT. |  |
| ht_gen/3 | True when Key-Value is in HT. |  |
| ht_get/3 | True when Key is in HT and associated with Value. |  |
| ht_is_hashtable/1 | True when HT is a hash table. |  |
| ht_keys/2 | True when Keys is an ordered set of all keys in HT. |  |
| ht_new/1 | Create a new hash table. |  |
| ht_pairs/2 | True when Pairs and HT represent the same association. |  |
| ht_put/3 | Add a Key-Value to HT. |  |
| ht_put/5 | Add Key-Value to HT. |  |
| ht_put_new/3 | As ht_put/3, but fails if Key is already in HT instead of updating the associated value. |  |
| ht_size/2 | True when Size is the number of key-value pairs in HT. |  |
| ht_update/4 | True when HT holds Key-Old before and Key-New after this call. |  |
heaps.pl -- heaps/priority queues |
help.pl -- Text based manual |
increval.pl -- Incremental dynamic predicate modification |
intercept.pl |
| intercept/3 | Run Goal as call/1. |  |
| intercept/4 | Similar to intercept/3, but the copy of Handler is called as call(Copy,Arg), which allows passing large context arguments or arguments subject to unification or destructive assignment. |  |
| intercept_all/4 | True when List contains all instances of Template that have been sent using send_signal/1 where the argument unifies with Ball. |  |
| nb_intercept_all/4 | As intercept_all/4, but backtracing inside Goal does not reset List. |  |
| send_signal/1 | If this predicate is called from a sub-goal of intercept/3, execute the associated Handler of the intercept/3 environment. |  |
| send_silent_signal/1 | As send_signal/1, but succeed silently if there is no matching intercept environment. |  |
iostream.pl -- Utilities to deal with streams |
| close_any/1 | Execute the Close closure returned by open_any/5. |  |
| open_any/5 | Establish a stream from Specification that should be closed using Close, which can either be called or passed to close_any/1. |  |
lazy_lists.pl |
| lazy_engine_next/4 | Lazy list iterator for engines. |  |
| lazy_findall/3 | True when List is a lazy list containing the instantiations for Template for each answer of Goal. |  |
| lazy_findall/4 | True when List is a lazy list containing the instantiations for Template for each answer of Goal. |  |
| lazy_get_codes/4 | Lazy list iterator to get character codes from a stream. |  |
| lazy_list/2 | Create a lazy list from a callback. |  |
| lazy_list/3 | Create a lazy list where the next element is defined by. |  |
| lazy_list_iterator/4 | Directive to create a lazy list iterator from a predicate that gets a single next value. |  |
| lazy_list_length/2 | True if Len is the length of the materialized lazy list. |  |
| lazy_list_materialize/1 | Materialize the lazy list. |  |
| lazy_message_queue/4 | Lazy list iterator for message queues. |  |
| lazy_read_lines/4 | Lazy list iterator to read lines from Stream. |  |
| lazy_read_terms/4 | Turn a stream into a lazy list of Prolog terms. |  |
listing.pl -- List programs and pretty print clauses |
lists.pl |
| append/2 | Concatenate a list of lists. |  |
| append/3 | List1AndList2 is the concatenation of List1 and List2. |  |
| clumped/2 | Pairs is a list of Item-Count pairs that represents the run length encoding of Items. |  |
| delete/3 | Delete matching elements from a list. |  |
| flatten/2 | Is true if FlatList is a non-nested version of NestedList. |  |
| intersection/3 | True if Set3 unifies with the intersection of Set1 and Set2. |  |
| is_set/1 | True if Set is a proper list without duplicates. |  |
| last/2 | Succeeds when Last is the last element of List. |  |
| list_to_set/2 | True when Set has the same elements as List in the same order. |  |
| max_list/2 | True if Max is the largest number in List. |  |
| max_member/2 | True when Max is the largest member in the standard order of terms. |  |
| max_member/3 | True when Max is the largest member according to Pred, which must be a 2-argument callable that behaves like (@=<)/2. |  |
| member/2 | True if Elem is a member of List. |  |
| min_list/2 | True if Min is the smallest number in List. |  |
| min_member/2 | True when Min is the smallest member in the standard order of terms. |  |
| min_member/3 | True when Min is the smallest member according to Pred, which must be a 2-argument callable that behaves like (@=<)/2. |  |
| nextto/3 | True if Y directly follows X in List. |  |
| nth0/3 | True when Elem is the Index'th element of List. |  |
| nth0/4 | Select/insert element at index. |  |
| nth1/3 | Is true when Elem is the Index'th element of List. |  |
| nth1/4 | As nth0/4, but counting starts at 1. |  |
| numlist/3 | List is a list [Low, Low+1, ... High]. |  |
| permutation/2 | True when Xs is a permutation of Ys. |  |
| prefix/2 | True iff Part is a leading substring of Whole. |  |
| proper_length/2 | True when Length is the number of elements in the proper list List. |  |
| reverse/2 | Is true when the elements of List2 are in reverse order compared to List1. |  |
| same_length/2 | Is true when List1 and List2 are lists with the same number of elements. |  |
| select/3 | Is true when List1, with Elem removed, results in List2. |  |
| select/4 | Select from two lists at the same position. |  |
| selectchk/3 | Semi-deterministic removal of first element in List that unifies with Elem. |  |
| selectchk/4 | Semi-deterministic version of select/4. |  |
| subseq/3 | Is true when SubList contains a subset of the elements of List in the same order and Complement contains all elements of List not in SubList, also in the order they appear in List. |  |
| subset/2 | True if all elements of SubSet belong to Set as well. |  |
| subtract/3 | Delete all elements in Delete from Set. |  |
| sum_list/2 | Sum is the result of adding all numbers in List. |  |
| union/3 | True if Set3 unifies with the union of the lists Set1 and Set2. |  |
macros.pl |
| expand_macros/5 | Perform macro expansion on TermIn with layout PosIn to produce TermOut with layout PosOut. |  |
| include_macros/3 | Include macros from another module. |  |
| macro_position/1 | True when Position is the position of the macro. |  |
main.pl |
| argv_options/3 | Parse command line arguments. |  |
| argv_options/4 | As argv_options/3 in guided mode, Currently this version allows parsing argument options throwing an exception rather than calling halt/1 by passing an empty list to ParseOptions. |  |
| argv_usage/1 | Use print_message/2 to print a usage message at Level. |  |
| cli_debug_opt_help/2 | Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments. |  |
| cli_debug_opt_meta/2 | Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments. |  |
| cli_debug_opt_type/3 | Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments. |  |
| cli_enable_development_system/0 | Re-enable the development environment. |  |
| cli_parse_debug_options/2 | Parse certain commandline options for debugging and development purposes. |  |
| main/0 | Call main/1 using the passed command-line arguments. |  |
make.pl -- Reload modified source files |
modules.pl -- Module utility predicates |
nb_set.pl -- Non-backtrackable sets |
| add_nb_set/2 | Insert Key into the set. |  |
| add_nb_set/3 | Insert Key into the set. |  |
| empty_nb_set/1 | Create an empty non-backtrackable set. |  |
| gen_nb_set/2 | Enumerate the members of a set in the standard order of terms. |  |
| nb_set_to_list/2 | Get the elements of a an nb_set. |  |
| size_nb_set/2 | Unify Size with the number of elements in the set. |  |
occurs.pl -- Finding and counting sub-terms |
operators.pl |
| pop_operators/0 | Revert all changes to the operator table realised since the last push_operators/1. |  |
| pop_operators/1 | Reset operators as pushed by push_operators/2. |  |
| push_op/3 | As op/3, but this call must appear between push_operators/1 and pop_operators/0. |  |
| push_operators/1 | Installs the operators from New, where New is a list of op(Prec, Type, :Name). |  |
| push_operators/2 | Installs the operators from New, where New is a list of op(Prec, Type, :Name). |  |
option.pl -- Option list processing |
optparse.pl |
| opt_arguments/3 | Extract commandline options according to a specification. |  |
| opt_help/2 | True when Help is a help string synthesized from OptsSpec. |  |
| opt_parse/4 | Equivalent to opt_parse(OptsSpec, ApplArgs, Opts, PositionalArgs, []). |  |
| opt_parse/5 | Parse the arguments Args (as list of atoms) according to OptsSpec. |  |
| parse_type/3 | Hook to parse option text Codes to an object of type Type. |  |
ordsets.pl |
| is_ordset/1 | True if Term is an ordered set. |  |
| list_to_ord_set/2 | Transform a list into an ordered set. |  |
| ord_add_element/3 | Insert an element into the set. |  |
| ord_del_element/3 | Delete an element from an ordered set. |  |
| ord_disjoint/2 | True if Set1 and Set2 have no common elements. |  |
| ord_empty/1 | True when List is the empty ordered set. |  |
| ord_intersect/2 | True if both ordered sets have a non-empty intersection. |  |
| ord_intersect/3 | Intersection holds the common elements of Set1 and Set2. |  |
| ord_intersection/2 | Intersection of a powerset. |  |
| ord_intersection/3 | Intersection holds the common elements of Set1 and Set2. |  |
| ord_intersection/4 | Intersection and difference between two ordered sets. |  |
| ord_memberchk/2 | True if Element is a member of OrdSet, compared using ==. |  |
| ord_selectchk/3 | Selectchk/3, specialised for ordered sets. |  |
| ord_seteq/2 | True if Set1 and Set2 have the same elements. |  |
| ord_subset/2 | Is true if all elements of Sub are in Super. |  |
| ord_subtract/3 | Diff is the set holding all elements of InOSet that are not in NotInOSet. |  |
| ord_symdiff/3 | Is true when Difference is the symmetric difference of Set1 and Set2. |  |
| ord_union/2 | True if Union is the union of all elements in the superset SetOfSets. |  |
| ord_union/3 | Union is the union of Set1 and Set2. |  |
| ord_union/4 | True iff ord_union(Set1, Set2, Union) and ord_subtract(Set2, Set1, New). |  |
oset.pl |
| oset_addel/3 | Ordered set element addition. |  |
| oset_delel/3 | Ordered set element deletion. |  |
| oset_diff/3 | Ordered set difference. |  |
| oset_dint/2 | Distributed intersection. |  |
| oset_dunion/2 | Distributed union. |  |
| oset_int/3 | ordered set intersection. |  |
| oset_is/1 | check that OSet in correct format (standard order). |  |
| oset_power/2 | True when PSet is the powerset of Set. |  |
| oset_union/3 | Union is the union of OSet1 and OSet2. |  |
pairs.pl -- Operations on key-value lists |
persistency.pl |
| current_persistent_predicate/1 | True if PI is a predicate that provides access to the persistent database DB. |  |
| db_assert/1 | Assert Term into the database and record it for persistency. |  |
| db_attach/2 | Use File as persistent database for the calling module. |  |
| db_attached/1 | True if the context module attached to the persistent database File. |  |
| db_detach/0 | Detach persistency from the calling module and delete all persistent clauses from the Prolog database. |  |
| db_retract/1 | Retract terms from the database one-by-one. |  |
| db_retractall/1 | Retract all matching facts and do the same in the database. |  |
| db_sync/1 | Synchronise database with the associated file. |  |
| db_sync_all/1 | Sync all registered databases. |  |
| persistent/1 | Declare dynamic database terms. |  |
pio.pl |
portray_text.pl |
| portray_text/1 | Switch portraying on or off. |  |
| set_portray_text/2 | Set options for portraying. |  |
| set_portray_text/3 | Set options for portraying. |  |
pprint.pl -- Pretty Print Prolog terms |
predicate_options.pl -- Access and analyse predicate options |
prolog_autoload.pl -- Autoload all dependencies |
prolog_breakpoints.pl -- Manage Prolog break-points |
prolog_clause.pl |
| clause_info/4 | Fetches source information for the given clause. |  |
| clause_info/5 | Fetches source information for the given clause. |  |
| clause_name/2 | Provide a suitable description of the indicated clause. |  |
| initialization_layout/4 | Find term-layout of :- initialization directives. |  |
| make_varnames/5 | Create a Term varnames(...) where each argument contains the name of the variable at that offset. |  |
| open_source/2 | Hook into clause_info/5 that opens the stream holding the source for a specific clause. |  |
| predicate_name/2 | Describe a predicate as [Module:]Name/Arity. |  |
| unify_goal/5 | This hook is called to fix up source code manipulations that result from goal expansions. |  |
| unify_term/2 | Unify the two terms, where T2 is created by writing the term and reading it back in, but be aware that rounding problems may cause floating point numbers not to unify. |  |
prolog_code.pl -- Utilities for reasoning about code |
prolog_codewalk.pl -- Prolog code walker |
| prolog_program_clause/2 | True when ClauseRef is a reference for clause in the program. |  |
| prolog_walk_code/1 | Walk over all loaded (user) Prolog code. |  |
| subterm_pos/5 | True when SubTerm is a sub term of Term, compared using Cmp, TermPosition describes the term layout of Term and SubTermPos describes the term layout of SubTerm. |  |
prolog_colour.pl |
| prolog_colourise_query/3 | Colourise a query, to be executed in the context of SourceId. |  |
| prolog_colourise_stream/3 | Determine colour fragments for the data on Stream. |  |
| prolog_colourise_stream/4 | Determine colour fragments for the data on Stream. |  |
| prolog_colourise_term/4 | Colourise the next term on Stream. |  |
| syntax_colour/2 | True when a range classified Class must be coloured using Attributes. |  |
| vararg_goal_classification/3 | Multifile hookable classification for vararg predicates. |  |
prolog_config.pl |
| prolog_config/2 | Get information on the configuration of the current Prolog system. |  |
| prolog_dump_runtime_variables/0 | Dump the current configuration in shell format. |  |
prolog_coverage.pl |
| cov_load_data/2 | Reload coverage data from File. |  |
| cov_property/1 | True when coverage analysis satisfies Property. |  |
| cov_reset/0 | Discard all collected coverage data. |  |
| cov_save_data/2 | Save the coverage information to File. |  |
| coverage/1 | As call(Goal), collecting coverage information while Goal is running. |  |
| coverage/2 | Collect and optionally report coverage by Goal. |  |
| report_hook/2 | This hook is called after the data collection. |  |
| show_coverage/1 | Show collected coverage data. |  |
prolog_debug.pl -- User level debugging tools |
prolog_format.pl |
| format_spec/2 | Parse a format string. |  |
| format_spec/3 | DCG for parsing format strings. |  |
| format_types/2 | True when Format requires an argument list with terms of the type specified by Types. |  |
prolog_history.pl |
| prolog_history/1 | Execute Action on the history. |  |
prolog_jiti.pl |
| jiti_list/0 | List the JITI (Just In Time Indexes) of selected predicates. |  |
| jiti_list/1 | List the JITI (Just In Time Indexes) of selected predicates. |  |
| jiti_suggest_modes/0 | Propose modes for the predicates referenced by Spec. |  |
| jiti_suggest_modes/1 | Propose modes for the predicates referenced by Spec. |  |
prolog_metainference.pl -- Infer meta-predicate properties |
prolog_pack.pl |
| pack_info/1 | Print more detailed information about Pack. |  |
| pack_install/1 | Install one or more packs from SpecOrList. |  |
| pack_install/2 | Install one or more packs from SpecOrList. |  |
| pack_install_local/3 | Install a number of packages in a local directory. |  |
| pack_list/1 | Query package server and installed packages and display results. |  |
| pack_list/2 | Query package server and installed packages and display results. |  |
| pack_list_installed/0 | List currently installed packages and report possible dependency issues. |  |
| pack_property/2 | True when Property is a property of an installed Pack. |  |
| pack_publish/2 | Publish a package. |  |
| pack_rebuild/0 | Rebuild possible foreign components of Pack. |  |
| pack_rebuild/1 | Rebuild possible foreign components of Pack. |  |
| pack_remove/1 | Remove the indicated package. |  |
| pack_remove/2 | Remove the indicated package. |  |
| pack_search/1 | Query package server and installed packages and display results. |  |
| pack_upgrade/1 | Upgrade Pack. |  |
| pack_url_file/2 | True if File is a unique id for the referenced pack and version. |  |
prolog_profile.pl -- Execution profiler |
prolog_source.pl -- Examine Prolog source-files |
prolog_stack.pl |
| backtrace/1 | Get and print a stacktrace to the user_error stream. |  |
| get_prolog_backtrace/2 | Obtain a backtrace from the current location. |  |
| get_prolog_backtrace/3 | Obtain a backtrace from the current location. |  |
| print_last_choicepoint/0 | Print details on the last open choice point. |  |
| print_last_choicepoint/2 | |  |
| print_prolog_backtrace/2 | Print a stacktrace in human readable form to Stream. |  |
| print_prolog_backtrace/3 | Print a stacktrace in human readable form to Stream. |  |
| prolog_stack_frame_property/2 | True when Property is a property of Frame. |  |
| stack_guard/1 | Dynamic multifile hook that is normally not defined. |  |
| stack_guard/1 | Dynamic multifile predicate. |  |
prolog_trace.pl |
| list_tracing/0 | List predicates we are currently tracing. |  |
| notraceall/0 | Remove all trace points. |  |
| trace/1 | Print passes through ports of specified predicates. |  |
| trace/2 | Print passes through ports of specified predicates. |  |
| tracing/2 | True if Spec is traced using Ports. |  |
prolog_versions.pl -- Demand specific (Prolog) versions |
| cmp_versions/3 | Compare to versions. |  |
| require_prolog_version/2 | Claim that the running Prolog version is at least version Required and provides the requested Features. |  |
| require_version/3 | Require Component to have version CmpRequired, while Component is know to have version Available. |  |
prolog_wrap.pl -- Wrapping predicates |
| current_predicate_wrapper/4 | True if Head is wrapped with Body. |  |
| unwrap_predicate/2 | Remove the outermost wrapper whose name unifies with Name. | |
| wrap_predicate/4 | Wrap the predicate referenced by Head using Body. |  |
prolog_xref.pl -- Prolog cross-referencer data collection |
pure_input.pl -- Pure Input from files and streams |
qsave.pl |
| arch_shlib/3 | This is a user defined hook called by qsave_program/2. |  |
| qsave_program/1 | Make a saved state in file `File'. |  |
| qsave_program/2 | Make a saved state in file `File'. |  |
| qsave_toplevel/0 | Called to handle `-c file` compilaton. |  |
quasi_quotations.pl -- Define Quasi Quotation syntax |
quintus.pl -- Quintus compatibility |
random.pl -- Random numbers |
rbtrees.pl -- Red black trees |
readln.pl |
readutil.pl -- Read utilities |
record.pl -- Access compound arguments by name |
rwlocks.pl |
| with_rwlock/3 | Run Goal, synchronized with LockId in ModeSpec. |  |
| with_rwlock/4 | Run Goal, synchronized with LockId in ModeSpec. |  |
sandbox.pl -- Sandboxed Prolog code |
settings.pl -- Setting management |
shell.pl -- Elementary shell commands |
| cd/0 | Change working directory. |  |
| cd/1 | Change working directory. |  |
| dirs/0 | Manage the directory stack:. |  |
| file_style/2 | True when File should be listed as a terminal hyperlink. |  |
| ls/0 | Listing similar to Unix =ls -F=, flagging directories with =/=. |  |
| ls/1 | Listing similar to Unix =ls -F=, flagging directories with =/=. |  |
| mv/2 | Move (Rename) a file. |  |
| popd/0 | Manage the directory stack:. |  |
| pushd/0 | Manage the directory stack:. |  |
| pushd/1 | Manage the directory stack:. |  |
| pwd/0 | Print current working directory. |  |
| rm/1 | Remove (unlink) a file. |  |
| shell/0 | Execute an interactive shell. |  |
shlib.pl -- Utility library for loading foreign objects (DLLs, shared objects) |
solution_sequences.pl |
| call_nth/2 | True when Goal succeeded for the Nth time. |  |
| distinct/1 | True if Goal is true and no previous solution of Goal bound Witness to the same value. |  |
| distinct/2 | True if Goal is true and no previous solution of Goal bound Witness to the same value. |  |
| group_by/4 | Group bindings of Template that have the same value for By. |  |
| limit/2 | Limit the number of solutions. |  |
| offset/2 | Ignore the first Count solutions. |  |
| order_by/2 | Order solutions according to Spec. |  |
| reduced/1 | Similar to distinct/1, but does not guarantee unique results in return for using a limited amount of memory. |  |
| reduced/3 | Similar to distinct/1, but does not guarantee unique results in return for using a limited amount of memory. |  |
sort.pl |
statistics.pl -- Get information about resource usage |
streams.pl |
| with_output_to/3 | Run Goal and once/1 while capturing all output to all streams (current_output, user_output and user_error) in the string Output. |  |
strings.pl -- String utilities |
system.pl -- System utilities |
tables.pl |
| abolish_table_call/1 | Same as abolish_table_subgoals/1. |  |
| abolish_table_call/2 | Same as abolish_table_subgoals/1. |  |
| abolish_table_pred/1 | Invalidates all tabled subgoals for the predicate denoted by the predicate or term indicator Pred. |  |
| abolish_table_subgoals/2 | Behaves as abolish_table_subgoals/1, but allows the default table_gc_action to be over-ridden with a flag, which can be either abolish_tables_transitively or abolish_tables_singly. |  |
| get_call/3 | True when Trie is an answer trie for a variant of CallTerm. |  |
| get_calls/3 | True when Trie is an answer trie for a variant that unifies with CallTerm and Skeleton is the answer skeleton. |  |
| get_residual/2 | True if CallTerm appears in a table and has DelayList. |  |
| get_returns/2 | True when Return is an answer template for the AnswerTrie. |  |
| get_returns/3 | True when Return is an answer template for the AnswerTrie and the answer is represented by the trie node NodeID. |  |
| get_returns_and_dls/3 | True when Return appears in AnswerTrie with the given DelayLists. |  |
| get_returns_and_tvs/3 | Identical to get_returns/2, but also obtains the truth value of a given answer, setting TruthValue to t if the answer is unconditional and to u if it is conditional. |  |
| get_returns_for_call/2 | True if AnswerTerm appears in the tables for the variant CallTerm. |  |
| set_pil_off/0 | Dummy predicates for XSB compatibility. |  |
| set_pil_on/0 | Dummy predicates for XSB compatibility. |  |
| t not/1 | Tabled negation. |  |
| tfindall/3 | This predicate emerged in XSB in an attempt to provide a safer alternative to findall/3. |  |
terms.pl |
| foldsubterms/4 | The predicate foldsubterms/5 calls call(Goal4, SubTerm1, SubTerm2, StateIn, StateOut) for each subterm, including variables, in Term1. |  |
| foldsubterms/5 | The predicate foldsubterms/5 calls call(Goal4, SubTerm1, SubTerm2, StateIn, StateOut) for each subterm, including variables, in Term1. |  |
| mapargs/3 | Term1 and Term2 have the same functor (name/arity) and for each matching pair of arguments call(Goal, A1, A2) is true. |  |
| mapsubterms/3 | Recursively map sub terms of Term1 into subterms of Term2 for every pair for which call(Goal, ST1, ST2) succeeds. |  |
| mapsubterms_var/3 | Recursively map sub terms of Term1 into subterms of Term2 for every pair for which call(Goal, ST1, ST2) succeeds. |  |
| same_functor/2 | True when Term1 and Term2 are terms that have the same functor (Name/Arity). |  |
| same_functor/3 | True when Term1 and Term2 are terms that have the same functor (Name/Arity). |  |
| same_functor/4 | True when Term1 and Term2 are terms that have the same functor (Name/Arity). |  |
| subsumes/2 | True if Generic is unified to Specific without changing Specific. |  |
| subsumes_chk/2 | True if Generic can be made equivalent to Specific without changing Specific. |  |
| term_factorized/3 | Is true when Skeleton is Term where all subterms that appear multiple times are replaced by a variable and Substitution is a list of Var=Value that provides the subterm at the location Var. |  |
| term_size/2 | True if Size is the size in cells occupied by Term on the global (term) stack. |  |
| term_subsumer/3 | General is the most specific term that is a generalisation of Special1 and Special2. |  |
| variant/2 | Same as SWI-Prolog Term1 =@= Term2. |  |
thread.pl -- High level thread primitives |
| call_in_thread/2 | Run Goal as an interrupt in the context of Thread. |  |
| concurrent/3 | Run Goals in parallel using N threads. |  |
| concurrent_and/2 | Concurrent version of (Generator,Test). |  |
| concurrent_and/3 | Concurrent version of (Generator,Test). |  |
| concurrent_forall/2 | True when Action is true for all solutions of Generate. |  |
| concurrent_forall/3 | True when Action is true for all solutions of Generate. |  |
| concurrent_maplist/2 | Concurrent version of maplist/2. |  |
| concurrent_maplist/3 | Concurrent version of maplist/2. |  |
| concurrent_maplist/4 | Concurrent version of maplist/2. |  |
| first_solution/3 | Try alternative solvers concurrently, returning the first answer. |  |
thread_pool.pl -- Resource bounded thread management |
threadutil.pl -- Interactive thread utilities |
| attach_console/0 | Create a new console and make the standard Prolog streams point to it. |  |
| attach_console/1 | Create a new console and make the standard Prolog streams point to it. |  |
| join_threads/0 | Join all terminated threads. |  |
| tbacktrace/1 | Print a backtrace for Thread to the stream user_error of the calling thread. |  |
| tbacktrace/2 | Print a backtrace for Thread to the stream user_error of the calling thread. |  |
| tdebug/0 | Enable debug-mode, trapping the graphical debugger on reaching spy-points or errors. |  |
| tdebug/1 | Enable debug-mode, trapping the graphical debugger on reaching spy-points or errors. |  |
| thread_has_console/0 | True when the calling thread has an attached console. |  |
| threads/0 | List currently known threads with their status. |  |
| tnodebug/0 | Disable debug-mode in all threads or the specified Thread. |  |
| tnodebug/1 | Disable debug-mode in all threads or the specified Thread. |  |
| tprofile/1 | Profile the operation of Thread until the user hits a key. |  |
| tspy/1 | Trap the graphical debugger on reaching Spec in the specified or any thread. |  |
| tspy/2 | Trap the graphical debugger on reaching Spec in the specified or any thread. |  |
| with_stopped_threads/2 | Stop all threads except the caller while running once(Goal). |  |
tty.pl |
| menu/3 | Show a menu. |  |
| tty_clear/0 | Clear the display. |  |
| tty_flash/0 | Give visual signal if possible, otherwise beep. |  |
ugraphs.pl |
| add_edges/3 | Unify NewGraph with a new graph obtained by adding the list of Edges to Graph. |  |
| add_vertices/3 | Unify NewGraph with a new graph obtained by adding the list of Vertices to Graph. |  |
| complement/2 | UGraphOut is a ugraph with an edge between all vertices that are not connected in UGraphIn and all edges from UGraphIn removed. |  |
| compose/3 | Compose NewGraph by connecting the drains of LeftGraph to the sources of RightGraph. |  |
| connect_ugraph/3 | Adds Start as an additional vertex that is connected to all vertices in UGraphIn. |  |
| del_edges/3 | Unify NewGraph with a new graph obtained by removing the list of Edges from Graph. |  |
| del_vertices/3 | Unify NewGraph with a new graph obtained by deleting the list of Vertices and all the edges that start from or go to a vertex in Vertices to the Graph. |  |
| edges/2 | Unify Edges with all edges appearing in Graph. |  |
| neighbors/3 | Neigbours is a sorted list of the neighbours of Vertex in Graph. |  |
| neighbours/3 | Neigbours is a sorted list of the neighbours of Vertex in Graph. |  |
| reachable/3 | True when Vertices is an ordered set of vertices reachable in UGraph, including Vertex. |  |
| top_sort/2 | Sort vertices topologically. |  |
| transitive_closure/2 | Generate the graph Closure as the transitive closure of Graph. |  |
| transpose_ugraph/2 | Unify NewGraph with a new graph obtained from Graph by replacing all edges of the form V1-V2 by edges of the form V2-V1. |  |
| ugraph_layers/2 | Sort vertices topologically. |  |
| ugraph_union/3 | NewGraph is the union of Graph1 and Graph2. |  |
| vertices/2 | Unify Vertices with all vertices appearing in Graph. |  |
| vertices_edges_to_ugraph/3 | Create a UGraph from Vertices and Edges. |  |
url.pl -- Analysing and constructing URL |
utf8.pl |
| utf8_codes/3 | DCG translating between a Unicode code-list and its UTF-8 encoded byte-string. |  |
varnumbers.pl |
| max_var_number/3 | True when Max is the max of Start and the highest numbered $VAR(N) term. |  |
| numbervars/1 | Number variables in Term using $VAR(N). |  |
| varnumbers/2 | Inverse of numbervars/1. |  |
| varnumbers/3 | Inverse of numbervars/3. |  |
| varnumbers_names/3 | If Term is a term with numbered and named variables using the reserved term '$VAR'(X), Copy is a copy of Term where each '$VAR'(X) is consistently replaced by a fresh variable and Bindings is a list X = Var, relating the X terms with the variable it is mapped to. |  |
wfs.pl -- Well Founded Semantics interface |
when.pl |
| when/2 | Execute Goal when Condition is satisfied. |  |
writef.pl |
| swritef/2 | Use writef/1 or writef/2 and write the result to a string. |  |
| swritef/3 | Use writef/1 or writef/2 and write the result to a string. |  |
| writef/1 | Formatted write to the current_output. |  |
| writef/2 | Formatted write to the current_output. |  |
www_browser.pl |
| expand_url_path/2 | Expand URL specifications similar to absolute_file_name/3. |  |
| known_browser/2 | True if browser FileBaseName has a remote protocol compatible to Compatible. |  |
| www_open_url/1 | Open URL in running version of the users' browser or start a new browser. |  |
yall.pl |
| //2 | Shorthand for Free/[]>>Lambda. |  |
| //3 | Shorthand for Free/[]>>Lambda. |  |
| //4 | Shorthand for Free/[]>>Lambda. |  |
| //5 | Shorthand for Free/[]>>Lambda. |  |
| //6 | Shorthand for Free/[]>>Lambda. |  |
| //7 | Shorthand for Free/[]>>Lambda. |  |
| //8 | Shorthand for Free/[]>>Lambda. |  |
| //9 | Shorthand for Free/[]>>Lambda. |  |
| >>/2 | Calls a copy of Lambda. |  |
| >>/3 | Calls a copy of Lambda. |  |
| >>/4 | Calls a copy of Lambda. |  |
| >>/5 | Calls a copy of Lambda. |  |
| >>/6 | Calls a copy of Lambda. |  |
| >>/7 | Calls a copy of Lambda. |  |
| >>/8 | Calls a copy of Lambda. |  |
| >>/9 | Calls a copy of Lambda. |  |
| is_lambda/1 | True if Term is a valid Lambda expression. |  |
| lambda_calls/2 | Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N. |  |
| lambda_calls/3 | Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N. |  |
zip.pl |
| with_zipper/2 | Run Goal while holding ownership over Zipper. |  |
| zip_close/1 | Close a zipper. |  |
| zip_close/2 | Close a zipper. |  |
| zip_open/4 | Create a Zipper, providing access to File. |  |
| zipper_file_info/3 | Obtain information about the current zip entry. |  |
| zipper_goto/2 | Seek Zipper to a specified entry. | |
| zipper_members/2 | True when Members is the list of file names in the Zipper. |  |
| zipper_open_current/3 | Open the current entry as an input stream. | |