aggregate.pl -- Aggregation operators on backtrackable predicates |
ansi_term.pl -- Print decorated text to ANSI consoles |
apply.pl -- Apply predicates on a list |
apply_macros.pl -- Goal expansion rules to avoid meta-calling |
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 -- 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 |
| 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 -- Process CSV (Comma-Separated Values) data |
ctypes.pl |
| is_digit/3 | Succeeds if `C' is a digit using `Base' as base and `Weight' represents its value. |  |
| is_paren/2 | True if Open is the open-parenthesis of Close. |  |
| to_lower/2 | Downcase a character code. |  |
| to_upper/2 | Upcase a character code. |  |
| upper_lower/2 | True when U is the character code of an uppercase character and L is the character code of the corresponding lowercase character. |  |
date.pl -- Process dates and times |
debug.pl -- Print debug messages and test assertions |
dialect.pl -- Support multiple Prolog dialects |
dicts.pl -- Dict 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 |
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. |  |
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 |
| 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_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. |  |
intercept.pl -- Intercept and signal interface |
iostream.pl -- Utilities to deal with streams |
lazy_lists.pl -- Lazy list handling |
listing.pl -- List programs and pretty print clauses |
lists.pl -- List Manipulation |
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 -- Manage operators |
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. |  |
ordsets.pl -- Ordered set manipulation |
pairs.pl -- Operations on key-value lists |
persistency.pl -- Provide persistent dynamic predicates |
pio.pl -- Pure I/O |
pprint.pl -- Pretty Print Prolog terms |
predicate_options.pl -- Access and analyse predicate options |
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 syntax colouring support. |
prolog_coverage.pl -- Coverage analysis tool |
prolog_debug.pl -- User level debugging tools |
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 -- Examine Prolog source-files |
prolog_stack.pl |
| backtrace/1 | Get and print a stacktrace to the user_error stream. |  |
| get_prolog_backtrace/2 | Obtain a backtrace from the current location. |  |
| get_prolog_backtrace/3 | Obtain a backtrace from the current location. |  |
| print_last_choicepoint/0 | Print details on the last open choice point. |  |
| print_last_choicepoint/2 | |  |
| print_prolog_backtrace/2 | Print a stacktrace in human readable form to Stream. |  |
| print_prolog_backtrace/3 | Print a stacktrace in human readable form to Stream. |  |
| prolog_stack_frame_property/2 | True when Property is a property of Frame. |  |
| stack_guard/1 | Dynamic multifile hook that is normally not defined. |  |
| stack_guard/1 | Dynamic multifile predicate. |  |
prolog_trace.pl |
| list_tracing/0 | List predicates we are currently tracing. |  |
| notraceall/0 | Remove all trace points. |  |
| trace/1 | Print passes through ports of specified predicates. |  |
| trace/2 | Print passes through ports of specified predicates. |  |
| tracing/2 | True if Spec is traced using Ports. |  |
prolog_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 |
| 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 | As phrase_from_file/2, providing additional Options. |  |
| phrase_from_stream/2 | Run Grammer against the character codes on Stream. |  |
| stream_to_lazy_list/2 | Create a lazy list representing the character codes in Stream. |  |
| syntax_error/3 | Throw the syntax error Error at the current location of the input. |  |
qsave.pl -- Save current program as a state or executable |
quasi_quotations.pl -- Define Quasi Quotation syntax |
random.pl -- Random numbers |
rbtrees.pl -- Red black trees |
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. |  |
sandbox.pl |
settings.pl -- Setting management |
shlib.pl -- Utility library for loading foreign objects (DLLs, shared objects) |
solution_sequences.pl -- Modify solution sequences |
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 |
streams.pl |
| with_output_to/3 | Run Goal and once/1 while capturing all output to all streams (current_output, user_output and user_error) in the string Output. |  |
strings.pl |
| 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 |
terms.pl |
| foldsubterms/4 | The predicate foldsubterms/5 calls call(Goal4, SubTerm1, SubTerm2, StateIn, StateOut) for each subterm, including variables, in Term1. |  |
| foldsubterms/5 | The predicate foldsubterms/5 calls call(Goal4, SubTerm1, SubTerm2, StateIn, StateOut) for each subterm, including variables, in Term1. |  |
| mapargs/3 | Term1 and Term2 have the same functor (name/arity) and for each matching pair of arguments call(Goal, A1, A2) is true. |  |
| mapsubterms/3 | Recursively map sub terms of Term1 into subterms of Term2 for every pair for which call(Goal, ST1, ST2) succeeds. |  |
| mapsubterms_var/3 | Recursively map sub terms of Term1 into subterms of Term2 for every pair for which call(Goal, ST1, ST2) succeeds. |  |
| same_functor/2 | True when Term1 and Term2 are terms that have the same functor (Name/Arity). |  |
| same_functor/3 | True when Term1 and Term2 are terms that have the same functor (Name/Arity). |  |
| same_functor/4 | True when Term1 and Term2 are terms that have the same functor (Name/Arity). |  |
| subsumes/2 | True if Generic is unified to Specific without changing Specific. |  |
| subsumes_chk/2 | True if Generic can be made equivalent to Specific without changing Specific. |  |
| term_factorized/3 | Is true when Skeleton is Term where all subterms that appear multiple times are replaced by a variable and Substitution is a list of Var=Value that provides the subterm at the location Var. |  |
| term_size/2 | True if Size is the size in cells occupied by Term on the global (term) stack. |  |
| term_subsumer/3 | General is the most specific term that is a generalisation of Special1 and Special2. |  |
| variant/2 | Same as SWI-Prolog Term1 =@= Term2. |  |
thread.pl -- High level thread primitives |
| call_in_thread/2 | Run Goal as an interrupt in the context of Thread. |  |
| concurrent/3 | Run Goals in parallel using N threads. |  |
| concurrent_and/2 | Concurrent version of (Generator,Test). |  |
| concurrent_and/3 | Concurrent version of (Generator,Test). |  |
| concurrent_forall/2 | True when Action is true for all solutions of Generate. |  |
| concurrent_forall/3 | True when Action is true for all solutions of Generate. |  |
| concurrent_maplist/2 | Concurrent version of maplist/2. |  |
| concurrent_maplist/3 | Concurrent version of maplist/2. |  |
| concurrent_maplist/4 | Concurrent version of maplist/2. |  |
| first_solution/3 | Try alternative solvers concurrently, returning the first answer. |  |
thread_pool.pl -- Resource bounded thread management |
threadutil.pl -- Interactive thread utilities |
| attach_console/0 | Create a new console and make the standard Prolog streams point to it. |  |
| attach_console/1 | Create a new console and make the standard Prolog streams point to it. |  |
| join_threads/0 | Join all terminated threads. |  |
| tbacktrace/1 | Print a backtrace for Thread to the stream user_error of the calling thread. |  |
| tbacktrace/2 | Print a backtrace for Thread to the stream user_error of the calling thread. |  |
| tdebug/0 | Enable debug-mode, trapping the graphical debugger on reaching spy-points or errors. |  |
| tdebug/1 | Enable debug-mode, trapping the graphical debugger on reaching spy-points or errors. |  |
| thread_has_console/0 | True when the calling thread has an attached console. |  |
| threads/0 | List currently known threads with their status. |  |
| tnodebug/0 | Disable debug-mode in all threads or the specified Thread. |  |
| tnodebug/1 | Disable debug-mode in all threads or the specified Thread. |  |
| tprofile/1 | Profile the operation of Thread until the user hits a key. |  |
| tspy/1 | Trap the graphical debugger on reaching Spec in the specified or any thread. |  |
| tspy/2 | Trap the graphical debugger on reaching Spec in the specified or any thread. |  |
| with_stopped_threads/2 | Stop all threads except the caller while running once(Goal). |  |
tty.pl |
| menu/3 | Show a menu. |  |
| tty_clear/0 | Clear the display. |  |
| tty_flash/0 | Give visual signal if possible, otherwise beep. |  |
ugraphs.pl -- Graph manipulation library |
url.pl -- Analysing and constructing URL |
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 -- Well Founded Semantics interface |
when.pl -- Conditional coroutining |
www_browser.pl -- Open a URL in the users browser |
yall.pl -- Lambda expressions |
zip.pl -- Access resource ZIP archives |