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 |
| expand_phrase/2 | Provide goal-expansion for PhraseGoal. |  |
| expand_phrase/4 | Provide goal-expansion for PhraseGoal. |  |
archive.pl -- Access several archive formats |
arithmetic.pl -- Extensible arithmetic |
assoc.pl -- Binary associations |
| assoc_to_keys/2 | True if Keys is the list of keys in Assoc. |  |
| assoc_to_list/2 | Translate Assoc to a list Pairs of Key-Value pairs. |  |
| assoc_to_values/2 | True if Values is the list of values in Assoc. |  |
| del_assoc/4 | True if Key-Value is in Assoc0. |  |
| del_max_assoc/4 | True if Key-Value is in Assoc0 and Key is the greatest key. |  |
| del_min_assoc/4 | True if Key-Value is in Assoc0 and Key is the smallest key. |  |
| empty_assoc/1 | Is true if Assoc is the empty association list. |  |
| gen_assoc/3 | True if Key-Value is an association in Assoc. |  |
| get_assoc/3 | True if Key-Value is an association in Assoc. |  |
| get_assoc/5 | True if Key-Val0 is in Assoc0 and Key-Val is in Assoc. |  |
| is_assoc/1 | True if Assoc is an association list. |  |
| list_to_assoc/2 | Create an association from a list Pairs of Key-Value pairs. |  |
| map_assoc/2 | True if Pred(Value) is true for all values in Assoc. |  |
| map_assoc/3 | Map corresponding values. |  |
| max_assoc/3 | True if Key-Value is in Assoc and Key is the largest key. |  |
| min_assoc/3 | True if Key-Value is in assoc and Key is the smallest key. |  |
| ord_list_to_assoc/2 | Assoc is created from an ordered list Pairs of Key-Value pairs. |  |
| put_assoc/4 | Assoc is Assoc0, except that Key is associated with Value. |  |
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 |
| base64/2 | Translates between plaintext and base64 encoded atom or string. |  |
| base64/3 | Encode/decode list of character codes using base64. |  |
| base64_encoded/3 | General the base64 encoding and decoding. |  |
| base64_encoded/4 | |  |
| base64url/2 | Translates between plaintext and base64url encoded atom or string. |  |
| base64url/3 | Encode/decode list of character codes using Base64URL. |  |
broadcast.pl -- Event service |
c14n2.pl -- C14n2 canonical XML documents |
| xml_write_canonical/3 | Write an XML DOM using the canonical conventions as defined by C14n2. |  |
cgi.pl -- Read CGI parameters |
| cgi_get_form/1 | Decodes standard input and the environment variables to obtain a list of arguments passed to the CGI script. |  |
charsio.pl -- I/O on Lists of Character Codes |
| 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 |
| 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_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. |  |
chr.pl |
| debug_ask_continue/1 | Hook to ask for a CHR debug continuation. |  |
| debug_event/2 | Hook into the CHR debugger. |  |
| debug_interact/3 | Hook into the CHR debugger to display Event and ask for the next command to execute. |  |
codesio.pl -- I/O on Lists of Character Codes |
coinduction.pl -- Co-Logic Programming |
console_input.pl |
| complete_input/4 | Compute auto completions for the input line BeforeCursor+AfterCursor. |  |
crypt.pl |
crypto.pl -- Cryptography and authentication library |
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 |
| 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. |  |
| 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. |  |
dif.pl -- The dif/2 constraint |
| dif/2 | Constraint that expresses that Term1 and Term2 never become identical (==/2). |  |
doc_files.pl -- Create stand-alone documentation files |
doc_http.pl -- Documentation server |
| doc_browser/0 | Open user's default browser on the documentation server. |  |
| doc_browser/1 | Open user's default browser on the documentation server. |  |
| doc_enable/1 | Actually activate the PlDoc server. |  |
| doc_server/1 | Start a documentation server in the current Prolog process. |  |
| doc_server/2 | Start a documentation server in the current Prolog process. |  |
double_metaphone.pl -- Phonetic string matching |
edinburgh.pl -- Some traditional Edinburgh predicates |
| debug/0 | Switch on/off debug mode. |  |
| display/1 | Write a term, ignoring operators. |  |
| display/2 | Write a term, ignoring operators. |  |
| fileerrors/2 | Query and change the fileerrors flag. |  |
| nodebug/0 | Switch on/off debug mode. |  |
| reconsult/1 | Load source file(s), wiping the old content first. |  |
| unknown/2 | Edinburgh Prolog predicate for dealing dealing with undefined procedures. |  |
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 | |  |
| select_location/3 | |  |
editline.pl -- BSD libedit based command line editing |
| el_add_history/2 | Add a line to the command line history. |  |
| el_addfn/4 | Add a new command to the command line editor associated with Input. |  |
| el_bind/2 | Invoke the libedit bind command with the given arguments. |  |
| el_cursor/2 | Move the cursor Move character forwards (positive) or backwards (negative). |  |
| el_deletestr/2 | Delete Count characters before the cursor. |  |
| el_history/2 | Perform a generic action on the history. |  |
| el_history_events/2 | Unify Events with a list of pairs of the form Num-String, where Num is the event number and String is the associated string without terminating newline. |  |
| el_insertstr/2 | Insert Text at the cursor. |  |
| el_line/2 | Fetch the currently buffered input line. |  |
| el_read_history/2 | Read the history saved using el_write_history/2. |  |
| el_setup/1 | This hooks is called as forall(el_setup(Input), true) after the input stream has been wrapped, the default Prolog commands have been added and the default user setup file has been sourced using el_source/2. |  |
| el_source/2 | Initialise editline by reading the contents of File. |  |
| el_unwrap/1 | Remove the libedit wrapper for In and the related output and error streams. |  |
| el_wrap/0 | Enable using editline on the standard user streams if user_input is connected to a terminal. |  |
| el_wrap/4 | Enable editline on the stream-triple <In,Out,Error>. |  |
| el_wrapped/1 | True if In is a stream wrapped by el_wrap/3. |  |
| el_write_history/2 | Save editline history to File. |  |
error.pl -- Error generating support |
explain.pl -- Describe Prolog Terms |
files.pl |
filesex.pl -- Extended operations on files |
| copy_directory/2 | Copy the contents of the directory From to To (recursively). |  |
| copy_file/2 | Copy a file into a new file or directory. |  |
| delete_directory_and_contents/1 | Recursively remove the directory Dir and its contents. |  |
| delete_directory_contents/1 | Remove all content from directory Dir, without removing Dir itself. |  |
| directory_file_path/3 | True when Path is the full path-name for File in Dir. |  |
| link_file/3 | Create a link in the filesystem from NewPath to OldPath. |  |
| make_directory_path/1 | Create Dir and all required components (like mkdir -p). |  |
| relative_file_name/3 | True when RelPath is Path, relative to RelTo. |  |
| set_time_file/3 | Query and set POSIX time attributes of a file. |  |
gensym.pl -- Generate unique symbols |
| gensym/2 | Generate <Base>1, <Base>2, etc atoms on each subsequent call. |  |
| reset_gensym/0 | Reset all gensym counters. |  |
| reset_gensym/1 | Reset a specific gensym counter. |  |
git.pl -- Run GIT commands |
hash_stream.pl -- Maintain a hash on a stream |
heaps.pl -- heaps/priority queues |
| add_to_heap/4 | Adds Key with priority Priority to Heap0, constructing a new heap in Heap. |  |
| delete_from_heap/4 | Deletes Key from Heap0, leaving its priority in Priority and the resulting data structure in Heap. |  |
| empty_heap/1 | True if Heap is an empty heap. |  |
| get_from_heap/4 | Retrieves the minimum-priority pair Priority-Key from Heap0. |  |
| heap_size/2 | Determines the number of elements in Heap. |  |
| heap_to_list/2 | Constructs a list List of Priority-Element terms, ordered by (ascending) priority. |  |
| is_heap/1 | Returns true if X is a heap. |  |
| list_to_heap/2 | If List is a list of Priority-Element terms, constructs a heap out of List. |  |
| merge_heaps/3 | Merge the two heaps Heap0 and Heap1 in Heap. |  |
| min_of_heap/3 | Unifies Key with the minimum-priority element of Heap and Priority with its priority value. |  |
| min_of_heap/5 | Gets the two minimum-priority elements from Heap. |  |
| singleton_heap/3 | True if Heap is a heap with the single element Priority-Key. |  |
help.pl |
helpidx.pl |
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 |
| append/2 | Concatenate a list of lists. |  |
| append/3 | List1AndList2 is the concatenation of List1 and List2. |  |
| 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. |  |
| 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. |  |
| 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 positon. |  |
| selectchk/3 | Semi-deterministic removal of first element in List that unifies with Elem. |  |
| selectchk/4 | Semi-deterministic version of select/4. |  |
| 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 Set1 and Set2. |  |
main.pl -- Provide entry point for scripts |
| argv_options/3 | Generic transformation of long commandline arguments to options. |  |
| main/0 | Call main/1 using the passed command-line arguments. |  |
make.pl -- Reload modified source files |
md5.pl -- MD5 hashes |
memfile.pl |
modules.pl -- Module utility predicates |
nb_set.pl -- Non-backtrackable sets |
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. |  |
| occurrences_of_var/3 | Count the number of SubTerms in Term. |  |
| sub_term/2 | Generates (on backtracking) all subterms of 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 |
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 | |  |
pairs.pl -- Operations on key-value lists |
pcre.pl -- Perl compatible regular expression matching for SWI-Prolog |
pengines.pl -- Pengines: Web Logic Programming Made Easy |
| authentication_hook/3 | This hook is called from the =/pengine/create= HTTP handler to discover whether the server is accessed by an authorized user. |  |
| current_pengine_application/1 | True when Application is a currently defined application. |  |
| event_to_json/3 | Hook that translates a Pengine event structure into a term suitable for reply_json/1, according to the language specification Lang. |  |
| not_sandboxed/2 | This hook is called to see whether the Pengine must be executed in a protected environment. |  |
| output/2 | Hook to handle pengine_output/1 from the remote pengine. |  |
| pengine_abort/1 | Aborts the running query. |  |
| pengine_application/1 | Directive that must be used to declare a pengine application module. |  |
| pengine_ask/3 | Asks pengine NameOrID a query Query. |  |
| pengine_create/1 | Creates a new pengine. |  |
| pengine_debug/2 | Create a message using format/3 from Format and Args and send this to the client. |  |
| pengine_destroy/1 | Destroys the pengine NameOrID. |  |
| pengine_destroy/2 | Destroys the pengine NameOrID. |  |
| pengine_event/2 | Examines the pengine's event queue and if necessary blocks execution until a term that unifies to Term arrives in the queue. |  |
| pengine_event_loop/2 | Starts an event loop accepting event terms sent to the current pengine or thread. |  |
| pengine_input/2 | Sends Prompt to the parent pengine and waits for input. |  |
| pengine_next/2 | Asks pengine NameOrID for the next solution to a query started by pengine_ask/3. |  |
| pengine_output/1 | Sends Term to the parent pengine or thread. |  |
| pengine_property/2 | True when Property is a property of the given Pengine. |  |
| pengine_pull_response/2 | Pulls a response (an event term) from the slave Pengine if Pengine is a remote process, else does nothing at all. |  |
| pengine_respond/3 | Sends a response in the form of the term Input to a slave pengine that has prompted its master for input. |  |
| pengine_rpc/2 | Semantically equivalent to the sequence below, except that the query is executed in (and in the Prolog context of) the pengine server referred to by URL, rather than locally. |  |
| pengine_rpc/3 | Semantically equivalent to the sequence below, except that the query is executed in (and in the Prolog context of) the pengine server referred to by URL, rather than locally. |  |
| pengine_self/1 | True if the current thread is a pengine with Id. |  |
| pengine_stop/2 | Tells pengine NameOrID to stop looking for more solutions to a query started by pengine_ask/3. |  |
| pengine_user/1 | True when the pengine was create by an HTTP request that authorized User. |  |
| prepare_goal/3 | Pre-preparation hook for running Goal0. |  |
| prepare_module/3 | Hook, called to initialize the temporary private module that provides the working context of a pengine. |  |
| prompt/3 | Hook to handle pengine_input/2 from the remote pengine. |  |
| write_result/3 | Hook that allows for different output formats. |  |
| create_pool/1 | On demand creation of a thread pool for a pengine application. |  |
pengines_io.pl -- Provide Prolog I/O for HTML clients |
| binding_term/5 | Hook to render a Prolog result term as HTML. |  |
| pengine_bind_io_to_html/1 | Redefine the built-in predicates for IO to send HTML messages using pengine_output/1. |  |
| pengine_display/1 | Redirect the corresponding Prolog output predicates. |  |
| pengine_flush_output/0 | No-op. |  |
| pengine_format/1 | As format/1,2. |  |
| pengine_format/2 | As format/1,2. |  |
| pengine_io_predicate/1 | True when Head describes the head of a (system) IO predicate that is redefined by the HTML binding. |  |
| pengine_listing/0 | List the content of the current pengine or a specified predicate in the pengine. |  |
| pengine_listing/1 | List the content of the current pengine or a specified predicate in the pengine. |  |
| pengine_nl/0 | Emit a <br/> to the pengine. |  |
| pengine_print/1 | Redirect the corresponding Prolog output predicates. |  |
| pengine_write/1 | Redirect the corresponding Prolog output predicates. |  |
| pengine_write_canonical/1 | Redirect the corresponding Prolog output predicates. |  |
| pengine_write_term/2 | Writes term as <span class=Class>Term</span>. |  |
| pengine_writeln/1 | Emit Term as <span class=writeln>Term<br></span>. |  |
| pengine_writeq/1 | Redirect the corresponding Prolog output predicates. |  |
| message_hook/3 | Send output from print_message/2 to the pengine. |  |
persistency.pl -- Provide persistent dynamic predicates |
| current_persistent_predicate/1 | True if PI is a predicate that provides access to the persistent database DB. |  |
| 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_sync/1 | Synchronise database with the associated file. |  |
| db_sync_all/1 | Sync all registered databases. |  |
| persistent/1 | Declare dynamic database terms. |  |
pldoc.pl -- Process source documentation |
porter_stem.pl |
pprint.pl -- Pretty Print Prolog terms |
predicate_options.pl -- Access and analyse predicate options |
process.pl -- Create processes and redirect I/O |
| is_process/1 | True if PID might be a process. |  |
| process_create/3 | Create a new process running the file Exe and using arguments from the given list. |  |
| process_group_kill/1 | Send signal to the group containing process PID. |  |
| process_group_kill/2 | Send signal to the group containing process PID. |  |
| process_id/1 | True if PID is the process id of the running Prolog process. |  |
| process_id/2 | PID is the process id of Process. |  |
| process_kill/1 | Send signal to process PID. |  |
| process_kill/2 | Send signal to process PID. |  |
| process_release/1 | Release process handle. |  |
| process_wait/2 | True if PID completed with Status. |  |
| process_wait/3 | True if PID completed with Status. |  |
prolog_autoload.pl -- Autoload all dependencies |
prolog_breakpoints.pl -- Manage Prolog break-points |
| breakpoint_property/2 | True when Property is a property of the breakpoint Id. |  |
| delete_breakpoint/1 | Delete breakpoint with given Id. |  |
| set_breakpoint/4 | Put a breakpoint at the indicated source-location. |  |
| set_breakpoint/5 | Put a breakpoint at the indicated source-location. |  |
prolog_clause.pl -- Get detailed source-information about a clause |
prolog_codewalk.pl -- Prolog code walker |
prolog_colour.pl -- Prolog syntax colouring support. |
prolog_format.pl -- Analyse format specifications |
prolog_history.pl -- Per-directory persistent commandline history |
prolog_metainference.pl -- Infer meta-predicate properties |
| 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 |
| environment/2 | Hook to define the environment for building packs. |  |
| pack_info/1 | Print more detailed information about Pack. |  |
| pack_install/1 | Install a package. |  |
| pack_install/2 | Install package Name. |  |
| pack_list/1 | Query package server and installed packages and display results. |  |
| pack_list_installed/0 | List currently installed packages. |  |
| pack_property/2 | True when Property is a property of Pack. |  |
| pack_rebuild/0 | Rebuild foreign components of all packages. |  |
| pack_rebuild/1 | Rebuilt possible foreign components of Pack. |  |
| pack_remove/1 | Remove the indicated package. |  |
| pack_search/1 | Query package server and installed packages and display results. |  |
| pack_upgrade/1 | Try to upgrade the package Pack. |  |
| pack_url_file/2 | True if File is a unique id for the referenced pack and version. |  |
prolog_source.pl -- Examine Prolog source-files |
prolog_stack.pl -- Examine the Prolog stack |
prolog_stream.pl -- A stream with Prolog callbacks |
| open_prolog_stream/4 | Create a new stream that implements its I/O by calling predicates in Module. |  |
prolog_xref.pl -- Prolog cross-referencer data collection |
| 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 | Enumerate the predicate-call relations. |  |
| xref_called/4 | Enumerate the predicate-call relations. |  |
| 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_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 -- Pure Input from files and streams |
qsave.pl -- Save current program as a state or executable |
| qsave_program/1 | Make a saved state in file `File'. |  |
| qsave_program/2 | Make a saved state in file `File'. |  |
quasi_quotations.pl -- Define Quasi Quotation syntax |
quintus.pl -- Quintus compatibility |
| abs/2 | Unify `Absolute' with the absolute value of `Number'. |  |
| atom_char/2 | Same as ISO char_code/2. |  |
| 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). |  |
| 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. |  |
| mode/1 | Ignore a DEC10/Quintus :- mode(Head) declaration. |  |
| no_style_check/1 | Same as SWI-Prolog style_check(-Style). |  |
| on_exception/3 | |  |
| otherwise/0 | For (A -> B ; otherwise -> C). |  |
| prolog_flag/2 | Same as ISO current_prolog_flag/2. |  |
| raise_exception/1 | Quintus compatible exception handling. |  |
| 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). |  |
| 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 | interface to Unix. |  |
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_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. |  |
| 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 |
| is_rbtree/1 | True if Term is a valide 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 | Delete element with key Key from the tree Tree, returning the value Val associated with the key and a new tree NewTree. |  |
| 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. |  |
| 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 | Tree NewTree is tree Tree, but with value for Key associated with NewVal. |  |
| rb_visit/2 | Pairs is an infix visit of tree Tree, where each element of Pairs is of the form Key-Value. |  |
rdf.pl |
rdf_ntriples.pl -- RDF N-triples parser (obsolete) |
rdf_parser.pl |
| element_to_plrdf/3 | Rewrite a single XML element. |  |
| rdf_name_space/1 | True if URL must be handled as rdf: Determines special handling of rdf:about, rdf:resource, etc. |  |
| xml_to_plrdf/3 | Translate an XML (using namespaces) term into an Prolog term representing the RDF data. |  |
rdf_triple.pl -- Create triples from intermediate representation |
rdf_write.pl -- Write RDF/XML from a list of triples |
readline.pl -- GNU readline interface |
| rl_add_history/1 | Add a line to the history. | |
| rl_read_history/1 | Read a saved history from File. | |
| rl_read_init_file/1 | Read a GNU readline config file. | |
| rl_write_history/1 | Save the history to File. | |
readutil.pl -- Read utilities |
record.pl -- Access compound arguments by name |
rewrite.pl |
rlimit.pl |
sandbox.pl -- Sandboxed Prolog code |
settings.pl -- Setting management |
| convert_setting_text/3 | Converts from textual form to Prolog Value. |  |
| current_setting/1 | True if Setting is a currently defined setting. |  |
| 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. |  |
sgml.pl -- SGML, XML and HTML parser |
sgml_write.pl -- XML/SGML writer module |
sha.pl -- SHA secure hashes |
shell.pl -- Elementary shell commands |
| cd/0 | Change working directory. |  |
| cd/1 | Change working directory. |  |
| dirs/0 | Manage the directory stack:. |  |
| 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) |
| current_foreign_library/2 | Query currently loaded shared libraries. |  |
| load_foreign_library/1 | Load a shared object or DLL. |  |
| load_foreign_library/2 | Load a shared object or DLL. |  |
| reload_foreign_libraries/0 | Reload all foreign libraries loaded (after restore of a state created using qsave_program/2. |  |
| unload_foreign_library/1 | Unload a shared object or DLL. |  |
| unload_foreign_library/2 | Unload a shared object or DLL. |  |
| use_foreign_library/1 | Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now. |  |
| use_foreign_library/2 | Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now. |  |
snowball.pl -- The Snowball multi-lingual stemmer library |
| snowball/3 | Apply the Snowball Algorithm on Input and unify the result (an atom) with Stem. |  |
| snowball_current_algorithm/1 | True if Algorithm is the official name of an algorithm suported by snowball/3. |  |
socket.pl -- Network socket (TCP and UDP) library |
| gethostname/1 | Return the canonical fully qualified name of this host. |  |
| negotiate_socks_connection/2 | Negotiate a connection to DesiredEndpoint over StreamPair. |  |
| proxy_for_url/3 | This hook can be implemented to return a proxy to try when connecting to URL. |  |
| tcp_accept/3 | This predicate waits on a server socket for a connection request by a client. |  |
| tcp_bind/2 | Bind the socket to Address on the current machine. |  |
| tcp_close_socket/1 | Closes the indicated socket, making SocketId invalid. |  |
| tcp_connect/2 | Connect SocketId. |  |
| tcp_connect/3 | Establish a TCP communication as a client. |  |
| tcp_connect/4 | Connect a (client) socket to Address and return a bi-directional connection through the stream-handles Read and Write. |  |
| tcp_fcntl/3 | Interface to the fcntl() call. |  |
| tcp_host_to_address/2 | Translate between a machines host-name and it's (IP-)address. |  |
| tcp_listen/2 | Tells, after tcp_bind/2, the socket to listen for incoming requests for connections. |  |
| tcp_open_socket/2 | Create streams to communicate to SocketId. |  |
| tcp_open_socket/3 | Similar to tcp_open_socket/2, but creates two separate sockets where tcp_open_socket/2 would have created a stream pair. |  |
| tcp_select/3 | Same as the built-in wait_for_input/3, but integrates better with event processing and the various options of sockets for Windows. |  |
| tcp_setopt/2 | Set options on the socket. |  |
| tcp_socket/1 | Creates an INET-domain stream-socket and unifies an identifier to it with SocketId. |  |
| try_proxy/4 | Attempt a socket-level connection via the given proxy to TargetAddress. |  |
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). |  |
ssl.pl -- Secure Socket Layer (SSL) library |
statistics.pl -- Get information about resource usage |
| profile/1 | Run Goal under the execution profiler. |  |
| profile/2 | Run Goal under the execution profiler. |  |
| show_profile/1 | Display last collected profiling data. |  |
| statistics/0 | Print information about resource usage using print_message/2. |  |
| statistics/1 | Stats is a dict representing the same information as statistics/0. |  |
| thread_statistics/2 | Obtain statistical information about a single thread. |  |
| time/1 | Execute Goal, reporting statistics to the user. |  |
streampool.pl |
syslog.pl -- Unix syslog interface |
system.pl -- System utilities |
| lock_predicate/1 | Transform a predicate into a system predicate. |  |
| system_mode/1 | Switch the system into system or user mode. |  |
| system_module/0 | Any predicate defined after this declaraction uptil the end of the file will become a system predicate. |  |
| unlock_predicate/1 | Transform a system predicate into a normal system predicate. |  |
table.pl |
tabling.pl -- Tabled execution (SLG WAM) |
term_to_json.pl |
| term_to_json/2 | Convert any general Prolog term into a JSON term. |  |
| term_to_json/3 | Convert any general Prolog term into a JSON term. |  |
terms.pl -- Term manipulation |
| 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 |
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. |  |
| interactor/0 | Run a Prolog toplevel in another thread with a new console window. |  |
| interactor/1 | Run a Prolog toplevel in another thread with a new console window. |  |
| join_threads/0 | Join all terminated threads. |  |
| 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. |  |
| thread_run_interactor/0 | Attach a console and run a Prolog toplevel in the current thread. |  |
| 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. |  |
| xterm_args/1 | Multifile and dynamic hook that provides (additional) arguments for the xterm(1) process opened for additional thread consoles. |  |
time.pl -- Time and alarm library |
tty.pl -- Terminal operations |
udp_broadcast.pl -- A UDP Broadcast Bridge |
| udp_broadcast_initialize/2 | causes any required runtime initialization to occur. |  |
| udp_broadcast_service/2 | provides the UDP broadcast address for a given Domain. |  |
| udp_host_to_address/2 | locates a UDP service by name. |  |
ugraphs.pl -- Graph manipulation library |
| compose/3 | Calculates the composition of two S-form graphs, which need not have the same set of vertices. |  |
| 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 | Edges is the set of edges in UGraph. |  |
| 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. |  |
| top_sort/2 | Sorted is a topological sorted list of nodes in Graph. |  |
| top_sort/3 | Sorted is a topological sorted list of nodes in 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_union/3 | Is true when Union is the union of Set1 and Set2. |  |
| vertices/2 | Strips off the neighbours lists of an S-representation to produce a list of the vertices of the graph. |  |
| vertices_edges_to_ugraph/3 | Create a UGraph from Vertices and edges. |  |
uid.pl -- User and group management on Unix systems |
unicode.pl -- Unicode string handling |
unix.pl -- Unix specific operations |
| detach_IO/0 | Detach I/O similar to detach_IO/1. |  |
| detach_IO/1 | This predicate is intended to create Unix deamon processes. |  |
| dup/2 | Interface to Unix dup2(), copying the underlying filedescriptor and thus making both streams point to the same underlying object. |  |
| exec/1 | Replace the running program by starting Command. |  |
| fork/1 | Clone the current process into two branches. |  |
| fork_exec/1 | Fork (as fork/1) and exec (using exec/1) the child immediately. |  |
| kill/2 | Deliver a software interrupt to the process with identifier Pid using software-interrupt number Signal. |  |
| pipe/2 | Create a communication-pipe. |  |
| prctl/1 | Access to Linux process control operations. |  |
| sysconf/1 | Access system configuration. |  |
| wait/2 | Wait for a child to change status. |  |
uri.pl -- Process URIs |
| iri_normalized/2 | NormalizedIRI is the normalized form of IRI. |  |
| iri_normalized/3 | NormalizedGlobalIRI is the normalized global version of IRI. |  |
| uri_authority_components/2 | Break-down the authority component of a URI. |  |
| uri_authority_data/3 | Provide access the uri_authority structure. |  |
| uri_components/2 | Break a URI into its 5 basic components according to the RFC-3986 regular expression:. |  |
| uri_data/3 | Provide access the uri_component structure. |  |
| uri_data/4 | NewComponents is the same as Components with Field set to Data. |  |
| uri_encoded/3 | Encoded is the URI encoding for Value. |  |
| uri_file_name/2 | Convert between a URI and a local file_name. |  |
| uri_iri/2 | Convert between a URI, encoded in US-ASCII and an IRI. |  |
| uri_is_global/1 | True if URI has a scheme. |  |
| uri_normalized/2 | NormalizedURI is the normalized form of URI. |  |
| uri_normalized/3 | NormalizedGlobalURI is the normalized global version of URI. |  |
| uri_normalized_iri/2 | As uri_normalized/2, but percent-encoding is translated into IRI Unicode characters. |  |
| uri_normalized_iri/3 | NormalizedGlobalIRI is the normalized global IRI of URI. |  |
| uri_query_components/2 | Perform encoding and decoding of an URI query string. |  |
| uri_resolve/3 | Resolve a possibly local URI relative to Base. |  |
url.pl -- Analysing and constructing URL |
utf8.pl -- UTF-8 encoding/decoding on lists of character codes. |
uuid.pl -- Universally Unique Identifier (UUID) Library |
varnumbers.pl -- Utilities for numbered terms |
when.pl -- Conditional coroutining |
win_menu.pl -- Console window menu |
writef.pl -- Old-style formatted write |
www_browser.pl -- Open a URL in the users browser |
xmldsig.pl -- XML Digital signature |
xmlenc.pl -- XML encryption library |
xpath.pl -- Select nodes in an XML DOM |
xsdp_types.pl -- XML-Schema primitive types |
yall.pl -- Lambda expressions |
zlib.pl -- Zlib wrapper for SWI-Prolog |
| encoding_filter/3 | Act as plugin for library(http/http_open) for processing content with Content-encoding: gzip. |  |
| gzopen/3 | Open a file compatible with the gzip program. |  |
| gzopen/4 | Open a file compatible with the gzip program. |  |