aggregate.pl -- Aggregation operators on backtrackable predicates |
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 -- Extensible arithmetic |
assoc.pl -- Binary associations |
atom.pl -- Operations on atoms |
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_ln/1 | |  |
base32.pl |
| base32/2 | Translates between plaintext and base32 encoded atom or string. |  |
| base32/3 | Encode/decode list of character codes using base32. |  |
base64.pl -- Base64 encoding and decoding |
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 |
| coinductive/1 | The declaration :- coinductive name/arity, ... defines predicates as coinductive. |  |
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 |
| 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 |
| 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 |
| 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. |  |
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 |
| 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 -- Hash tables |
heaps.pl |
| add_to_heap/4 | Adds Key with priority Priority to Heap0, constructing a new heap in Heap. |  |
| delete_from_heap/4 | Deletes Key from Heap0, leaving its priority in Priority and the resulting data structure in Heap. |  |
| empty_heap/1 | True if Heap is an empty heap. |  |
| get_from_heap/4 | Retrieves the minimum-priority pair Priority-Key from Heap0. |  |
| heap_size/2 | Determines the number of elements in Heap. |  |
| heap_to_list/2 | Constructs a list List of Priority-Element terms, ordered by (ascending) priority. |  |
| is_heap/1 | Returns true if X is a heap. |  |
| list_to_heap/2 | If List is a list of Priority-Element terms, constructs a heap out of List. |  |
| merge_heaps/3 | Merge the two heaps Heap0 and Heap1 in Heap. |  |
| min_of_heap/3 | Unifies Key with the minimum-priority element of Heap and Priority with its priority value. |  |
| min_of_heap/5 | Gets the two minimum-priority elements from Heap. |  |
| singleton_heap/3 | True if Heap is a heap with the single element Priority-Key. |  |
help.pl -- Text based manual |
increval.pl |
| incr_directly_depends/2 | True if Goal1 depends on Goal2 in the IDG. |  |
| incr_invalid_subgoals/1 | List is a sorted list (set) of the incremental subgoals that are currently invalid. |  |
| incr_invalidate_call/1 | This is the XSB name, but the manual says incr_invalidate_calls/1 and the comment with the code suggests this is misnamed. |  |
| incr_invalidate_calls/1 | Invalidate all tables for subgoals of Goal as well as tables that are affected by these. |  |
| incr_is_invalid/1 | True when Subgoal's table is marked as invalid. |  |
| incr_propagate_calls/1 | Activate the monotonic answer propagation similarly to when a new fact is asserted for a monotonic dynamic predicate. |  |
| incr_table_update/0 | Updated all invalid tables. |  |
| incr_trans_depends/2 | True for each pair in the transitive closure of incr_directly_depends(G1, G2). |  |
| is_incremental_subgoal/1 | This predicate non-deterministically unifies Subgoal with incrementally tabled subgoals that are currently table entries. |  |
intercept.pl -- Intercept and signal interface |
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 list handling |
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. |  |
main.pl -- Provide entry point for scripts |
make.pl -- Reload modified source files |
modules.pl |
| current_temporary_module/1 | True when we are executing in the given temporary module context. |  |
| in_temporary_module/3 | Run Goal on temporary loaded sources and discard the module and loaded predicates after completion. |  |
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 |
| 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 |
| 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 |
| dict_options/2 | Convert between an option list and a dictionary. |  |
| merge_options/3 | Merge two option sets. |  |
| meta_options/3 | Perform meta-expansion on options that are module-sensitive. |  |
| option/2 | Get an Option from Options. |  |
| option/3 | Get an Option from Options. |  |
| select_option/3 | Get and remove Option from Options. |  |
| select_option/4 | Get and remove Option with default value. |  |
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 |
| 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 -- Pure I/O |
portray_text.pl -- Portray text |
pprint.pl -- Pretty Print Prolog terms |
predicate_options.pl -- Access and analyse predicate options |
prolog_autoload.pl |
| autoload_all/0 | Force all necessary autoloading to be done now. |  |
| autoload_all/1 | Force all necessary autoloading to be done now. |  |
prolog_breakpoints.pl |
| breakpoint_property/2 | True when Property is a property of the breakpoint Id. |  |
| delete_breakpoint/1 | Delete breakpoint with given Id. |  |
| set_breakpoint/4 | Put a breakpoint at the indicated source-location. |  |
| set_breakpoint/5 | Put a breakpoint at the indicated source-location. |  |
| set_breakpoint_condition/2 | Set a condition for of the breakpoint with given Id. |  |
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_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 -- Provide configuration information |
prolog_coverage.pl -- Coverage analysis tool |
prolog_debug.pl |
| 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_format.pl -- Analyse format specifications |
prolog_history.pl |
| prolog_history/1 | Execute Action on the history. |  |
prolog_jiti.pl -- Just In Time Indexing (JITI) utilities |
prolog_metainference.pl |
| 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 -- Execution profiler |
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. |  |
| valid_term_position/2 | Check that a Term has an appropriate TermPos layout. |  |
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 |
prolog_wrap.pl |
| 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 |
quasi_quotations.pl -- Define Quasi Quotation syntax |
quintus.pl |
| abs/2 | Unify `Absolute' with the absolute value of `Number'. |  |
| acos/2 | Math library predicates. |  |
| asin/2 | Math library predicates. |  |
| atan/2 | Math library predicates. |  |
| atan2/3 | Math library predicates. |  |
| atom_char/2 | Same as ISO char_code/2. |  |
| ceiling/2 | Math library predicates. |  |
| compile/1 | Compile files. |  |
| cos/2 | Math library predicates. |  |
| current_stream/3 | SICStus/Quintus and backward compatible predicate. |  |
| date/1 | Get current date as date(Y,M,D). |  |
| floor/2 | Math library predicates. |  |
| genarg/3 | Generalised version of ISO arg/3. |  |
| log/2 | Math library predicates. |  |
| log10/2 | Math library predicates. |  |
| midstring/3 | Too difficult to explain. |  |
| midstring/4 | Too difficult to explain. |  |
| midstring/5 | Too difficult to explain. |  |
| midstring/6 | Too difficult to explain. |  |
| no_style_check/1 | Same as SWI-Prolog style_check(-Style). |  |
| on_exception/3 | |  |
| otherwise/0 | For (A -> B ; otherwise -> C). |  |
| pow/3 | Math library predicates. |  |
| prolog_flag/2 | Same as ISO current_prolog_flag/2. |  |
| raise_exception/1 | Quintus compatible exception handling. |  |
| round/2 | Math library predicates. |  |
| sign/2 | Math library predicates. |  |
| simple/1 | Term is atomic or a variable. |  |
| sin/2 | Math library predicates. |  |
| skip_line/0 | Skip the rest of the current line (on Stream). |  |
| skip_line/1 | Skip the rest of the current line (on Stream). |  |
| sqrt/2 | Math library predicates. |  |
| stream_position/3 | True when Old is the current position in Stream and the stream has been repositioned to New. |  |
| tan/2 | Math library predicates. |  |
| unix/1 | This predicate provides a partial emulation of the corresponding Quintus predicate. |  |
random.pl -- Random numbers |
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. |  |
readutil.pl -- Read utilities |
record.pl |
| current_record/2 | True if Name is the name of a record defined in the module associated with Term and Term is the user-provided record declaration. |  |
| current_record_predicate/2 | True if PI is the predicate indicator for an access predicate to Record. |  |
| record/1 | Define access predicates for a compound-term. |  |
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 |
| convert_setting_text/3 | Converts from textual form to Prolog Value. |  |
| current_setting/1 | True if Setting is a currently defined setting. |  |
| env/2 | Evaluate environment variables on behalf of arithmetic expressions. |  |
| env/3 | Evaluate environment variables on behalf of arithmetic expressions. |  |
| list_settings/0 | List settings to current_output. |  |
| list_settings/1 | List settings to current_output. |  |
| load_settings/1 | Load local settings from File. |  |
| load_settings/2 | Load local settings from File. |  |
| restore_setting/1 | Restore the value of setting Name to its default. |  |
| save_settings/0 | Save modified settings to File. |  |
| save_settings/1 | Save modified settings to File. |  |
| set_setting/2 | Change a setting. |  |
| set_setting_default/2 | Change the default for a setting. |  |
| setting/2 | True when Name is a currently defined setting with Value. |  |
| setting/4 | Define a setting. |  |
| setting_property/2 | Query currently defined settings. |  |
shell.pl -- Elementary shell commands |
shlib.pl |
| compat_arch/2 | User definable hook to establish if Arch1 is compatible with Arch2 when running a shared object. |  |
| current_foreign_library/2 | Query currently loaded shared libraries. |  |
| load_foreign_library/1 | Load a shared object or DLL. |  |
| load_foreign_library/2 | Load a shared object or DLL. |  |
| reload_foreign_libraries/0 | Reload all foreign libraries loaded (after restore of a state created using qsave_program/2. |  |
| unload_foreign_library/1 | Unload a shared object or DLL. |  |
| unload_foreign_library/2 | Unload a shared object or DLL. |  |
| use_foreign_library/1 | Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now. |  |
| use_foreign_library/2 | Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now. |  |
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 |
| locale_sort/2 | Sort a list of atoms using the current locale. |  |
| predsort/3 | Sorts similar to sort/2, but determines the order of two terms by calling Compare(-Delta, +E1, +E2). |  |
statistics.pl -- Get information about resource usage |
strings.pl -- String utilities |
system.pl |
| 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 -- XSB interface to tables |
terms.pl -- Term manipulation |
thread.pl |
| 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 |
| 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 |
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 -- Graph manipulation library |
url.pl -- Analysing and constructing URL |
utf8.pl -- UTF-8 encoding/decoding on lists of character codes. |
varnumbers.pl -- Utilities for numbered terms |
wfs.pl |
| answer_residual/2 | True when Goal resolves to a tabled predicate and Residual is the residual goal associated with an answer for Goal. |  |
| call_delays/2 | True when Goal is true with Delays. |  |
| call_residual_program/2 | Call Goal and return the full residual program as a list of Clauses. |  |
| delays_residual_program/2 | Given a delay as returned by call_delays/2, produce a set of clauses the represents the complete residual program responsible for these delays, The program contains at least one loop through tnot/1 and is either inconsistent or has multiple models according to the stable model semantics. |  |
when.pl -- Conditional coroutining |
writef.pl -- Old-style formatted write |
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 -- Lambda expressions |
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. | |