aggregate.pl -- Aggregation operators on backtrackable predicates |
| 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 -- Print decorated text to ANSI consoles |
apply.pl -- Apply predicates on a list |
| convlist/3 | Similar to maplist/3, but elements for which call(Goal, ElemIn, _) fails are omitted from ListOut. |  |
| exclude/3 | Filter elements for which Goal fails. |  |
| foldl/4 | Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal. |  |
| foldl/5 | Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal. |  |
| foldl/6 | Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal. |  |
| foldl/7 | Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal. |  |
| include/3 | Filter elements for which Goal succeeds. |  |
| maplist/2 | True if Goal is successfully applied on all matching elements of the list. |  |
| maplist/3 | True if Goal is successfully applied on all matching elements of the list. |  |
| maplist/4 | True if Goal is successfully applied on all matching elements of the list. |  |
| maplist/5 | True if Goal is successfully applied on all matching elements of the list. |  |
| partition/4 | Filter elements of List according to Pred. |  |
| partition/5 | Filter List according to Pred in three sets. |  |
| scanl/4 | Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal. |  |
| scanl/5 | Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal. |  |
| scanl/6 | Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal. |  |
| scanl/7 | Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal. |  |
apply_macros.pl -- Goal expansion rules to avoid meta-calling |
arithmetic.pl |
| arithmetic_expression_value/2 | True when Result unifies with the arithmetic result of evaluating Expression. |  |
| arithmetic_function/1 | Declare a predicate as an arithmetic function. |  |
assoc.pl -- Binary associations |
atom.pl -- Operations on atoms |
backcomp.pl -- Backward compatibility |
base32.pl -- Base32 encoding and decoding |
| 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 |
| broadcast/1 | Broadcast given event. |  |
| broadcast_request/1 | Broadcast given event till accepted. |  |
| listen/2 | Open a channel for listening for events of the given `Templ'. |  |
| listen/3 | Open a channel for listening for events of the given `Templ'. |  |
| listening/3 | returns currently open channels. |  |
| unlisten/1 | Destroy a channel. |  |
| unlisten/2 | Destroy a channel. |  |
| unlisten/3 | Destroy a channel. |  |
charsio.pl -- I/O on Lists of Character Codes |
check.pl -- Consistency checking |
check_installation.pl -- Check installation issues and features |
codesio.pl -- I/O on Lists of Character Codes |
| 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 |
| coinductive/1 | The declaration :- coinductive name/arity, ... defines predicates as coinductive. |  |
console_input.pl -- Support entering toplevel queries |
csv.pl -- Process CSV (Comma-Separated Values) data |
| csv/3 | Prolog DCG to `read/write' CSV data. |  |
| csv/4 | Prolog DCG to `read/write' CSV data. |  |
| csv_options/2 | Compiled is the compiled representation of the CSV processing options as they may be passed into csv//2, etc. |  |
| csv_read_file/2 | Read a CSV file into a list of rows. |  |
| csv_read_file/3 | Read a CSV file into a list of rows. |  |
| csv_read_file_row/3 | True when Row is a row in File. |  |
| csv_read_row/3 | Read the next CSV record from Stream and unify the result with Row. |  |
| csv_read_stream/3 | Read CSV data from Stream. |  |
| csv_write_file/2 | Write a list of Prolog terms to a CSV file. |  |
| csv_write_file/3 | Write a list of Prolog terms to a CSV file. |  |
| csv_write_stream/3 | Write the rows in Data to Stream. |  |
ctypes.pl -- Character code classification |
date.pl -- Process dates and times |
| date_time_value/3 | Extract values from a date-time structure. |  |
| day_of_the_week/2 | Computes the day of the week for a given date. |  |
| day_of_the_year/2 | Computes the day of the year for a given date. |  |
| parse_time/2 | Stamp is a timestamp created from parsing Text using the representation Format. |  |
| parse_time/3 | Stamp is a timestamp created from parsing Text using the representation Format. |  |
debug.pl -- Print debug messages and test assertions |
dialect.pl -- Support multiple Prolog dialects |
dicts.pl -- Dict utilities |
dif.pl -- The dif/2 constraint |
| dif/2 | Constraint that expresses that Term1 and Term2 never become identical (==/2). |  |
edinburgh.pl -- Some traditional Edinburgh predicates |
edit.pl -- Editor interface |
| 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 | |  |
| predicate_location/2 | Find the source location of a predicate. |  |
| select_location/3 | |  |
error.pl |
| current_encoding/1 | True if Name is the name of a supported encoding. |  |
| current_type/3 | True when Type is a currently defined type and Var satisfies Type of the body term Body succeeds. |  |
| domain_error/2 | The argument is of the proper type, but has a value that is outside the supported values. |  |
| existence_error/2 | Culprit is of the correct type and correct domain, but there is no existing (external) resource of type ObjectType that is represented by it. |  |
| existence_error/3 | Culprit is of the correct type and correct domain, but there is no existing (external) resource of type ObjectType that is represented by it in the provided set. |  |
| has_type/2 | True if Term satisfies Type. |  |
| instantiation_error/1 | An argument is under-instantiated. |  |
| is_of_type/2 | True if Term satisfies Type. |  |
| must_be/2 | True if Term satisfies the type constraints for Type. |  |
| permission_error/3 | It is not allowed to perform Operation on (whatever is represented by) Culprit that is of the given PermissionType (in fact, the ISO Standard is confusing and vague about these terms' meaning). |  |
| representation_error/1 | A representation error indicates a limitation of the implementation. |  |
| resource_error/1 | A goal cannot be completed due to lack of resources. |  |
| syntax_error/1 | A text has invalid syntax. |  |
| type_error/2 | Tell the user that Culprit is not of the expected ValidType. |  |
| uninstantiation_error/1 | An argument is over-instantiated. |  |
exceptions.pl -- Exception classification |
| 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 |
| explain/1 | Give an explanation on Term. |  |
| explain/2 | True when Explanation is an explanation of Term. |  |
fastrw.pl -- Fast reading and writing of terms |
| 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 -- Run GIT commands |
hashtable.pl -- Hash tables |
heaps.pl -- heaps/priority queues |
help.pl -- Text based manual |
hotfix.pl -- Load hotfixes into executables |
| load_hotfixes/1 | Load all hotfixes that have not yet been applied into the current state. |  |
increval.pl -- Incremental dynamic predicate modification |
intercept.pl -- Intercept and signal interface |
iostream.pl -- Utilities to deal with streams |
lazy_lists.pl -- Lazy list handling |
| 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 |
lists.pl -- List Manipulation |
| 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. |  |
macros.pl -- Macro expansion |
main.pl -- Provide entry point for scripts |
| 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 -- Reload modified source files |
modules.pl -- Module utility predicates |
| 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_rbtrees.pl -- Non-backtrackable operations on red black trees |
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. |  |
obfuscate.pl -- Code obfuscating |
occurs.pl -- Finding and counting sub-terms |
| contains_term/2 | Succeeds if Sub is contained in Term (=, deterministically). |  |
| contains_var/2 | Succeeds if Sub is contained in Term (==, deterministically). |  |
| free_of_term/2 | Succeeds of Sub does not unify to any subterm of Term. |  |
| free_of_var/2 | Succeeds of Sub is not equal (==) to any subterm of Term. |  |
| occurrences_of_term/3 | Count the number of SubTerms in Term that unify with SubTerm. |  |
| occurrences_of_var/3 | Count the number of SubTerms in Term that are equal to SubTerm. |  |
| sub_term/2 | Generates (on backtracking) all subterms of Term. |  |
| sub_term_shared_variables/3 | If Sub is a sub term of Term, Vars is bound to the list of variables in Sub that also appear outside Sub in Term. |  |
| sub_var/2 | Generates (on backtracking) all subterms (==) of Term. |  |
operators.pl -- Manage operators |
option.pl -- Option list processing |
optparse.pl -- command line parsing |
ordsets.pl -- Ordered set manipulation |
| 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_range/4 | Retrieves a range of elements between Min and Max (inclusive) from a set using standard term comparison. |  |
| 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 -- Ordered set manipulation |
| 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 |
| 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 |
pprint.pl -- Pretty Print Prolog terms |
predicate_options.pl -- Access and analyse predicate options |
prolog_autoload.pl -- Autoload all dependencies |
prolog_breakpoints.pl -- Manage Prolog break-points |
prolog_clause.pl -- Get detailed source-information about a clause |
prolog_code.pl -- Utilities for reasoning about code |
| body_term_calls/2 | True when BodyTerm calls Goal. |  |
| comma_list/2 | True if CommaList is a nested term over the ','/2 (';'/2) functor and List is a list expressing the elements of the conjunction. |  |
| extend_goal/3 | Extend the possibly qualified Goal0 with additional arguments from Extra. |  |
| head_name_arity/3 | Similar to functor/3, but deals with SWI-Prolog's zero-argument callable terms and avoids creating a non-callable term if Name is not an atom and Arity is zero. |  |
| is_control_goal/1 | True if Goal is a compiled Prolog control structure. |  |
| is_predicate_indicator/1 | True when Term is a predicate indicator. |  |
| mkconj/3 | Create a conjunction or disjunction from two terms. |  |
| mkdisj/3 | Create a conjunction or disjunction from two terms. |  |
| most_general_goal/2 | General is the most general version of Goal. |  |
| pi_head/2 | Translate between a PredicateIndicator and a Goal term. |  |
| predicate_label/2 | Create a human-readable label for the given predicate indicator. |  |
| predicate_sort_key/2 | Key is the (module-free) name of the predicate for sorting purposes. |  |
| semicolon_list/2 | True if CommaList is a nested term over the ','/2 (';'/2) functor and List is a list expressing the elements of the conjunction. |  |
prolog_codewalk.pl -- Prolog code walker |
prolog_colour.pl -- Prolog syntax colouring support. |
prolog_config.pl -- Provide configuration information |
prolog_coverage.pl -- Coverage analysis tool |
prolog_debug.pl -- User level debugging tools |
| debug_control_hook/1 | Allow user-hooks in the Prolog debugger interaction. | |
| debugging/0 | Report current status of the debugger. |  |
| debugging_hook/1 | Multifile hook that is called as forall(debugging_hook(DebugMode), true) and that may be used to extend the information printed from other debugging libraries. |  |
| exception_hook/5 | Trap exceptions and consider whether or not to start the tracer. |  |
| nospy/1 | Set/clear spy-points. |  |
| nospyall/0 | Set/clear spy-points. |  |
| notrap/1 | Install a trap on error(Formal, Context) exceptions that unify. |  |
| spy/1 | Set/clear spy-points. |  |
| trap/1 | Install a trap on error(Formal, Context) exceptions that unify. |  |
| trap_alias/2 | Define short hands for commonly used exceptions. |  |
prolog_deps.pl -- Compute file dependencies |
prolog_evaluable.pl -- Inspect properties of evaluable functions |
prolog_format.pl -- Analyse format specifications |
| format_spec/2 | Parse a format string. |  |
| format_spec/3 | DCG for parsing format strings. |  |
| format_types/2 | True when Format requires an argument list with terms of the type specified by Types. |  |
prolog_history.pl -- Per-directory persistent commandline history |
| prolog_history/1 | Execute Action on the history. |  |
prolog_jiti.pl -- Just In Time Indexing (JITI) utilities |
| 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_locale.pl -- Tweak the locale for Prolog development |
| setup_prolog_integer_grouping/0 | This sets up the Prolog toplevel and debugger to write numbers with grouping. |  |
prolog_metainference.pl -- Infer meta-predicate properties |
prolog_pack.pl -- A package manager for Prolog |
| pack_info/1 | Print more detailed information about Pack. |  |
| pack_install/1 | Install one or more packs from SpecOrList. |  |
| pack_install/2 | Install one or more packs from SpecOrList. |  |
| pack_install_local/3 | Install a number of packages in a local directory. |  |
| pack_list/1 | Query package server and installed packages and display results. |  |
| pack_list/2 | Query package server and installed packages and display results. |  |
| pack_list_installed/0 | List currently installed packages and report possible dependency issues. |  |
| pack_property/2 | True when Property is a property of an installed Pack. |  |
| pack_publish/2 | Publish a package. |  |
| pack_rebuild/0 | Rebuild possible foreign components of Pack. |  |
| pack_rebuild/1 | Rebuild possible foreign components of Pack. |  |
| pack_remove/1 | Remove the indicated package. |  |
| pack_remove/2 | Remove the indicated package. |  |
| pack_search/1 | Query package server and installed packages and display results. |  |
| pack_upgrade/1 | Upgrade Pack. |  |
| pack_url_file/2 | True if File is a unique id for the referenced pack and version. |  |
prolog_profile.pl -- Execution profiler |
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 |
| 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 -- Print access to predicates |
| 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 |
| 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 -- Prolog cross-referencer data collection |
pure_input.pl -- Pure Input from files and streams |
qpforeign.pl -- Quintus compatible foreign loader |
qsave.pl -- Save current program as a state or executable |
| 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 |
| phrase_from_quasi_quotation/2 | Process the quasi quotation using the DCG Grammar. |  |
| quasi_quotation_syntax/1 | Declare the predicate SyntaxName/4 to implement the the quasi quote syntax SyntaxName. |  |
| quasi_quotation_syntax_error/1 | Report syntax_error(Error) using the current location in the quasi quoted input parser. |  |
| with_quasi_quotation_input/3 | Process the quasi-quoted Content using Stream parsed by Goal. |  |
quintus.pl -- Quintus compatibility |
| 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 |
| getrand/1 | Query/set the state of the random generator. |  |
| maybe/0 | Succeed/fail with equal probability (variant of maybe/1). |  |
| maybe/1 | Succeed with probability P, fail with probability 1-P. |  |
| maybe/2 | Succeed with probability K/N (variant of maybe/1). |  |
| random/1 | Binds R to a new random float in the open interval (0.0,1.0). |  |
| random/3 | Generate a random integer or float in a range. |  |
| random_between/3 | Binds R to a random integer in [L,U] (i.e., including both L and U). |  |
| random_member/2 | X is a random member of List. |  |
| random_numlist/4 | Unify List with an ascending list of integers between L and U (inclusive). |  |
| random_perm2/4 | Does X=A,Y=B or X=B,Y=A with equal probability. |  |
| random_permutation/2 | Permutation is a random permutation of List. |  |
| random_select/3 | Randomly select or insert an element. |  |
| random_subseq/3 | Selects a random subsequence Subseq of List, with Complement containing all elements of List that were not selected. |  |
| randseq/3 | S is a list of K unique random integers in the range 1..N. |  |
| randset/3 | S is a sorted list of K unique random integers in the range 1..N. |  |
| setrand/1 | Query/set the state of the random generator. |  |
rbtrees.pl -- Red black trees |
readln.pl -- Read line as list of tokens |
readutil.pl -- Read utilities |
record.pl -- Access compound arguments by name |
| 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 -- Read/write locks |
sandbox.pl -- Sandboxed Prolog code |
settings.pl -- Setting management |
shell.pl -- Elementary shell commands |
shlib.pl -- Utility library for loading foreign objects (DLLs, shared objects) |
| 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. |  |
| foreign_library_property/2 | True when Property is a property of the foreign library File. |  |
| 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 -- Modify solution sequences |
| 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 |
streams.pl -- Manage Prolog streams |
strings.pl -- String utilities |
system.pl -- System utilities |
tables.pl -- XSB interface to tables |
tableutil.pl -- Table inspection and statistics utilities |
terms.pl -- Term manipulation |
thread.pl -- High level thread primitives |
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 -- Terminal operations |
ugraphs.pl -- Graph manipulation library |
| 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 -- Analysing and constructing URL |
utf8.pl -- UTF-8 encoding/decoding on lists of character codes. |
| utf8_codes/3 | DCG translating between a Unicode code-list and its UTF-8 encoded byte-string. |  |
varnumbers.pl -- Utilities for numbered terms |
| 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. |  |
vm.pl -- SWI-Prolog Virtual Machine utilities |
wfs.pl -- Well Founded Semantics interface |
when.pl -- Conditional coroutining |
| when/2 | Execute Goal when Condition is satisfied. |  |
writef.pl -- Old-style formatted write |
| 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 -- Open a URL in the users browser |
yall.pl -- Lambda expressions |
| //2 | Shorthand for Free/[]>>Lambda. |  |
| //3 | Shorthand for Free/[]>>Lambda. |  |
| //4 | Shorthand for Free/[]>>Lambda. |  |
| //5 | Shorthand for Free/[]>>Lambda. |  |
| //6 | Shorthand for Free/[]>>Lambda. |  |
| //7 | Shorthand for Free/[]>>Lambda. |  |
| //8 | Shorthand for Free/[]>>Lambda. |  |
| //9 | Shorthand for Free/[]>>Lambda. |  |
| >>/2 | Calls a copy of Lambda. |  |
| >>/3 | Calls a copy of Lambda. |  |
| >>/4 | Calls a copy of Lambda. |  |
| >>/5 | Calls a copy of Lambda. |  |
| >>/6 | Calls a copy of Lambda. |  |
| >>/7 | Calls a copy of Lambda. |  |
| >>/8 | Calls a copy of Lambda. |  |
| >>/9 | Calls a copy of Lambda. |  |
| is_lambda/1 | True if Term is a valid Lambda expression. |  |
| lambda_calls/2 | Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N. |  |
| lambda_calls/3 | Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N. |  |
zip.pl -- Access resource ZIP archives |