aggregate.pl -- Aggregation operators on backtrackable predicates |
ansi_term.pl |
| ansi_format/3 | Format text with ANSI attributes. |  |
| ansi_format/4 | 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 |
| convlist/3 | Similar to maplist/3, but elements for which call(Goal, ElemIn, _) fails are omitted from ListOut. |  |
| exclude/3 | Filter elements for which Goal fails. |  |
| foldl/4 | Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal. |  |
| foldl/5 | Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal. |  |
| foldl/6 | Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal. |  |
| foldl/7 | Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal. |  |
| include/3 | Filter elements for which Goal succeeds. |  |
| maplist/2 | True if Goal is successfully applied on all matching elements of the list. |  |
| maplist/3 | True if Goal is successfully applied on all matching elements of the list. |  |
| maplist/4 | True if Goal is successfully applied on all matching elements of the list. |  |
| maplist/5 | True if Goal is successfully applied on all matching elements of the list. |  |
| partition/4 | Filter elements of List according to Pred. |  |
| partition/5 | Filter List according to Pred in three sets. |  |
| scanl/4 | Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal. |  |
| scanl/5 | Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal. |  |
| scanl/6 | Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal. |  |
| scanl/7 | Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal. |  |
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 -- Extensible arithmetic |
assoc.pl |
| assoc_to_keys/2 | True if Keys is the list of keys in Assoc. |  |
| assoc_to_list/2 | Translate Assoc to a list Pairs of Key-Value pairs. |  |
| assoc_to_values/2 | True if Values is the list of values in Assoc. |  |
| del_assoc/4 | True if Key-Value is in Assoc0. |  |
| del_max_assoc/4 | True if Key-Value is in Assoc0 and Key is the greatest key. |  |
| del_min_assoc/4 | True if Key-Value is in Assoc0 and Key is the smallest key. |  |
| empty_assoc/1 | Is true if Assoc is the empty association list. |  |
| gen_assoc/3 | True if Key-Value is an association in Assoc. |  |
| get_assoc/3 | True if Key-Value is an association in Assoc. |  |
| get_assoc/5 | True if Key-Val0 is in Assoc0 and Key-Val is in Assoc. |  |
| is_assoc/1 | True if Assoc is an association list. |  |
| list_to_assoc/2 | Create an association from a list Pairs of Key-Value pairs. |  |
| map_assoc/2 | True if Pred(Value) is true for all values in Assoc. |  |
| map_assoc/3 | Map corresponding values. |  |
| max_assoc/3 | True if Key-Value is in Assoc and Key is the largest key. |  |
| min_assoc/3 | True if Key-Value is in assoc and Key is the smallest key. |  |
| ord_list_to_assoc/2 | Assoc is created from an ordered list Pairs of Key-Value pairs. |  |
| put_assoc/4 | Assoc is Assoc0, except that Key is associated with Value. |  |
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 -- Backward compatibility |
| $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_length/3 | |  |
| 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 |
| broadcast/1 | Broadcast given event. |  |
| broadcast_request/1 | Broadcast given event till accepted. |  |
| listen/2 | Open a channel for listening for events of the given `Templ'. |  |
| listen/3 | Open a channel for listening for events of the given `Templ'. |  |
| listening/3 | returns currently open channels. |  |
| unlisten/1 | Destroy a channel. |  |
| unlisten/2 | Destroy a channel. |  |
| unlisten/3 | Destroy a channel. |  |
charsio.pl -- I/O on Lists of Character Codes |
| atom_to_chars/2 | Convert Atom into a list of character codes. |  |
| atom_to_chars/3 | Convert Atom into a difference list of character codes. |  |
| format_to_chars/3 | Use format/2 to write to a list of character codes. |  |
| format_to_chars/4 | Use format/2 to write to a difference list of character codes. |  |
| number_to_chars/2 | Convert Atom into a list of character codes. |  |
| number_to_chars/3 | Convert Number into a difference list of character codes. |  |
| open_chars_stream/2 | Open Codes as an input stream. |  |
| read_from_chars/2 | Read Codes into Term. |  |
| read_term_from_chars/3 | Read Codes into Term. |  |
| with_output_to_chars/2 | Run Goal as with once/1. |  |
| with_output_to_chars/3 | Run Goal as with once/1. |  |
| with_output_to_chars/4 | Same as with_output_to_chars/3 using an explicit stream. |  |
| write_to_chars/2 | Write a term to a code list. |  |
| write_to_chars/3 | Write a term to a code list. |  |
check.pl -- Consistency checking |
check_installation.pl -- Check installation issues and features |
| check_config_files/0 | Examines the locations of config files. |  |
| check_installation/0 | Check features of the installed system. |  |
| check_installation/1 | As check_installation/0, but additionally returns a list of Component-Problem pairs. |  |
| test_installation/0 | Run regression tests in the installed system. |  |
| test_installation/1 | Run regression tests in the installed system. |  |
| update_config_files/0 | Move config files from their old location to the new if the file or directory exists in the old location but not in the new. |  |
codesio.pl |
| format_to_codes/3 | Use format/2 to write to a list of character codes. |  |
| format_to_codes/4 | Use format/2 to write to a difference list of character codes. |  |
| open_codes_stream/2 | Open Codes as an input stream. |  |
| read_from_codes/2 | Read Codes into Term. |  |
| read_term_from_codes/3 | Read Codes into Term. |  |
| with_output_to_codes/2 | Run Goal with as once/1. |  |
| with_output_to_codes/3 | Run Goal with as once/1. |  |
| with_output_to_codes/4 | As with_output_to_codes/3, but Stream is unified with the temporary stream. |  |
| write_term_to_codes/3 | True when Codes is a string that matches the output of write_term/3 using Options. |  |
| write_term_to_codes/4 | True when Codes\Tail is a difference list containing the character codes that matches the output of write_term/3 using Options. |  |
| write_to_codes/2 | Codes is a list of character codes produced by write/1 on Term. |  |
| write_to_codes/3 | Codes is a difference-list of character codes produced by write/1 on Term. |  |
coinduction.pl -- Co-Logic Programming |
csv.pl |
| csv/3 | Prolog DCG to `read/write' CSV data. |  |
| csv/4 | Prolog DCG to `read/write' CSV data. |  |
| csv_options/2 | Compiled is the compiled representation of the CSV processing options as they may be passed into csv//2, etc. |  |
| csv_read_file/2 | Read a CSV file into a list of rows. |  |
| csv_read_file/3 | Read a CSV file into a list of rows. |  |
| csv_read_file_row/3 | True when Row is a row in File. |  |
| csv_read_row/3 | Read the next CSV record from Stream and unify the result with Row. |  |
| csv_read_stream/3 | Read CSV data from Stream. |  |
| csv_write_file/2 | Write a list of Prolog terms to a CSV file. |  |
| csv_write_file/3 | Write a list of Prolog terms to a CSV file. |  |
| csv_write_stream/3 | Write the rows in Data to Stream. |  |
ctypes.pl -- Character code classification |
date.pl |
| date_time_value/3 | Extract values from a date-time structure. |  |
| day_of_the_week/2 | Computes the day of the week for a given date. |  |
| day_of_the_year/2 | Computes the day of the year for a given date. |  |
| parse_time/2 | Stamp is a timestamp created from parsing Text using the representation Format. |  |
| parse_time/3 | Stamp is a timestamp created from parsing Text using the representation Format. |  |
debug.pl |
| assertion_failed/2 | This hook is called if the Goal of assertion/1 fails. | |
| debug_print_hook/3 | Hook called by debug/3. |  |
| assertion/1 | Acts similar to C assert() macro. |  |
| debug/1 | Add/remove a topic from being printed. |  |
| debug/3 | Format a message if debug topic is enabled. |  |
| debug_message_context/1 | Specify additional context for debug messages. |  |
| debugging/1 | Examine debug topics. |  |
| debugging/2 | Examine debug topics. |  |
| list_debug_topics/0 | List currently known topics for debug/3 and their setting. |  |
| list_debug_topics/1 | List currently known topics for debug/3 and their setting. |  |
| nodebug/1 | Add/remove a topic from being printed. |  |
dialect.pl -- Support multiple Prolog dialects |
dicts.pl -- Dict utilities |
dif.pl -- The dif/2 constraint |
edinburgh.pl -- Some traditional Edinburgh predicates |
edit.pl |
| addr2location/3 | Get the File and Line for a C address. |  |
| 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 | |  |
| locations/2 | Locate entities matching Spec. |  |
| predicate_location/2 | Find the source location of a predicate. |  |
| 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 |
| catch/4 | As catch/3, only catching exceptions for which exception(ErrorType,Ball) is true. |  |
| error_term/2 | Describe the formal part of error(Formal,ImplDefined) exceptions. |  |
| exception/2 | If Ball is unbound, adds a delayed goal that tests the error belongs to Type when Ball is instantiated (by catch/3). |  |
| exception_term/2 | Describe exceptions that are not error(Formal, _) terms. |  |
| exception_type/2 | Declare all exceptions subsumed by Term to be an exception of Type. |  |
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. |  |
git.pl |
| git/2 | Run a GIT command. |  |
| git_branches/2 | True when Branches is the list of branches in the repository. |  |
| git_default_branch/2 | True when BranchName is the current branch of a repository. |  |
| git_default_branch/2 | True when BranchName is the default branch of a repository. |  |
| git_describe/2 | Describe the running version based on GIT tags and hashes. |  |
| git_hash/2 | Return the hash of the indicated object. |  |
| git_ls_remote/3 | Execute git ls-remote against the remote repository to fetch references from the remote. |  |
| git_ls_tree/2 | True when Entries is a list of entries in the the GIT repository, Each entry is a term:. |  |
| git_open_file/4 | Open the file File in the given bare GIT repository on the given branch (treeisch). |  |
| git_process_output/3 | Run a git-command and process the output with OnOutput, which is called as call(OnOutput, Stream). |  |
| git_remote_branches/2 | Exploit git_ls_remote/3 to fetch the branches from a remote repository without downloading it. |  |
| git_remote_url/3 | URL is the remote (fetch) URL for the given Remote. |  |
| git_shortlog/3 | Fetch information like the GitWeb change overview. |  |
| git_show/4 | Fetch info from a GIT commit. |  |
| git_tags/2 | True when Tags is a list of git tags defined on the repository. |  |
| git_tags_on_branch/3 | Tags is a list of tags in Branch on the GIT repository Dir, most recent tag first. |  |
| is_git_directory/1 | True if Directory is a git directory (Either checked out or bare). |  |
| is_git_hash/1 | True when Atom represents a GIT hash, i.e., a 40 digit hexadecimal string. |  |
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 |
| apropos/1 | Print objects from the manual whose name or summary match with Query. |  |
| help/0 | Show help for What. |  |
| help/1 | Show help for What. |  |
| help_apropos/4 | Find matching documented objects in the help database. |  |
| help_text/2 | When Predicate is a term of the form Name/Arity for which documentation exists, HelpText is the documentation in textual format (parsed from the HTML help). |  |
| show_html_hook/1 | Hook called to display the extracted HTML document. |  |
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 |
| listing/0 | Lists all predicates defined in the calling module. |  |
| listing/1 | List matching clauses. |  |
| listing/2 | List matching clauses. |  |
| portray_clause/1 | Portray `Clause' on the current output stream. |  |
| portray_clause/2 | Portray `Clause' on the current output stream. |  |
| portray_clause/3 | Portray `Clause' on the current output stream. |  |
lists.pl -- List Manipulation |
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 -- Provide entry point for scripts |
make.pl -- Reload modified source files |
modules.pl -- Module utility predicates |
nb_rbtrees.pl |
| nb_rb_get_node/3 | True if Node is the node in RBTree associated to Key. |  |
| nb_rb_insert/3 | Add Key-Value to the tree RBTree using non-backtrackable destructive assignment. |  |
| nb_rb_node_value/2 | Value is the value associated to Node. |  |
| nb_rb_set_node_value/2 | Associate Value with Node. |  |
nb_set.pl -- Non-backtrackable sets |
occurs.pl |
| contains_term/2 | Succeeds if Sub is contained in Term (=, deterministically). |  |
| contains_var/2 | Succeeds if Sub is contained in Term (==, deterministically). |  |
| free_of_term/2 | Succeeds of Sub does not unify to any subterm of Term. |  |
| free_of_var/2 | Succeeds of Sub is not equal (==) to any subterm of Term. |  |
| occurrences_of_term/3 | Count the number of SubTerms in Term that unify with SubTerm. |  |
| occurrences_of_var/3 | Count the number of SubTerms in Term that are equal to SubTerm. |  |
| sub_term/2 | Generates (on backtracking) all subterms of Term. |  |
| sub_term_shared_variables/3 | If Sub is a sub term of Term, Vars is bound to the list of variables in Sub that also appear outside Sub in Term. |  |
| sub_var/2 | Generates (on backtracking) all subterms (==) of Term. |  |
operators.pl -- Manage operators |
option.pl -- Option list processing |
optparse.pl -- command line parsing |
ordsets.pl -- Ordered set manipulation |
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 |
| group_pairs_by_key/2 | Group values with equivalent (==/2) consecutive keys. |  |
| map_list_to_pairs/3 | Create a Key-Value list by mapping each element of List. |  |
| pairs_keys/2 | Remove the values from a list of Key-Value pairs. |  |
| pairs_keys_values/3 | True if Keys holds the keys of Pairs and Values the values. |  |
| pairs_values/2 | Remove the keys from a list of Key-Value pairs. |  |
| transpose_pairs/2 | Swap Key-Value to Value-Key. |  |
persistency.pl -- Provide persistent dynamic predicates |
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 |
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 syntax colouring support. |
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 -- Coverage analysis tool |
prolog_debug.pl -- User level debugging tools |
| debug_control_hook/1 | Allow user-hooks in the Prolog debugger interaction. | |
| debugging/0 | Report current status of the debugger. |  |
| debugging_hook/1 | Multifile hook that is called as forall(debugging_hook(DebugMode), true) and that may be used to extend the information printed from other debugging libraries. |  |
| exception_hook/5 | Trap exceptions and consider whether or not to start the tracer. |  |
| nospy/1 | Set/clear spy-points. |  |
| nospyall/0 | Set/clear spy-points. |  |
| notrap/1 | Install a trap on error(Formal, Context) exceptions that unify. |  |
| spy/1 | Set/clear spy-points. |  |
| trap/1 | Install a trap on error(Formal, Context) exceptions that unify. |  |
| trap_alias/2 | Define short hands for commonly used exceptions. |  |
prolog_deps.pl |
| file_auto_import/2 | Update the autoload/2 directives for File. |  |
| file_autoload_directives/3 | Compute the dependencies as autoload/2 directives. |  |
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 |
| infer_meta_predicate/2 | True when MetaSpec is a meta-predicate specifier for the predicate Head. |  |
| inferred_meta_predicate/2 | True when MetaSpec is an inferred meta-predicate specification for Head. |  |
prolog_pack.pl -- A package manager for Prolog |
prolog_profile.pl |
| profile/1 | Run once(Goal) under the execution profiler. |  |
| profile/2 | Run once(Goal) under the execution profiler. |  |
| profile_data/1 | Gather all relevant data from profiler. |  |
| profile_procedure_data/2 | Collect data for Pred. |  |
| show_profile/1 | Display last collected profiling data. |  |
prolog_source.pl |
| quasi_quotation_syntax/2 | True when the quasi quotation syntax Syntax can be loaded from Library. |  |
| xref_close_source/2 | Called by prolog_close_source/1 to close a source previously opened by the hook prolog:xref_open_source/2. |  |
| xref_open_source/2 | Hook to open an xref SourceID. |  |
| directory_source_files/3 | True when Files is a sorted list of Prolog source files in Dir. |  |
| file_alias_path/2 | True if file Alias points to Dir. |  |
| file_name_on_path/2 | True if OnPath a description of File based on the file search path. |  |
| load_quasi_quotation_syntax/2 | Import quasi quotation syntax Syntax from Path into the module specified by the first argument. |  |
| path_segments_atom/2 | Translate between a path represented as a/b/c and an atom representing the same path. |  |
| prolog_canonical_source/2 | Given a user-specification of a source, generate a unique and indexable identifier for it. |  |
| prolog_close_source/1 | Close a stream opened using prolog_open_source/2. |  |
| prolog_file_directives/3 | True when Directives is a list of directives that appear in the source file File. |  |
| prolog_open_source/2 | Open source with given canonical id (see prolog_canonical_source/2) and remove the #! |  |
| prolog_read_source_term/4 | Read a term from a Prolog source-file. |  |
| read_source_term_at_location/3 | Try to read a Prolog term form an arbitrary location inside a file. |  |
| requires_library/2 | known expansion hooks. |  |
prolog_stack.pl -- Examine the Prolog stack |
prolog_trace.pl -- Print access to predicates |
prolog_versions.pl |
| 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 |
prolog_xref.pl -- Prolog cross-referencer data collection |
pure_input.pl |
| lazy_list_character_count/3 | True when CharCount is the current character count in the Lazy list. |  |
| lazy_list_location/3 | Determine current (error) location in a lazy list. |  |
| phrase_from_file/2 | Process the content of File using the DCG rule Grammar. |  |
| phrase_from_file/3 | Process the content of File using the DCG rule Grammar. |  |
| phrase_from_stream/2 | Run Grammer against the character codes on Stream. |  |
| phrase_from_stream/3 | Run Grammer against the character codes on Stream. |  |
| stream_to_lazy_chars/2 | Create a lazy list representing the character codes (chars) in Stream. |  |
| stream_to_lazy_codes/2 | Create a lazy list representing the character codes (chars) in Stream. |  |
| stream_to_lazy_list/2 | Create a lazy list representing the character codes (chars) in Stream. |  |
| syntax_error/3 | Throw the syntax error Error at the current location of the input. |  |
qpforeign.pl |
| load_foreign_files/0 | Calls make_foreign_wrapper_file(+File), compiles the wrapper and loads the predicates. |  |
| load_foreign_files/2 | Calls make_foreign_wrapper_file(+File), compiles the wrapper and loads the predicates. |  |
| load_foreign_files/3 | Calls make_foreign_wrapper_file(+File), compiles the wrapper and loads the predicates. |  |
| load_foreign_resource/2 | Load a foreign module. |  |
| make_foreign_resource_wrapper/3 | Create a wrapper-file for the given foreign resource. |  |
| make_foreign_wrapper_file/1 | Just output the wrapper file to the named .c file. |  |
| make_foreign_wrapper_file/2 | Just output the wrapper file to the named .c file. |  |
| make_shared_object/3 | Generate a wrapper and link it using plld to the given SharedObject. |  |
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 |
| getrand/1 | Query/set the state of the random generator. |  |
| maybe/0 | Succeed/fail with equal probability (variant of maybe/1). |  |
| maybe/1 | Succeed with probability P, fail with probability 1-P. |  |
| maybe/2 | Succeed with probability K/N (variant of maybe/1). |  |
| random/1 | Binds R to a new random float in the open interval (0.0,1.0). |  |
| random/3 | Generate a random integer or float in a range. |  |
| random_between/3 | Binds R to a random integer in [L,U] (i.e., including both L and U). |  |
| random_member/2 | X is a random member of List. |  |
| random_numlist/4 | Unify List with an ascending list of integers between L and U (inclusive). |  |
| random_perm2/4 | Does X=A,Y=B or X=B,Y=A with equal probability. |  |
| random_permutation/2 | Permutation is a random permutation of List. |  |
| random_select/3 | Randomly select or insert an element. |  |
| random_subseq/3 | Selects a random subsequence Subseq of List, with Complement containing all elements of List that were not selected. |  |
| randseq/3 | S is a list of K unique random integers in the range 1..N. |  |
| randset/3 | S is a sorted list of K unique random integers in the range 1..N. |  |
| setrand/1 | Query/set the state of the random generator. |  |
rbtrees.pl -- Red black trees |
| is_rbtree/1 | True if Term is a valid Red-Black tree. |  |
| list_to_rbtree/2 | Tree is the red-black tree corresponding to the mapping in List, which should be a list of Key-Value pairs. |  |
| ord_list_to_rbtree/2 | Tree is the red-black tree corresponding to the mapping in list List, which should be a list of Key-Value pairs. |  |
| rb_apply/4 | If the value associated with key Key is Val0 in Tree, and if call(G,Val0,ValF) holds, then NewTree differs from Tree only in that Key is associated with value ValF in tree NewTree. |  |
| rb_clone/3 | `Clone' the red-back tree TreeIn into a new tree TreeOut with the same keys as the original but with all values set to unbound values. |  |
| rb_del_max/4 | Delete the largest element from the tree Tree, returning the key Key, the value Val associated with the key and a new tree NewTree. |  |
| rb_del_min/4 | Delete the least element from the tree Tree, returning the key Key, the value Val associated with the key and a new tree NewTree. |  |
| rb_delete/3 | Delete element with key Key from the tree Tree, returning the value Val associated with the key and a new tree NewTree. |  |
| rb_delete/4 | Same as rb_delete(Tree, Key, NewTree), but also unifies Val with the value associated with Key in Tree. |  |
| rb_empty/1 | Succeeds if Tree is an empty Red-Black tree. |  |
| rb_fold/4 | Fold the given predicate over all the key-value pairs in Tree, starting with initial state State0 and returning the final state State. |  |
| rb_in/3 | True when Key-Value is a key-value pair in red-black tree Tree. |  |
| rb_insert/4 | Add an element with key Key and Value to the tree Tree creating a new red-black tree NewTree. |  |
| rb_insert_new/4 | Add a new element with key Key and Value to the tree Tree creating a new red-black tree NewTree. |  |
| rb_keys/2 | Keys is unified with an ordered list of all keys in the Red-Black tree Tree. |  |
| rb_lookup/3 | True when Value is associated with Key in the Red-Black tree Tree. |  |
| rb_map/2 | True if call(Goal, Value) is true for all nodes in T. |  |
| rb_map/3 | For all nodes Key in the tree Tree, if the value associated with key Key is Val0 in tree Tree, and if call(G,Val0,ValF) holds, then the value associated with Key in NewTree is ValF. |  |
| rb_max/3 | Key is the maximal key in Tree, and is associated with Val. |  |
| rb_min/3 | Key is the minimum key in Tree, and is associated with Val. |  |
| rb_new/1 | Create a new Red-Black tree Tree. |  |
| rb_next/4 | Next is the next element after Key in Tree, and is associated with Val. |  |
| rb_partial_map/4 | For all nodes Key in Keys, if the value associated with key Key is Val0 in tree Tree, and if call(G,Val0,ValF) holds, then the value associated with Key in NewTree is ValF, otherwise it is the value associated with the key in Tree. |  |
| rb_previous/4 | Previous is the previous element after Key in Tree, and is associated with Val. |  |
| rb_size/2 | Size is the number of elements in Tree. |  |
| rb_update/4 | Tree NewTree is tree Tree, but with value for Key associated with NewVal. |  |
| rb_update/5 | Same as rb_update(Tree, Key, NewVal, NewTree) but also unifies OldVal with the value associated with Key in Tree. |  |
| rb_visit/2 | Pairs is an infix visit of tree Tree, where each element of Pairs is of the form Key-Value. |  |
| rb_visit_range/4 | Retrieves a range of pairs with keys between Min and Max (inclusive) from a Tree using standard term comparison. |  |
readln.pl |
readutil.pl |
| read_file_to_codes/3 | Read the file Spec into a list of Codes. |  |
| read_file_to_string/3 | Read the file Spec into a the string String. |  |
| read_file_to_terms/3 | Read the file Spec into a list of terms. |  |
| read_line_to_codes/2 | Read the next line of input from Stream. |  |
| read_line_to_codes/3 | Difference-list version to read an input line to a list of character codes. |  |
| read_line_to_string/2 | Read the next line from Stream into String. |  |
| read_stream_to_codes/2 | Read input from Stream to a list of character codes. |  |
| read_stream_to_codes/3 | Read input from Stream to a list of character codes. |  |
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 |
| sandbox_allowed_directive/1 | Throws an exception if G is not considered a safe directive. |  |
| sandbox_allowed_expansion/1 | Throws an exception if G is not considered a safe expansion goal. |  |
| sandbox_allowed_goal/1 | Throw an exception if it is not safe to call G. |  |
| format_calls/3 | Find ~@ calls from Format and Args. |  |
| safe_call/1 | Call Goal if it complies with the sandboxing rules. |  |
| safe_directive/1 | Hook to declare additional directives as safe. |  |
| safe_global_variable/1 | Declare the given global variable safe to write to. |  |
| safe_goal/1 | True if calling Goal provides no security risc. |  |
| safe_meta/2 | Hook. |  |
| safe_primitive/1 | True if Goal is safe to call (i.e., cannot access dangerous system-resources and cannot upset other parts of the Prolog process). |  |
| safe_prolog_flag/2 | True if it is safe to set the flag Flag to Value. |  |
settings.pl -- Setting management |
shell.pl |
| 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 -- Modify solution sequences |
sort.pl |
statistics.pl -- Get information about resource usage |
| call_time/2 | Call Goal as call/1, unifying Time with a dict that provides information on the resource usage. |  |
| call_time/3 | Call Goal as call/1, unifying Time with a dict that provides information on the resource usage. |  |
| statistics/0 | Print information about resource usage using print_message/2. |  |
| statistics/1 | Stats is a dict representing the same information as statistics/0. |  |
| thread_statistics/2 | Obtain statistical information about a single thread. |  |
| time/1 | Execute Goal, reporting statistics to the user. |  |
streams.pl -- Manage Prolog streams |
strings.pl |
| indent_lines/3 | Add Prefix to the beginning of lines in In. |  |
| indent_lines/4 | Similar to indent_lines/3, but only adds Prefix to lines for which call(Filter, Line) succeeds. |  |
| interpolate_string/4 | Establish a string from a template by replacing patterns. |  |
| string/4 | Implements the quasi quotation syntax string. |  |
| string_lines/2 | True when String represents Lines. |  |
system.pl -- System utilities |
| lock_predicate/1 | Transform a predicate into a system predicate. |  |
| system_mode/1 | Switch the system into system or user mode. |  |
| system_module/0 | Any predicate defined after this declaraction uptil the end of the file will become a system predicate. |  |
| unlock_predicate/1 | Transform a system predicate into a normal system predicate. |  |
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. |  |
tableutil.pl |
| summarize_idg/0 | Implements XSB's statistics(summarize_idg). |  |
| summarize_idg/1 | Implements XSB's statistics(summarize_idg). |  |
| table_statistics/0 | Print a summary of statistics relevant to tabling. |  |
| table_statistics/1 | Print a summary for the statistics of all tables for subgoals of Variant. |  |
| table_statistics/2 | Give summary statistics for the tables associated with all subgoals of Variant. |  |
| table_statistics/3 | Give summary statistics for the tables associated with all subgoals of Variant. |  |
| table_statistics_by_predicate/0 | Print statistics on memory usage and lookups per predicate. |  |
| table_statistics_by_predicate/1 | Print statistics on memory usage and lookups per predicate. |  |
| tdump/0 | Dump all tables and their status that unify with Goal. |  |
| tdump/1 | Dump all tables and their status that unify with Goal. |  |
| tdump/2 | Dump all tables and their status that unify with Goal. |  |
| tidg/0 | Dump the incremental dependency graph. |  |
| tidg/1 | Dump the incremental dependency graph. |  |
| tstat/2 | Print the top-N (for positive Top) or bottom-N (for negative Top) for Stat for all tabled subgoals of Variant (or all tabled subgoals for tstat/2). |  |
| tstat/3 | Print the top-N (for positive Top) or bottom-N (for negative Top) for Stat for all tabled subgoals of Variant (or all tabled subgoals for tstat/2). |  |
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 |
thread_pool.pl |
| create_pool/1 | Hook to create a thread pool lazily. |  |
| current_thread_pool/1 | True if Name refers to a defined thread pool. |  |
| thread_create_in_pool/4 | Create a thread in Pool. |  |
| thread_pool_create/3 | Create a pool of threads. |  |
| thread_pool_destroy/1 | Destroy the thread pool named Name. |  |
| thread_pool_property/2 | True if Property is a property of thread pool Name. |  |
| worker_exitted/3 | It is possible that '__thread_pool_manager' no longer exists while closing down the process because the manager was killed before the worker. |  |
threadutil.pl -- Interactive thread utilities |
ugraphs.pl -- Graph manipulation library |
url.pl |
| file_name_to_url/2 | Translate between a filename and a file:// URL. |  |
| global_url/3 | Translate a possibly relative URL into an absolute one. |  |
| http_location/2 | Construct or analyze an HTTP location. |  |
| is_absolute_url/1 | True if URL is an absolute URL. |  |
| parse_url/2 | Construct or analyse a URL. |  |
| parse_url/3 | Similar to parse_url/2 for relative URLs. |  |
| parse_url_search/2 | Construct or analyze an HTTP search specification. |  |
| set_url_encoding/2 | Query and set the encoding for URLs. |  |
| url_iri/2 | Convert between a URL, encoding in US-ASCII and an IRI. |  |
| www_form_encode/2 | En/decode to/from application/x-www-form-encoded. |  |
utf8.pl |
| utf8_codes/3 | DCG translating between a Unicode code-list and its UTF-8 encoded byte-string. |  |
varnumbers.pl -- Utilities for numbered terms |
vm.pl |
| clause_vm/2 | True when VM is the virtual machine code of ClauseRef. |  |
| vm_list/1 | Lists the definition of the predicates matching Spec to current_output. |  |
| vmi_labels/2 | Translated between a raw and a labeled representation for a VMI sequence as produced by clause_vm/2. |  |
wfs.pl -- Well Founded Semantics interface |
when.pl |
| when/2 | Execute Goal when Condition is satisfied. |  |
writef.pl -- Old-style formatted write |
www_browser.pl -- Open a URL in the users browser |
yall.pl -- Lambda expressions |
zip.pl -- Access resource ZIP archives |