aggregate.pl -- Aggregation operators on backtrackable predicates |
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 |
| $apropos_match/2 | True if Needle is a sub atom of Haystack. |  |
| $arch/2 | |  |
| $argv/1 | |  |
| $declare_module/3 | Used in triple20 particle library. |  |
| $home/1 | |  |
| $module/2 | |  |
| $set_prompt/1 | Set the prompt for the toplevel. |  |
| $sig_atomic/1 | Execute Goal without processing signals. |  |
| $strip_module/3 | This used to be an internal predicate. |  |
| $version/1 | |  |
| C/3 | Used to be generated by DCG. |  |
| at_initialization/1 | Register goal only to be run if a saved state is restored. |  |
| call_cleanup/3 | Call Cleanup with an indication of the reason unified to Catcher. |  |
| checklist/2 | |  |
| concat/3 | |  |
| concat_atom/2 | Concatenate a list of atomic values to an atom. |  |
| concat_atom/3 | Concatenate a list of atomic values to an atom, inserting Separator between each consecutive elements. |  |
| convert_time/2 | Convert a time-stamp as obtained though get_time/1 into a textual representation using the C-library function ctime(). |  |
| convert_time/8 | Convert a time stamp, provided by get_time/1, time_file/2, etc. |  |
| current_module/2 | True if Module is a module loaded from File. |  |
| current_mutex/3 | |  |
| current_thread/2 | |  |
| displayq/1 | Write term ignoring operators and quote atoms. |  |
| displayq/2 | Write term ignoring operators and quote atoms. |  |
| eval_license/0 | |  |
| export_list/2 | Module exports the predicates of List. |  |
| feature/2 | Control Prolog flags. |  |
| flush/0 | |  |
| free_variables/2 | Return a list of unbound variables in Term. |  |
| hash/1 | Demands PredInd to be indexed using a hash-table. |  |
| hash_term/2 | If Term is ground, Hash is unified to an integer representing a hash for Term. |  |
| index/1 | Prepare the predicate indicated by Head for multi-argument indexing. |  |
| lock_predicate/2 | |  |
| merge/3 | Merge the ordered sets List1 and List2 into a new ordered list. |  |
| merge_set/3 | Merge the ordered sets Set1 and Set2 into a new ordered set without duplicates. |  |
| message_queue_size/2 | True if Queue holds Size terms. |  |
| proper_list/1 | Old SWI-Prolog predicate to check for a list that really ends in a []. |  |
| read_clause/1 | |  |
| read_clause/2 | |  |
| read_history/6 | |  |
| read_pending_input/3 | |  |
| read_variables/2 | |  |
| read_variables/3 | |  |
| set_base_module/1 | Set the default module from which we inherit. |  |
| set_feature/2 | Control Prolog flags. |  |
| setup_and_call_cleanup/3 | Call Cleanup once after Goal is finished. |  |
| setup_and_call_cleanup/4 | Call Cleanup once after Goal is finished, with Catcher unified to the reason. |  |
| sformat/2 | |  |
| sformat/3 | |  |
| string_to_atom/2 | Bi-directional conversion between string and atom. |  |
| string_to_list/2 | Bi-directional conversion between a string and a list of character codes. |  |
| sublist/3 | Succeeds if List2 unifies with a list holding those terms for which call(Goal, Elem) succeeds. |  |
| substring/4 | Predecessor of sub_string using 1-based Offset. |  |
| sumlist/2 | True when Sum is the list of all numbers in List. |  |
| thread_at_exit/1 | Register Goal to be called when the calling thread exits. |  |
| trie_insert_new/3 | |  |
| unlock_predicate/2 | |  |
| write_ln/1 | |  |
base32.pl -- Base32 encoding and decoding |
base64.pl -- Base64 encoding and decoding |
broadcast.pl -- Event service |
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 -- Consistency checking |
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 |
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 -- Editor interface |
error.pl |
files.pl |
gensym.pl -- Generate unique symbols |
git.pl -- Run GIT commands |
hashtable.pl |
| ht_del/3 | Delete Key-Value from HT. |  |
| ht_gen/3 | True when Key-Value is in HT. |  |
| ht_get/3 | True when Key is in HT and associated with Value. |  |
| ht_is_hashtable/1 | True when HT is a hash table. |  |
| ht_keys/2 | True when Keys is an ordered set of all keys in HT. |  |
| ht_new/1 | Create a new hash table. |  |
| ht_pairs/2 | True when Pairs and HT represent the same association. |  |
| ht_put/3 | Add a Key-Value to HT. |  |
| ht_put/5 | Add Key-Value to HT. |  |
| ht_put_new/3 | As ht_put/3, but fails if Key is already in HT instead of updating the associated value. |  |
| ht_size/2 | True when Size is the number of key-value pairs in HT. |  |
| ht_update/4 | True when HT holds Key-Old before and Key-New after this call. |  |
heaps.pl -- heaps/priority queues |
help.pl -- Text based manual |
increval.pl -- Incremental dynamic predicate modification |
intercept.pl |
| intercept/3 | Run Goal as call/1. |  |
| intercept/4 | Similar to intercept/3, but the copy of Handler is called as call(Copy,Arg), which allows passing large context arguments or arguments subject to unification or destructive assignment. |  |
| intercept_all/4 | True when List contains all instances of Template that have been sent using send_signal/1 where the argument unifies with Ball. |  |
| nb_intercept_all/4 | As intercept_all/4, but backtracing inside Goal does not reset List. |  |
| send_signal/1 | If this predicate is called from a sub-goal of intercept/3, execute the associated Handler of the intercept/3 environment. |  |
| send_silent_signal/1 | As send_signal/1, but succeed silently if there is no matching intercept environment. |  |
iostream.pl -- Utilities to deal with streams |
lazy_lists.pl -- Lazy list handling |
listing.pl -- List programs and pretty print clauses |
lists.pl -- List Manipulation |
macros.pl -- Macro expansion |
main.pl |
| argv_options/3 | Parse command line arguments. |  |
| argv_options/4 | As argv_options/3 in guided mode, Currently this version allows parsing argument options throwing an exception rather than calling halt/1 by passing an empty list to ParseOptions. |  |
| argv_usage/1 | Use print_message/2 to print a usage message at Level. |  |
| cli_debug_opt_help/2 | Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments. |  |
| cli_debug_opt_meta/2 | Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments. |  |
| cli_debug_opt_type/3 | Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments. |  |
| cli_enable_development_system/0 | Re-enable the development environment. |  |
| cli_parse_debug_options/2 | Parse certain commandline options for debugging and development purposes. |  |
| main/0 | Call main/1 using the passed command-line arguments. |  |
make.pl |
| make/0 | Reload all source files that have been changed since they were loaded. |  |
| make_reload_file/1 | Reload file into the proper module. |  |
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 -- command line parsing |
ordsets.pl |
| is_ordset/1 | True if Term is an ordered set. |  |
| list_to_ord_set/2 | Transform a list into an ordered set. |  |
| ord_add_element/3 | Insert an element into the set. |  |
| ord_del_element/3 | Delete an element from an ordered set. |  |
| ord_disjoint/2 | True if Set1 and Set2 have no common elements. |  |
| ord_empty/1 | True when List is the empty ordered set. |  |
| ord_intersect/2 | True if both ordered sets have a non-empty intersection. |  |
| ord_intersect/3 | Intersection holds the common elements of Set1 and Set2. |  |
| ord_intersection/2 | Intersection of a powerset. |  |
| ord_intersection/3 | Intersection holds the common elements of Set1 and Set2. |  |
| ord_intersection/4 | Intersection and difference between two ordered sets. |  |
| ord_memberchk/2 | True if Element is a member of OrdSet, compared using ==. |  |
| ord_selectchk/3 | Selectchk/3, specialised for ordered sets. |  |
| ord_seteq/2 | True if Set1 and Set2 have the same elements. |  |
| ord_subset/2 | Is true if all elements of Sub are in Super. |  |
| ord_subtract/3 | Diff is the set holding all elements of InOSet that are not in NotInOSet. |  |
| ord_symdiff/3 | Is true when Difference is the symmetric difference of Set1 and Set2. |  |
| ord_union/2 | True if Union is the union of all elements in the superset SetOfSets. |  |
| ord_union/3 | Union is the union of Set1 and Set2. |  |
| ord_union/4 | True iff ord_union(Set1, Set2, Union) and ord_subtract(Set2, Set1, New). |  |
oset.pl |
| oset_addel/3 | Ordered set element addition. |  |
| oset_delel/3 | Ordered set element deletion. |  |
| oset_diff/3 | Ordered set difference. |  |
| oset_dint/2 | Distributed intersection. |  |
| oset_dunion/2 | Distributed union. |  |
| oset_int/3 | ordered set intersection. |  |
| oset_is/1 | check that OSet in correct format (standard order). |  |
| oset_power/2 | True when PSet is the powerset of Set. |  |
| oset_union/3 | Union is the union of OSet1 and OSet2. |  |
pairs.pl -- Operations on key-value lists |
persistency.pl |
| current_persistent_predicate/1 | True if PI is a predicate that provides access to the persistent database DB. |  |
| db_assert/1 | Assert Term into the database and record it for persistency. |  |
| db_attach/2 | Use File as persistent database for the calling module. |  |
| db_attached/1 | True if the context module attached to the persistent database File. |  |
| db_detach/0 | Detach persistency from the calling module and delete all persistent clauses from the Prolog database. |  |
| db_retract/1 | Retract terms from the database one-by-one. |  |
| db_retractall/1 | Retract all matching facts and do the same in the database. |  |
| db_sync/1 | Synchronise database with the associated file. |  |
| db_sync_all/1 | Sync all registered databases. |  |
| persistent/1 | Declare dynamic database terms. |  |
pio.pl -- Pure I/O |
pprint.pl -- Pretty Print Prolog terms |
predicate_options.pl |
| assert_predicate_options/4 | As predicate_options(:PI, +Arg, +Options). |  |
| check_predicate_option/3 | Verify predicate options at runtime. |  |
| check_predicate_options/0 | Analyse loaded program for erroneous options. |  |
| check_predicate_options/1 | Verify calls to predicates that have options in all clauses of the predicate indicated by PredicateIndicator. |  |
| current_option_arg/2 | True when Arg of PI processes predicate options. |  |
| current_predicate_option/3 | True when Arg of PI processes Option. |  |
| current_predicate_options/3 | True when Options is the current active option declaration for PI on Arg. |  |
| derive_predicate_options/0 | Derive new predicate option declarations. |  |
| derived_predicate_options/1 | Derive predicate option declarations for a module. |  |
| derived_predicate_options/3 | Derive option arguments using static analysis. |  |
| predicate_options/3 | Declare that the predicate PI processes options on Arg. |  |
| retractall_predicate_options/0 | Remove all dynamically (derived) predicate options. |  |
prolog_autoload.pl -- Autoload all dependencies |
prolog_breakpoints.pl -- Manage Prolog break-points |
prolog_clause.pl |
prolog_code.pl -- Utilities for reasoning about code |
prolog_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_jiti.pl -- Just In Time Indexing (JITI) utilities |
prolog_pack.pl -- A package manager for Prolog |
prolog_profile.pl -- Execution profiler |
prolog_source.pl -- Examine Prolog source-files |
prolog_stack.pl -- Examine the Prolog stack |
prolog_trace.pl -- Print access to predicates |
prolog_versions.pl -- Demand specific (Prolog) versions |
prolog_xref.pl -- Prolog cross-referencer data collection |
pure_input.pl -- Pure Input from files and streams |
qsave.pl -- Save current program as a state or executable |
quasi_quotations.pl -- Define Quasi Quotation syntax |
quintus.pl -- Quintus compatibility |
random.pl -- Random numbers |
rbtrees.pl -- Red black trees |
readutil.pl -- Read utilities |
record.pl -- Access compound arguments by name |
rwlocks.pl -- Read/write locks |
sandbox.pl |
settings.pl -- Setting management |
shell.pl -- Elementary shell commands |
| cd/0 | Change working directory. |  |
| cd/1 | Change working directory. |  |
| dirs/0 | Manage the directory stack:. |  |
| file_style/2 | True when File should be listed as a terminal hyperlink. |  |
| ls/0 | Listing similar to Unix =ls -F=, flagging directories with =/=. |  |
| ls/1 | Listing similar to Unix =ls -F=, flagging directories with =/=. |  |
| mv/2 | Move (Rename) a file. |  |
| popd/0 | Manage the directory stack:. |  |
| pushd/0 | Manage the directory stack:. |  |
| pushd/1 | Manage the directory stack:. |  |
| pwd/0 | Print current working directory. |  |
| rm/1 | Remove (unlink) a file. |  |
| shell/0 | Execute an interactive shell. |  |
shlib.pl -- Utility library for loading foreign objects (DLLs, shared objects) |
solution_sequences.pl -- Modify solution sequences |
sort.pl |
statistics.pl -- Get information about resource usage |
system.pl -- System utilities |
tables.pl -- XSB interface to tables |
terms.pl -- Term manipulation |
thread.pl -- High level thread primitives |
thread_pool.pl |
| create_pool/1 | Hook to create a thread pool lazily. |  |
| current_thread_pool/1 | True if Name refers to a defined thread pool. |  |
| thread_create_in_pool/4 | Create a thread in Pool. |  |
| thread_pool_create/3 | Create a pool of threads. |  |
| thread_pool_destroy/1 | Destroy the thread pool named Name. |  |
| thread_pool_property/2 | True if Property is a property of thread pool Name. |  |
| worker_exitted/3 | It is possible that '__thread_pool_manager' no longer exists while closing down the process because the manager was killed before the worker. |  |
threadutil.pl -- Interactive thread utilities |
ugraphs.pl -- Graph manipulation library |
url.pl -- 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 |
| 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 -- Open a URL in the users browser |
yall.pl -- Lambda expressions |
zip.pl -- Access resource ZIP archives |