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_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 using the OSC 8 escape sequence. |  |
| ansi_hyperlink/3 | Create a hyperlink for a terminal emulator using the OSC 8 escape sequence. |  |
| ansi_sgr/2 | True when Sequence is the ANSI Select Graphic Rendition sequence that activates the attributes of ClassOrAttributes. |  |
| tty_url_hook/2 | Hook for location_url/2. |  |
| console_color/2 | As console_color/3, but for any theme. | |
| console_color/3 | Hook that allows for mapping abstract terms to concrete ANSI attributes. | |
| message_line_element/2 | Hook implementation that colours the message elements produced by print_message_lines/3. |  |
| theme_base/2 | Hook that makes Theme a variation of the theme Base. | |
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 |
base32.pl -- Base32 encoding and decoding |
base64.pl -- Base64 encoding and decoding |
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 |
| 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 |
| 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 |
| 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_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 -- The dif/2 constraint |
edinburgh.pl -- Some traditional Edinburgh predicates |
edit.pl -- Editor interface |
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 -- Describe Prolog Terms |
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 -- Generate unique symbols |
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 Value with priority Key to Heap0, constructing a new heap in Heap. |  |
| delete_from_heap/4 | Deletes Value from Heap0, leaving its priority in Key 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 Key-Value from Heap0. |  |
| heap_size/2 | Determines the number of elements in Heap. |  |
| heap_to_list/2 | Constructs a list List of Key-Value 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 Key-Value terms, constructs a heap out of List. |  |
| merge_heaps/3 | Merge the two heaps Heap0 and Heap1 in Heap. |  |
| min_of_heap/3 | Unifies Value with the minimum-priority element of Heap and Key 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 Key-Value. |  |
increval.pl -- Incremental dynamic predicate modification |
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_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 |
| 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_set.pl -- Non-backtrackable sets |
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 -- 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 |
pio.pl -- Pure I/O |
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/0 | Force all necessary autoloading to be done now. |  |
| autoload_all/1 | Force all necessary autoloading to be done now. |  |
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_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 |
| 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 |
| 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 -- Per-directory persistent commandline 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/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_qlfmake.pl -- Compile the library to QLF format |
| qlf_make/0 | Compile all files from the system libraries to .QLF format. |  |
| qlf_make/1 | Ensure a .QLF version of Spec. |  |
prolog_source.pl -- Examine Prolog source-files |
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 |
| 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 |
| called_by/2 | If this succeeds, the cross-referencer assumes Goal may call any of the goals in ListOfCalled. |  |
| called_by/4 | True when Called is a list of callable terms called from Goal, handled by the predicate Module:Goal and executed in the context of the module Context. |  |
| hook/1 | True if Goal is a hook that is called spontaneously (e.g., from foreign code). |  |
| meta_goal/2 | Define meta-predicates. |  |
| xref_called/3 | True when By is called from Called in Source. |  |
| xref_called/4 | True when By is called from Called in Source. |  |
| xref_called/5 | True when By is called from Called in Source. |  |
| xref_clean/1 | Reset the database for the given source. |  |
| xref_comment/3 | Is true when Source has a section comment with Title and Comment. |  |
| xref_comment/4 | Is true when Head in Source has the given PlDoc comment. |  |
| xref_current_source/1 | Check what sources have been analysed. |  |
| xref_defined/3 | Test if Goal is accessible in Source. |  |
| xref_definition_line/2 | If the 3th argument of xref_defined contains line info, return this in Line. |  |
| xref_done/2 | Cross-reference executed at Time. |  |
| xref_exported/2 | True when Source exports Head. |  |
| xref_hook/1 | Definition of known hooks. |  |
| xref_meta/2 | True when Called is a list of terms called from Head. |  |
| xref_meta/3 | True when Head calls Called in Source. |  |
| xref_mode/3 | Is true when Source provides a predicate with Mode and determinism. |  |
| xref_module/2 | True if Module is defined in Source. |  |
| xref_object_comment/4 | Is true when Object in Source has the given PlDoc comment. |  |
| xref_object_signature/3 | Is true when Object in Source has Signature as provided by the hook doc_compile_comment/5. |  |
| xref_op/2 | Give the operators active inside the module. |  |
| xref_option/2 | True when Source was processed using Option. |  |
| xref_prolog_flag/4 | True when Flag is set to Value at Line in Source. |  |
| xref_public_list/3 | Find meta-information about File. |  |
| xref_public_list/4 | Find meta-information about File. |  |
| xref_public_list/6 | Find meta-information about File. |  |
| xref_public_list/7 | Find meta-information about File. |  |
| xref_source/1 | Generate the cross-reference data for Source if not already done and the source is not modified. |  |
| xref_source/2 | Generate the cross-reference data for Source if not already done and the source is not modified. |  |
| xref_source_file/3 | Find named source file from Spec, relative to Src. |  |
| xref_source_file/4 | Find named source file from Spec, relative to Src. |  |
| xref_uses_file/3 | True when Source tries to load a file using Spec. |  |
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. |  |
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 |
| 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 |
| 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 |
| 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 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 -- Sandboxed Prolog code |
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 |
| cd/0 | Change working directory. |  |
| cd/1 | Change working directory. |  |
| cls/0 | CLear Screen. |  |
| 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. |  |
| shell_command/1 | True when Shell is the preferred executable for running 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 -- Manage Prolog streams |
| 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 |
| dedent_lines/3 | Remove shared indentation for all lines in a string. |  |
| 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 |
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 -- Term manipulation |
thread.pl -- High level thread primitives |
| call_in_thread/2 | Run Goal as an interrupt in the context of Thread. |  |
| call_in_thread/3 | 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 or disable a thread or group of threads for debugging using the graphical tracer. |  |
| tdebug/1 | Enable or disable a thread or group of threads for debugging using the graphical tracer. |  |
| thread_alias/1 | Set the alias for a thread. |  |
| thread_has_console/0 | True when the calling thread has an attached console. |  |
| threads/0 | List currently known threads with their status. |  |
| tnodebug/0 | Enable or disable a thread or group of threads for debugging using the graphical tracer. |  |
| tnodebug/1 | Enable or disable a thread or group of threads for debugging using the graphical tracer. |  |
| tprofile/1 | Profile the operation of Thread until the user hits a key. |  |
| tspy/1 | Trap the graphical debugger on reaching Spec. |  |
| tspy/2 | Trap the graphical debugger on reaching Spec. |  |
| 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 |
| 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 -- UTF-8 encoding/decoding on lists of character codes. |
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 |
| 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 |
| 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 -- 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. | |