library

Prolog files

aggregate.pl  -- Aggregation operators on backtrackable predicatesShow source
aggregate/3Aggregate bindings in Goal according to Template.Source
aggregate/4Aggregate bindings in Goal according to Template.Source
aggregate_all/3Aggregate bindings in Goal according to Template.Source
aggregate_all/4Aggregate bindings in Goal according to Template.Source
foreach/2True if conjunction of results is true.Source
free_variables/4Find free variables in bagof/setof template.Source
safe_meta/2Declare the aggregate meta-calls safe.Source
ansi_term.pl  -- Print decorated text to ANSI consolesShow source
ansi_format/3Format text with ANSI attributes.Source
message_line_element/2Hook implementation that deals with ansi(+Attr, +Fmt, +Args) in message specifications.Source
apply.pl  -- Apply predicates on a listShow source
convlist/3Similar to maplist/3, but elements for which call(Goal, ElemIn, _) fails are omitted from ListOut.Source
exclude/3Filter elements for which Goal fails.Source
foldl/4Fold a list, using arguments of the list as left argument.Source
foldl/5Fold a list, using arguments of the list as left argument.Source
foldl/6Fold a list, using arguments of the list as left argument.Source
foldl/7Fold a list, using arguments of the list as left argument.Source
include/3Filter elements for which Goal succeeds.Source
maplist/2True if Goal can successfully be applied on all elements of List.Source
maplist/3As maplist/2, operating on pairs of elements from two lists.Source
maplist/4As maplist/2, operating on triples of elements from three lists.Source
maplist/5As maplist/2, operating on quadruples of elements from four lists.Source
partition/4Filter elements of List according to Pred.Source
partition/5Filter List according to Pred in three sets.Source
scanl/4Left scan of list.Source
scanl/5Left scan of list.Source
scanl/6Left scan of list.Source
scanl/7Left scan of list.Source
apply_macros.pl  -- Goal expansion rules to avoid meta-callingShow source
expand_phrase/2Provide goal-expansion for PhraseGoal.Source
expand_phrase/4Provide goal-expansion for PhraseGoal.Source
archive.pl  -- Access several archive formatsShow source
archive_close/1Close the archive.Source
archive_create/3Convenience predicate to create an archive in OutputFile with data from a list of InputFiles and the given Options.Source
archive_data_stream/3True when DataStream is a stream to a data object inside Archive.Source
archive_entries/2True when Paths is a list of pathnames appearing in Archive.Source
archive_extract/3Extract files from the given archive into Dir.Source
archive_header_property/2True when Property is a property of the current header.Source
archive_next_header/2Forward to the next entry of the archive for which Name unifies with the pathname of the entry.Source
archive_open/3Wrapper around archive_open/4 that opens the archive in read mode.Source
archive_open/4Open the archive in Data and unify Archive with a handle to the opened archive.Source
archive_open_entry/2Open the current entry as a stream.Source
archive_property/2True when Property is a property of the archive Handle.Source
archive_set_header_property/2Set Property of the current header.Source
arithmetic.pl  -- Extensible arithmeticShow source
assoc.pl  -- Binary associationsShow source
assoc_to_keys/2True if Keys is the list of keys in Assoc.Source
assoc_to_list/2Translate Assoc to a list Pairs of Key-Value pairs.Source
assoc_to_values/2True if Values is the list of values in Assoc.Source
del_assoc/4True if Key-Value is in Assoc0.Source
del_max_assoc/4True if Key-Value is in Assoc0 and Key is the greatest key.Source
del_min_assoc/4True if Key-Value is in Assoc0 and Key is the smallest key.Source
empty_assoc/1Is true if Assoc is the empty association list.Source
gen_assoc/3True if Key-Value is an association in Assoc.Source
get_assoc/3True if Key-Value is an association in Assoc.Source
get_assoc/5True if Key-Val0 is in Assoc0 and Key-Val is in Assoc.Source
is_assoc/1True if Assoc is an association list.Source
list_to_assoc/2Create an association from a list Pairs of Key-Value pairs.Source
map_assoc/2True if Pred(Value) is true for all values in Assoc.Source
map_assoc/3Map corresponding values.Source
max_assoc/3True if Key-Value is in Assoc and Key is the largest key.Source
min_assoc/3True if Key-Value is in assoc and Key is the smallest key.Source
ord_list_to_assoc/2Assoc is created from an ordered list Pairs of Key-Value pairs.Source
put_assoc/4Assoc is Assoc0, except that Key is associated with Value.Source
backcomp.pl  -- Backward compatibilityShow source
$apropos_match/2True if Needle is a sub atom of Haystack.Source
$arch/2Source
$argv/1Source
$declare_module/3Used in triple20 particle library.Source
$home/1Source
$module/2Source
$set_prompt/1Set the prompt for the toplevel.Source
$strip_module/3This used to be an internal predicate.Source
$version/1Source
C/3Used to be generated by DCG.Source
at_initialization/1Register goal only to be run if a saved state is restored.Source
checklist/2Source
concat/3Source
concat_atom/2Concatenate a list of atomic values to an atom.Source
concat_atom/3Concatenate a list of atomic values to an atom, inserting Seperator between each consecutive elements.Source
convert_time/2Convert a time-stamp as obtained though get_time/1 into a textual representation using the C-library function ctime().Source
convert_time/8Convert a time stamp, provided by get_time/1, time_file/2, etc.Source
current_module/2True if Module is a module loaded from File.Source
current_mutex/3Source
current_thread/2Source
displayq/1Write term ignoring operators and quote atoms.Source
displayq/2Write term ignoring operators and quote atoms.Source
eval_license/0Source
export_list/2Module exports the predicates of List.Source
feature/2Control Prolog flags.Source
flush/0Source
free_variables/2Return a list of unbound variables in Term.Source
hash/1Demands PredInd to be indexed using a hash-table.Source
hash_term/2If Term is ground, Hash is unified to an integer representing a hash for Term.Source
index/1Prepare the predicate indicated by Head for multi-argument indexing.Source
lock_predicate/2Source
merge/3Merge the ordered sets List1 and List2 into a new ordered list.Source
merge_set/3Merge the ordered sets Set1 and Set2 into a new ordered set without duplicates.Source
message_queue_size/2True if Queue holds Size terms.Source
proper_list/1Old SWI-Prolog predicate to check for a list that really ends in a [].Source
read_clause/1Source
read_clause/2Source
read_pending_input/3Source
read_variables/2Source
read_variables/3Source
set_base_module/1Set the default module from whic we inherit.Source
set_feature/2Control Prolog flags.Source
setup_and_call_cleanup/3Call Cleanup once after Goal is finished.Source
setup_and_call_cleanup/4Call Cleanup once after Goal is finished, with Catcher unified to the reason.Source
sformat/2Source
sformat/3Source
string_to_atom/2Bi-directional conversion between string and atom.Source
string_to_list/2Bi-directional conversion between a string and a list of character codes.Source
sublist/3Succeeds if List2 unifies with a list holding those terms for wich call(Goal, Elem) succeeds.Source
substring/4Predecessor of sub_string using 1-based Offset.Source
subsumes/2True if Generic is unified to Specific without changing Specific.Source
subsumes_chk/2True if Generic can be made equivalent to Specific without changing Specific.Source
sumlist/2True when Sum is the list of all numbers in List.Source
trie_insert_new/3Source
unlock_predicate/2Source
write_ln/1Source
base32.pl  -- Base32 encoding and decodingShow source
base64.pl  -- Base64 encoding and decodingShow source
bdb.pl  -- Berkeley DB interfaceShow source
bdb_close/1Close BerkeleyDB database indicated by DB.Source
bdb_close_environment/1Close a database environment that was explicitly created using bdb_init/2.Source
bdb_closeall/0Close all currently open databases and environments.Source
bdb_current/1True when DB is a handle to a currently open database.Source
bdb_current_environment/1True when Environment is a currently known environment.Source
bdb_del/3Delete the first matching key-value pair from the database.Source
bdb_delall/3Delete all matching key-value pairs from the database.Source
bdb_enum/3Enumerate the whole database, unifying the key-value pairs to Key and Value.Source
bdb_environment_property/2True when Property is a property of Environment.Source
bdb_get/3Query the database.Source
bdb_getall/3Get all values associated with Key.Source
bdb_init/1Initialise a DB environment.Source
bdb_init/2Initialise a DB environment.Source
bdb_open/4Open File holding a database.Source
bdb_put/3Add a new key-value pair to the database.Source
bdb_transaction/1Start a transaction, execute Goal and terminate the transaction.Source
bdb_transaction/2Start a transaction, execute Goal and terminate the transaction.Source
bdb_version/1True when Version identifies the database version.Source
broadcast.pl  -- Event serviceShow source
c14n2.pl  -- C14n2 canonical XML documentsShow source
xml_write_canonical/3Write an XML DOM using the canonical conventions as defined by C14n2.Source
charsio.pl  -- I/O on Lists of Character CodesShow source
atom_to_chars/2Convert Atom into a list of character codes.Source
atom_to_chars/3Convert Atom into a difference list of character codes.Source
format_to_chars/3Use format/2 to write to a list of character codes.Source
format_to_chars/4Use format/2 to write to a difference list of character codes.Source
number_to_chars/2Convert Atom into a list of character codes.Source
number_to_chars/3Convert Number into a difference list of character codes.Source
open_chars_stream/2Open Codes as an input stream.Source
read_from_chars/2Read Codes into Term.Source
read_term_from_chars/3Read Codes into Term.Source
with_output_to_chars/2Run Goal as with once/1.Source
with_output_to_chars/3Run Goal as with once/1.Source
with_output_to_chars/4Same as with_output_to_chars/3 using an explicit stream.Source
write_to_chars/2Write a term to a code list.Source
write_to_chars/3Write a term to a code list.Source
check.pl  -- Consistency checkingShow source
chr.plShow source
debug_ask_continue/1Hook to ask for a CHR debug continuation.Source
debug_event/2Hook into the CHR debugger.Source
debug_interact/3Hook into the CHR debugger to display Event and ask for the next command to execute.Source
codesio.pl  -- I/O on Lists of Character CodesShow source
format_to_codes/3Use format/2 to write to a list of character codes.Source
format_to_codes/4Use format/2 to write to a difference list of character codes.Source
open_codes_stream/2Open Codes as an input stream.Source
read_from_codes/2Read Codes into Term.Source
read_term_from_codes/3Read Codes into Term.Source
with_output_to_codes/2Run Goal with as once/1.Source
with_output_to_codes/3Run Goal with as once/1.Source
with_output_to_codes/4As with_output_to_codes/3, but Stream is unified with the temporary stream.Source
write_term_to_codes/3True when Codes is a string that matches the output of write_term/3 using Options.Source
write_term_to_codes/4True when Codes\Tail is a difference list containing the character codes that matches the output of write_term/3 using Options.Source
write_to_codes/2Codes is a list of character codes produced by write/1 on Term.Source
write_to_codes/3Codes is a difference-list of character codes produced by write/1 on Term.Source
coinduction.pl  -- Co-Logic ProgrammingShow source
console_input.plShow source
complete_input/4Compute auto completions for the input line BeforeCursor+AfterCursor.Source
crypt.plShow source
crypto.pl  -- Cryptography and authentication libraryShow source
csv.pl  -- Process CSV (Comma-Separated Values) dataShow source
csv/3Prolog DCG to `read/write' CSV data.Source
csv/4Prolog DCG to `read/write' CSV data.Source
csv_options/2Compiled is the compiled representation of the CSV processing options as they may be passed into csv//2, etc.Source
csv_read_file/2Read a CSV file into a list of rows.Source
csv_read_file/3Read a CSV file into a list of rows.Source
csv_read_file_row/3True when Row is a row in File.Source
csv_read_row/3Read the next CSV record from Stream and unify the result with Row.Source
csv_write_file/2Write a list of Prolog terms to a CSV file.Source
csv_write_file/3Write a list of Prolog terms to a CSV file.Source
csv_write_stream/3Write the rows in Data to Stream.Source
ctypes.pl  -- Character code classificationShow source
is_digit/3Succeeds if `C' is a digit using `Base' as base and `Weight' represents its value.Source
is_paren/2True if Open is the open-parenthesis of Close.Source
to_lower/2Downcase a character code.Source
to_upper/2Upcase a character code.Source
upper_lower/2True when U is the character code of an uppercase character and L is the character code of the corresponding lowercase character.Source
date.pl  -- Process dates and timesShow source
date_time_value/3Extract values from a date-time structure.Source
day_of_the_week/2Computes the day of the week for a given date.Source
day_of_the_year/2Computes the day of the year for a given date.Source
parse_time/2Stamp is a timestamp created from parsing Text using the representation Format.Source
parse_time/3Stamp is a timestamp created from parsing Text using the representation Format.Source
debug.pl  -- Print debug messages and test assertionsShow source
dialect.pl  -- Support multiple Prolog dialectsShow source
dicts.pl  -- Dict utilitiesShow source
dict_fill/4Implementation for the dicts_to_same_keys/3 OnEmpty closure that fills new cells with a copy of ValueIn.Source
dict_keys/2True when Keys is an ordered set of the keys appearing in Dict.Source
dicts_join/3Join dicts in Dicts that have the same value for Key, provided they do not have conflicting values on other keys.Source
dicts_join/4Join two lists of dicts (Dicts1 and Dicts2) on Key.Source
dicts_same_keys/2True if List is a list of dicts that all have the same keys and Keys is an ordered set of these keys.Source
dicts_same_tag/2True when List is a list of dicts that all have the tag Tag.Source
dicts_slice/3DictsOut is a list of Dicts only containing values for Keys.Source
dicts_to_compounds/4True 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.Source
dicts_to_same_keys/3DictsOut is a copy of DictsIn, where each dict contains all keys appearing in all dicts of DictsIn.Source
dif.pl  -- The dif/2 constraintShow source
dif/2Constraint that expresses that Term1 and Term2 never become identical (==/2).Source
doc_files.pl  -- Create stand-alone documentation filesShow source
doc_http.pl  -- Documentation serverShow source
doc_browser/0Open user's default browser on the documentation server.Source
doc_browser/1Open user's default browser on the documentation server.Source
doc_enable/1Actually activate the PlDoc server.Source
doc_server/1Start a documentation server in the current Prolog process.Source
doc_server/2Start a documentation server in the current Prolog process.Source
doc_latex.pl  -- PlDoc LaTeX backendShow source
doc_latex/3Process one or more objects, writing the LaTeX output to OutFile.Source
latex_for_file/3Generate a LaTeX description of all commented predicates in File, writing the LaTeX text to the stream Out.Source
latex_for_predicates/3Generate LaTeX for a list of predicate indicators.Source
latex_for_wiki_file/3Write a LaTeX translation of a Wiki file to the steam Out.Source
double_metaphone.pl  -- Phonetic string matchingShow source
double_metaphone/2Same as double_metaphone/3, but only returning the primary metaphone.Source
double_metaphone/3Create metaphone and alternative metaphone from In.Source
edinburgh.pl  -- Some traditional Edinburgh predicatesShow source
debug/0Switch on/off debug mode.Source
display/1Write a term, ignoring operators.Source
display/2Write a term, ignoring operators.Source
fileerrors/2Query and change the fileerrors flag.Source
nodebug/0Switch on/off debug mode.Source
reconsult/1Load source file(s), wiping the old content first.Source
unknown/2Edinburgh Prolog predicate for dealing dealing with undefined procedures.Source
edit.pl  -- Editor interfaceShow source
edit/0Edit associated or script file.Source
edit/1Edit indicated object.Source
edit_command/2This predicate should specify the shell-command called to invoke the user's editor.Source
locate/2Locate object from the specified location.Source
locate/3Source
select_location/3Source
editline.pl  -- BSD libedit based command line editingShow source
el_add_history/2Add a line to the command line history.Source
el_addfn/4Add a new command to the command line editor associated with Input.Source
el_bind/2Invoke the libedit bind command with the given arguments.Source
el_cursor/2Move the cursor Move character forwards (positive) or backwards (negative).Source
el_deletestr/2Delete Count characters before the cursor.Source
el_history/2Perform a generic action on the history.Source
el_history_events/2Unify 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.Source
el_insertstr/2Insert Text at the cursor.Source
el_line/2Fetch the currently buffered input line.Source
el_read_history/2Read the history saved using el_write_history/2.Source
el_setup/1This 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.Source
el_source/2Initialise editline by reading the contents of File.Source
el_unwrap/1Remove the libedit wrapper for In and the related output and error streams.Source
el_wrap/0Enable using editline on the standard user streams if user_input is connected to a terminal.Source
el_wrap/4Enable editline on the stream-triple <In,Out,Error>.Source
el_wrapped/1True if In is a stream wrapped by el_wrap/3.Source
el_write_history/2Save editline history to File.Source
error.pl  -- Error generating supportShow source
current_type/3True when Type is a currently defined type and Var satisfies Type of the body term Body succeeds.Source
domain_error/2The argument is of the proper type, but has a value that is outside the supported values.Source
existence_error/2Term is of the correct type and correct domain, but there is no existing (external) resource that is represented by it.Source
existence_error/3Term is of the correct type and correct domain, but there is no existing (external) resource that is represented by it in the provided set.Source
has_type/2True if Term satisfies Type.Source
instantiation_error/1An argument is under-instantiated.Source
is_of_type/2True if Term satisfies Type.Source
must_be/2True if Term satisfies the type constraints for Type.Source
permission_error/3It is not allowed to perform Action on the object Term that is of the given Type.Source
representation_error/1A representation error indicates a limitation of the implementation.Source
resource_error/1A goal cannot be completed due to lack of resources.Source
syntax_error/1A text has invalid syntax.Source
type_error/2Tell the user that Term is not of the expected Type.Source
uninstantiation_error/1An argument is over-instantiated.Source
explain.pl  -- Describe Prolog TermsShow source
files.plShow source
can_open_file/2Succeeds if the user has access to `File' in mode `Mode'.Source
chdir/1Change Working Directory.Source
filesex.pl  -- Extended operations on filesShow source
gensym.pl  -- Generate unique symbolsShow source
git.pl  -- Run GIT commandsShow source
git/2Run a GIT command.Source
git_branches/2True when Branches is the list of branches in the repository.Source
git_default_branch/2True when BranchName is the default branch of a repository.Source
git_describe/2Describe the running version based on GIT tags and hashes.Source
git_hash/2Return the hash of the indicated object.Source
git_ls_remote/3Execute git ls-remote against the remote repository to fetch references from the remote.Source
git_ls_tree/2True when Entries is a list of entries in the the GIT repository, Each entry is a term:.Source
git_open_file/4Open the file File in the given bare GIT repository on the given branch (treeisch).Source
git_process_output/3Run a git-command and process the output with OnOutput, which is called as call(OnOutput, Stream).Source
git_remote_branches/2Exploit git_ls_remote/3 to fetch the branches from a remote repository without downloading it.Source
git_remote_url/3URL is the remote (fetch) URL for the given Remote.Source
git_shortlog/3Fetch information like the GitWeb change overview.Source
git_show/4Fetch info from a GIT commit.Source
git_tags_on_branch/3Tags is a list of tags in Branch on the GIT repository Dir, most recent tag first.Source
is_git_directory/1True if Directory is a git directory (Either checked out or bare).Source
hash_stream.pl  -- Maintain a hash on a streamShow source
open_hash_stream/3Open a filter stream on OrgStream that maintains a hash.Source
stream_hash/2Unify Digest with a hash for the bytes send to or read from HashStream.Source
heaps.pl  -- heaps/priority queuesShow source
add_to_heap/4Adds Key with priority Priority to Heap0, constructing a new heap in Heap.Source
delete_from_heap/4Deletes Key from Heap0, leaving its priority in Priority and the resulting data structure in Heap.Source
empty_heap/1True if Heap is an empty heap.Source
get_from_heap/4Retrieves the minimum-priority pair Priority-Key from Heap0.Source
heap_size/2Determines the number of elements in Heap.Source
heap_to_list/2Constructs a list List of Priority-Element terms, ordered by (ascending) priority.Source
is_heap/1Returns true if X is a heap.Source
list_to_heap/2If List is a list of Priority-Element terms, constructs a heap out of List.Source
merge_heaps/3Merge the two heaps Heap0 and Heap1 in Heap.Source
min_of_heap/3Unifies Key with the minimum-priority element of Heap and Priority with its priority value.Source
min_of_heap/5Gets the two minimum-priority elements from Heap.Source
singleton_heap/3True if Heap is a heap with the single element Priority-Key.Source
help.plShow source
helpidx.plShow source
iostream.pl  -- Utilities to deal with streamsShow source
isub.pl  -- isub: a string similarity measureShow source
isub/4Similarity is a measure for the distance between Text1 and Text2.Source
jpl.pl  -- A Java interface for SWI Prolog 7.xShow source
jpl_array_to_length/2Array should be a JPL reference to a Java array of any type.Source
jpl_array_to_list/2Array should be a JPL reference to a Java array of any type.Source
jpl_array_to_terms/2JRef should be a JPL reference to a Java array of org.jpl7.Term instances (or ots subtypes); Terms will be a list of the terms which the respective array elements represent.Source
jpl_c_lib_version/1Version is the fully qualified version identifier of the in-use C component (jpl.c) of JPL.Source
jpl_call/4X should be either * an object reference, e.g.Source
jpl_class_to_classname/2Class is a reference to a class object.Source
jpl_class_to_type/2ClassObject is a reference to a class object of Type.Source
jpl_classname_to_class/2ClassName unambiguously represents a class, e.g.Source
jpl_classname_to_type/2Classname is any of: a source-syntax (dotted) class name, e.g.Source
jpl_datum_to_type/2Datum must be a JPL representation of an instance of one (or more) Java types;.Source
jpl_datums_to_array/2A will be a JPL reference to a new Java array, whose base type is the most specific Java type of which each member of Datums is (directly or indirectly) an instance.Source
jpl_enumeration_element/2generates each Element from the Enumeration * if the element is a java.lang.String then Element will be an atom * if the element is null then Element will (oughta) be null * otherwise I reckon it has to be an object ref.Source
jpl_enumeration_to_list/2Enumeration should be a JPL reference to an object which implements the Enumeration interface.Source
jpl_false/1X is @(false), the JPL representation of the Java boolean value 'false'.Source
jpl_get/3X can be.Source
jpl_get_actual_jvm_opts/1Returns (as a list of atoms) the options with which the JVM was initialised.Source
jpl_get_default_jvm_opts/1Returns (as a list of atoms) the options which will be passed to the JVM when it is initialised, e.g.Source
jpl_hashtable_pair/2Generates Key-Value pairs from the given HashTable.Source
jpl_is_class/1True if Term is a JPL reference to an instance of java.lang.Class.Source
jpl_is_false/1True if Term is @(false), the JPL representation of the Java boolean value 'false'.Source
jpl_is_null/1True if Term is @(null), the JPL representation of Java's 'null' reference.Source
jpl_is_object/1True if Term is a well-formed JPL object reference.Source
jpl_is_object_type/1True if Term is an object (class or array) type, not e.g.Source
jpl_is_ref/1True if Term is a well-formed JPL reference, either to a Java object or to Java's notional but important 'null' non-object.Source
jpl_is_true/1True if Term is @(true), the JPL representation of the Java boolean value 'true'.Source
jpl_is_type/1True if Term is a well-formed JPL type structure.Source
jpl_is_void/1True if Term is @(void), the JPL representation of the pseudo Java value 'void' (which is returned by jpl_call/4 when invoked on void methods).Source
jpl_iterator_element/2Iterator should be a JPL reference to an object which implements the java.util.Iterator interface.Source
jpl_list_to_array/2Datums should be a proper Prolog list of JPL datums (values or references).Source
jpl_map_element/2Map must be a JPL Reference to an object which implements the java.util.Map interface.Source
jpl_new/3X can be: * an atomic classname, e.g.Source
jpl_null/1X is @(null), the JPL representation of Java's 'null' reference.Source
jpl_object_to_class/2fails silently if Object is not a valid reference to a Java object.Source
jpl_object_to_type/2Object must be a proper JPL reference to a Java object (i.e.Source
jpl_pl_lib_version/1Version is the fully qualified version identifier of the in-use Prolog component (jpl.pl) of JPL.Source
jpl_pl_syntax/1unifies Syntax with 'traditional' or 'modern' according to the mode in which SWI Prolog 7.x was started.Source
jpl_primitive_type/1Type is an atomic JPL representation of one of Java's primitive types.Source
jpl_ref_to_type/2Ref must be a proper JPL reference (to an object, null or void).Source
jpl_servlet_byref/3This serves the "byref" servlet demo, exemplifying one tactic for implementing a servlet in Prolog by accepting the Request and Response objects as JPL references and accessing their members via JPL as required;.Source
jpl_servlet_byval/3This exemplifies an alternative (to jpl_servlet_byref) tactic for implementing a servlet in Prolog; most Request fields are extracted in Java before this is called, and passed in as a multimap (a map, some of whose values are maps).Source
jpl_set/3sets the Fspec-th field of (class or object) X to value V iff it is assignable.Source
jpl_set_default_jvm_opts/1Replaces the default JVM initialisation options with those supplied.Source
jpl_set_element/2Set must be a JPL reference to an object which implements the java.util.Set interface.Source
jpl_terms_to_array/2Terms should be a proper Prolog list of arbitrary terms.Source
jpl_true/1X is @(true), the JPL representation of the Java boolean value 'true'.Source
jpl_type_to_class/2Incomplete types are now never cached (or otherwise passed around).Source
jpl_type_to_classname/2Type, which is a class or array type (not sure about the others...), is denoted by ClassName in dotted syntax.Source
jpl_void/1X is @(void), the JPL representation of the pseudo Java value 'void'.Source
lazy_lists.pl  -- Lazy list handlingShow source
lazy_engine_next/4Lazy list iterator for engines.Source
lazy_findall/3True when List is a lazy list containing the instantiations for Template for each answer of Goal.Source
lazy_findall/4True when List is a lazy list containing the instantiations for Template for each answer of Goal.Source
lazy_get_codes/4Lazy list iterator to get character codes from a stream.Source
lazy_list/2Create a lazy list from a callback.Source
lazy_list/3Create a lazy list where the next element is defined by.Source
lazy_list_iterator/4Directive to create a lazy list iterator from a predicate that gets a single next value.Source
lazy_list_length/2True if Len is the length of the materialized lazy list.Source
lazy_list_materialize/1Materialize the lazy list.Source
lazy_message_queue/4Lazy list iterator for message queues.Source
lazy_read_lines/4Lazy list iterator to read lines from Stream.Source
lazy_read_terms/4Turn a stream into a lazy list of Prolog terms.Source
listing.pl  -- List programs and pretty print clausesShow source
listing/0Lists all predicates defined in the calling module.Source
listing/1List matching clauses.Source
portray_clause/1Portray `Clause' on the current output stream.Source
portray_clause/2Portray `Clause' on the current output stream.Source
portray_clause/3Portray `Clause' on the current output stream.Source
lists.pl  -- List ManipulationShow source
append/2Concatenate a list of lists.Source
append/3List1AndList2 is the concatenation of List1 and List2.Source
delete/3Delete matching elements from a list.Source
flatten/2Is true if FlatList is a non-nested version of NestedList.Source
intersection/3True if Set3 unifies with the intersection of Set1 and Set2.Source
is_set/1True if Set is a proper list without duplicates.Source
last/2Succeeds when Last is the last element of List.Source
list_to_set/2True when Set has the same elements as List in the same order.Source
max_list/2True if Max is the largest number in List.Source
max_member/2True when Max is the largest member in the standard order of terms.Source
member/2True if Elem is a member of List.Source
min_list/2True if Min is the smallest number in List.Source
min_member/2True when Min is the smallest member in the standard order of terms.Source
nextto/3True if Y directly follows X in List.Source
nth0/3True when Elem is the Index'th element of List.Source
nth0/4Select/insert element at index.Source
nth1/3Is true when Elem is the Index'th element of List.Source
nth1/4As nth0/4, but counting starts at 1.Source
numlist/3List is a list [Low, Low+1, ... High].Source
permutation/2True when Xs is a permutation of Ys.Source
prefix/2True iff Part is a leading substring of Whole.Source
proper_length/2True when Length is the number of elements in the proper list List.Source
reverse/2Is true when the elements of List2 are in reverse order compared to List1.Source
same_length/2Is true when List1 and List2 are lists with the same number of elements.Source
select/3Is true when List1, with Elem removed, results in List2.Source
select/4Select from two lists at the same positon.Source
selectchk/3Semi-deterministic removal of first element in List that unifies with Elem.Source
selectchk/4Semi-deterministic version of select/4.Source
subset/2True if all elements of SubSet belong to Set as well.Source
subtract/3Delete all elements in Delete from Set.Source
sum_list/2Sum is the result of adding all numbers in List.Source
union/3True if Set3 unifies with the union of the lists Set1 and Set2.Source
main.pl  -- Provide entry point for scriptsShow source
make.pl  -- Reload modified source filesShow source
make/0Reload all source files that have been changed since they were loaded.Source
make_hook/2This hook is called by make/0.
md5.pl  -- MD5 hashesShow source
md5_hash/3Hash is the MD5 hash of Data, The conversion is controlled by Options:.Source
memfile.plShow source
modules.pl  -- Module utility predicatesShow source
in_temporary_module/3Run Goal on temporary loaded sources and discard the module and loaded predicates after completion.Source
nb_rbtrees.pl  -- Non-backtrackable operations on red black treesShow source
nb_rb_get_node/3True if Node is the node in RBTree associated to Key.Source
nb_rb_insert/3Add Key-Value to the tree RBTree using non-backtrackable destructive assignment.Source
nb_rb_node_value/2Value is the value associated to Node.Source
nb_rb_set_node_value/2Associate Value with Node.Source
nb_set.pl  -- Non-backtrackable setsShow source
occurs.pl  -- Finding and counting sub-termsShow source
contains_term/2Succeeds if Sub is contained in Term (=, deterministically).Source
contains_var/2Succeeds if Sub is contained in Term (==, deterministically).Source
free_of_term/2Succeeds of Sub does not unify to any subterm of Term.Source
free_of_var/2Succeeds of Sub is not equal (==) to any subterm of Term.Source
occurrences_of_term/3Count the number of SubTerms in Term.Source
occurrences_of_var/3Count the number of SubTerms in Term.Source
sub_term/2Generates (on backtracking) all subterms of Term.Source
sub_var/2Generates (on backtracking) all subterms (==) of Term.Source
odbc.plShow source
odbc_current_connection/2True if Conn is an open ODBC connection to DSN.Source
odbc_current_table/2Enumerate the existing tables.Source
odbc_data_source/2Enumerate the available data-sources.Source
odbc_driver_connect/3Connects to a database using SQLDriverConnect().Source
odbc_query/2Execute SQL-statement that does not produce a result.Source
odbc_query/3Run query without options.Source
odbc_table_column/3True if Column appears in Table on Connection.Source
odbc_table_column/4Source
odbc_table_foreign_key/5Enumerate foreign keys columns.Source
odbc_table_primary_key/3Enumerate columns in primary key for table.Source
odbc_type/3Source
operators.pl  -- Manage operatorsShow source
pop_operators/0Revert all changes to the operator table realised since the last push_operators/1.Source
pop_operators/1Reset operators as pushed by push_operators/2.Source
push_op/3As op/3, but this call must appear between push_operators/1 and pop_operators/0.Source
push_operators/1Installs the operators from New, where New is a list of op(Prec, Type, :Name).Source
push_operators/2Installs the operators from New, where New is a list of op(Prec, Type, :Name).Source
option.pl  -- Option list processingShow source
dict_options/2Convert between an option list and a dictionary.Source
merge_options/3Merge two option lists.Source
meta_options/3Perform meta-expansion on options that are module-sensitive.Source
option/2Get an Option from OptionList.Source
option/3Get an Option from OptionList.Source
select_option/3Get and remove Option from an option list.Source
select_option/4Get and remove Option with default value.Source
optparse.pl  -- command line parsingShow source
opt_arguments/3Extract commandline options according to a specification.Source
opt_help/2True when Help is a help string synthesized from OptsSpec.Source
opt_parse/4Equivalent to opt_parse(OptsSpec, ApplArgs, Opts, PositionalArgs, []).Source
opt_parse/5Parse the arguments Args (as list of atoms) according to OptsSpec.Source
parse_type/3Hook to parse option text Codes to an object of type Type.Source
ordsets.pl  -- Ordered set manipulationShow source
is_ordset/1True if Term is an ordered set.Source
list_to_ord_set/2Transform a list into an ordered set.Source
ord_add_element/3Insert an element into the set.Source
ord_del_element/3Delete an element from an ordered set.Source
ord_disjoint/2True if Set1 and Set2 have no common elements.Source
ord_empty/1True when List is the empty ordered set.Source
ord_intersect/2True if both ordered sets have a non-empty intersection.Source
ord_intersect/3Intersection holds the common elements of Set1 and Set2.Source
ord_intersection/2Intersection of a powerset.Source
ord_intersection/3Intersection holds the common elements of Set1 and Set2.Source
ord_intersection/4Intersection and difference between two ordered sets.Source
ord_memberchk/2True if Element is a member of OrdSet, compared using ==.Source
ord_selectchk/3Selectchk/3, specialised for ordered sets.Source
ord_seteq/2True if Set1 and Set2 have the same elements.Source
ord_subset/2Is true if all elements of Sub are in Super.Source
ord_subtract/3Diff is the set holding all elements of InOSet that are not in NotInOSet.Source
ord_symdiff/3Is true when Difference is the symmetric difference of Set1 and Set2.Source
ord_union/2True if Union is the union of all elements in the superset SetOfSets.Source
ord_union/3Union is the union of Set1 and Set2.Source
ord_union/4True iff ord_union(Set1, Set2, Union) and ord_subtract(Set2, Set1, New).Source
oset.pl  -- Ordered set manipulationShow source
oset_addel/3ordered set element addition.Source
oset_delel/3ordered set element deletion.Source
oset_diff/3ordered set difference.Source
oset_dint/2distributed intersection.Source
oset_dunion/2distributed union.Source
oset_int/3ordered set intersection.Source
oset_is/1check that OSet in correct format (standard order).Source
oset_power/2True when PSet is the powerset of Set.Source
oset_union/3Source
pairs.pl  -- Operations on key-value listsShow source
pcre.pl  -- Perl compatible regular expression matching for SWI-PrologShow source
re_compile/3Compiles Pattern to a Regex blob of type regex (see blob/2).Source
re_config/1Extract configuration information from the pcre library.Source
re_flush/0Clean pattern and replacement caches.Source
re_foldl/6Fold all matches of Regex on String.Source
re_match/2Succeeds if String matches Regex.Source
re_match/3Succeeds if String matches Regex.Source
re_matchsub/4Match String against Regex.Source
re_replace/4Replace matches of the regular expression Pattern in String with With.Source
re_split/3Split String using the regular expression Pattern.Source
re_split/4Split String using the regular expression Pattern.Source
pengines.pl  -- Pengines: Web Logic Programming Made EasyShow source
authentication_hook/3This hook is called from the =/pengine/create= HTTP handler to discover whether the server is accessed by an authorized user.Source
current_pengine_application/1True when Application is a currently defined application.Source
event_to_json/3Hook that translates a Pengine event structure into a term suitable for reply_json/1, according to the language specification Lang.Source
not_sandboxed/2This hook is called to see whether the Pengine must be executed in a protected environment.Source
output/2Hook to handle pengine_output/1 from the remote pengine.Source
pengine_abort/1Aborts the running query.Source
pengine_application/1Directive that must be used to declare a pengine application module.Source
pengine_ask/3Asks pengine NameOrID a query Query.Source
pengine_create/1Creates a new pengine.Source
pengine_debug/2Create a message using format/3 from Format and Args and send this to the client.Source
pengine_destroy/1Destroys the pengine NameOrID.Source
pengine_destroy/2Destroys the pengine NameOrID.Source
pengine_event/2Examines the pengine's event queue and if necessary blocks execution until a term that unifies to Term arrives in the queue.Source
pengine_event_loop/2Starts an event loop accepting event terms sent to the current pengine or thread.Source
pengine_input/2Sends Prompt to the master (parent) pengine and waits for input.Source
pengine_next/2Asks pengine NameOrID for the next solution to a query started by pengine_ask/3.Source
pengine_output/1Sends Term to the parent pengine or thread.Source
pengine_property/2True when Property is a property of the given Pengine.Source
pengine_pull_response/2Pulls a response (an event term) from the slave Pengine if Pengine is a remote process, else does nothing at all.Source
pengine_respond/3Sends a response in the form of the term Input to a slave (child) pengine that has prompted its master (parent) for input.Source
pengine_rpc/2Semantically 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.Source
pengine_rpc/3Semantically 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.Source
pengine_self/1True if the current thread is a pengine with Id.Source
pengine_stop/2Tells pengine NameOrID to stop looking for more solutions to a query started by pengine_ask/3.Source
pengine_user/1True when the pengine was create by an HTTP request that authorized User.Source
prepare_goal/3Pre-preparation hook for running Goal0.Source
prepare_module/3Hook, called to initialize the temporary private module that provides the working context of a pengine.Source
prompt/3Hook to handle pengine_input/2 from the remote pengine.Source
write_result/3Hook that allows for different output formats.Source
create_pool/1On demand creation of a thread pool for a pengine application.Source
pengines_io.pl  -- Provide Prolog I/O for HTML clientsShow source
binding_term/5Hook to render a Prolog result term as HTML.Source
pengine_bind_io_to_html/1Redefine the built-in predicates for IO to send HTML messages using pengine_output/1.Source
pengine_display/1Redirect the corresponding Prolog output predicates.Source
pengine_flush_output/0No-op.Source
pengine_format/1As format/1,2.Source
pengine_format/2As format/1,2.Source
pengine_io_predicate/1True when Head describes the head of a (system) IO predicate that is redefined by the HTML binding.Source
pengine_listing/0List the content of the current pengine or a specified predicate in the pengine.Source
pengine_listing/1List the content of the current pengine or a specified predicate in the pengine.Source
pengine_nl/0Emit a <br/> to the pengine.Source
pengine_print/1Redirect the corresponding Prolog output predicates.Source
pengine_write/1Redirect the corresponding Prolog output predicates.Source
pengine_write_canonical/1Redirect the corresponding Prolog output predicates.Source
pengine_write_term/2Writes term as <span class=Class>Term</span>.Source
pengine_writeln/1Emit Term as <span class=writeln>Term<br></span>.Source
pengine_writeq/1Redirect the corresponding Prolog output predicates.Source
message_hook/3Send output from print_message/2 to the pengine.Source
persistency.pl  -- Provide persistent dynamic predicatesShow source
current_persistent_predicate/1True if PI is a predicate that provides access to the persistent database DB.Source
db_attach/2Use File as persistent database for the calling module.Source
db_attached/1True if the context module attached to the persistent database File.Source
db_detach/0Detach persistency from the calling module and delete all persistent clauses from the Prolog database.Source
db_sync/1Synchronise database with the associated file.Source
db_sync_all/1Sync all registered databases.Source
persistent/1Declare dynamic database terms.Source
pldoc.pl  -- Process source documentationShow source
plunit.pl  -- Unit TestingShow source
begin_tests/1Start a test-unit.Source
begin_tests/2Start a test-unit.Source
end_tests/1Close a unit-test module.Source
load_test_files/1Load .plt test-files related to loaded source-files.Source
run_tests/0Run tests and report about the results.Source
run_tests/1Run tests and report about the results.Source
running_tests/0Print the currently running test.Source
set_test_options/1Specifies how to deal with test suites.Source
test_report/1Produce reports on test results after the run.Source
message_hook/3Redefine printing some messages.Source
porter_stem.plShow source
pprint.pl  -- Pretty Print Prolog termsShow source
predicate_options.pl  -- Access and analyse predicate optionsShow source
assert_predicate_options/4As predicate_options(:PI, +Arg, +Options).Source
check_predicate_option/3Verify predicate options at runtime.Source
check_predicate_options/0Analyse loaded program for erroneous options.Source
check_predicate_options/1Verify calls to predicates that have options in all clauses of the predicate indicated by PredicateIndicator.Source
current_option_arg/2True when Arg of PI processes predicate options.Source
current_predicate_option/3True when Arg of PI processes Option.Source
current_predicate_options/3True when Options is the current active option declaration for PI on Arg.Source
derive_predicate_options/0Derive new predicate option declarations.Source
derived_predicate_options/1Derive predicate option declarations for a module.Source
derived_predicate_options/3Derive option arguments using static analysis.Source
predicate_options/3Declare that the predicate PI processes options on Arg.Source
retractall_predicate_options/0Remove all dynamically (derived) predicate options.Source
process.pl  -- Create processes and redirect I/OShow source
is_process/1True if PID might be a process.Source
process_create/3Create a new process running the file Exe and using arguments from the given list.Source
process_group_kill/1Send signal to the group containing process PID.Source
process_group_kill/2Send signal to the group containing process PID.Source
process_id/1True if PID is the process id of the running Prolog process.Source
process_id/2PID is the process id of Process.Source
process_kill/1Send signal to process PID.Source
process_kill/2Send signal to process PID.Source
process_release/1Release process handle.Source
process_wait/2True if PID completed with Status.Source
process_wait/3True if PID completed with Status.Source
prolog_autoload.pl  -- Autoload all dependenciesShow source
autoload/0Force all necessary autoloading to be done now.Source
autoload/1Force all necessary autoloading to be done now.Source
prolog_breakpoints.pl  -- Manage Prolog break-pointsShow source
prolog_clause.pl  -- Get detailed source-information about a clauseShow source
clause_info/4Fetches source information for the given clause.Source
clause_name/2Provide a suitable description of the indicated clause.Source
initialization_layout/4Find term-layout of :- initialization directives.Source
open_source/2Hook into clause_info/5 that opens the stream holding the source for a specific clause.Source
predicate_name/2Describe a predicate as [Module:]Name/Arity.Source
unify_goal/5This hook is called to fix up source code manipulations that result from goal expansions.Source
prolog_codewalk.pl  -- Prolog code walkerShow source
prolog_program_clause/2True when ClauseRef is a reference for clause in the program.Source
prolog_walk_code/1Walk over all loaded (user) Prolog code.Source
prolog_colour.pl  -- Prolog syntax colouring support.Show source
goal_classification/2Multifile hookable classification for non-local goals.Source
prolog_colourise_query/3Colourise a query, to be executed in the context of SourceId.Source
prolog_colourise_stream/3Determine colour fragments for the data on Stream.Source
prolog_colourise_term/4Colourise the next term on Stream.Source
syntax_colour/2True when a range classified Class must be coloured using Attributes.Source
vararg_goal_classification/3Multifile hookable classification for vararg predicates.Source
prolog_format.pl  -- Analyse format specificationsShow source
prolog_metainference.pl  -- Infer meta-predicate propertiesShow source
infer_meta_predicate/2True when MetaSpec is a meta-predicate specifier for the predicate Head.Source
inferred_meta_predicate/2True when MetaSpec is an inferred meta-predicate specification for Head.Source
prolog_pack.pl  -- A package manager for PrologShow source
environment/2Hook to define the environment for building packs.Source
pack_info/1Print more detailed information about Pack.Source
pack_install/1Install a package.Source
pack_install/2Install package Name.Source
pack_list/1Query package server and installed packages and display results.Source
pack_list_installed/0List currently installed packages.Source
pack_property/2True when Property is a property of an installed Pack.Source
pack_rebuild/0Rebuild foreign components of all packages.Source
pack_rebuild/1Rebuilt possible foreign components of Pack.Source
pack_remove/1Remove the indicated package.Source
pack_search/1Query package server and installed packages and display results.Source
pack_upgrade/1Try to upgrade the package Pack.Source
pack_url_file/2True if File is a unique id for the referenced pack and version.Source
prolog_source.pl  -- Examine Prolog source-filesShow source
quasi_quotation_syntax/2True when the quasi quotation syntax Syntax can be loaded from Library.Source
xref_close_source/2Called by prolog_close_source/1 to close a source previously opened by the hook prolog:xref_open_source/2.Source
xref_open_source/2Hook to open an xref SourceID.Source
directory_source_files/3True when Files is a sorted list of Prolog source files in Dir.Source
file_alias_path/2True if file Alias points to Dir.Source
file_name_on_path/2True if OnPath a description of File based on the file search path.Source
load_quasi_quotation_syntax/2Import quasi quotation syntax Syntax from Path into the module specified by the first argument.Source
path_segments_atom/2Translate between a path represented as a/b/c and an atom representing the same path.Source
prolog_canonical_source/2Given a user-specification of a source, generate a unique and indexable identifier for it.Source
prolog_close_source/1Close a stream opened using prolog_open_source/2.Source
prolog_open_source/2Open source with given canonical id (see prolog_canonical_source/2) and remove the #!Source
prolog_read_source_term/4Read a term from a Prolog source-file.Source
read_source_term_at_location/3Try to read a Prolog term form an arbitrary location inside a file.Source
requires_library/2known expansion hooks.Source
prolog_stack.pl  -- Examine the Prolog stackShow source
backtrace/1Get and print a stacktrace to the user_error stream.Source
get_prolog_backtrace/2Obtain a backtrace from the current location.Source
get_prolog_backtrace/3Obtain a backtrace from the current location.Source
print_prolog_backtrace/2Print a stacktrace in human readable form to Stream.Source
print_prolog_backtrace/3Print a stacktrace in human readable form to Stream.Source
prolog_stack_frame_property/2True when Property is a property of Frame.Source
stack_guard/1Dynamic multifile hook that is normally not defined.Source
stack_guard/1Dynamic multifile predicate.Source
prolog_stream.pl  -- A stream with Prolog callbacksShow source
prolog_xref.pl  -- Prolog cross-referencer data collectionShow source
called_by/2If this succeeds, the cross-referencer assumes Goal may call any of the goals in ListOfCalled.Source
called_by/4True 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.Source
hook/1True if Goal is a hook that is called spontaneously (e.g., from foreign code).Source
meta_goal/2Define meta-predicates.Source
xref_called/3Enumerate the predicate-call relations.Source
xref_called/4Enumerate the predicate-call relations.Source
xref_clean/1Reset the database for the given source.Source
xref_comment/3Is true when Source has a section comment with Title and Comment.Source
xref_comment/4Is true when Head in Source has the given PlDoc comment.Source
xref_current_source/1Check what sources have been analysed.Source
xref_defined/3Test if Goal is accessible in Source.Source
xref_definition_line/2If the 3th argument of xref_defined contains line info, return this in Line.Source
xref_done/2Cross-reference executed at Time.Source
xref_exported/2True when Source exports Head.Source
xref_hook/1Definition of known hooks.Source
xref_meta/2True when Called is a list of terms called from Head.Source
xref_meta/3True when Head calls Called in Source.Source
xref_mode/3Is true when Source provides a predicate with Mode and determinism.Source
xref_module/2True if Module is defined in Source.Source
xref_op/2Give the operators active inside the module.Source
xref_option/2True when Source was processed using Option.Source
xref_prolog_flag/4True when Flag is set to Value at Line in Source.Source
xref_public_list/3Find meta-information about File.Source
xref_public_list/4Find meta-information about File.Source
xref_public_list/6Find meta-information about File.Source
xref_public_list/7Find meta-information about File.Source
xref_source/1Generate the cross-reference data for Source if not already done and the source is not modified.Source
xref_source/2Generate the cross-reference data for Source if not already done and the source is not modified.Source
xref_source_file/3Find named source file from Spec, relative to Src.Source
xref_source_file/4Find named source file from Spec, relative to Src.Source
xref_uses_file/3True when Source tries to load a file using Spec.Source
protobufs.pl  -- Google's Protocol BuffersShow source
protobuf_message/2Marshalls and unmarshalls byte streams encoded using Google's Protobuf grammars.Source
protobuf_message/3Marshalls and unmarshalls byte streams encoded using Google's Protobuf grammars.Source
pure_input.pl  -- Pure Input from files and streamsShow source
pwp.pl  -- Prolog Well-formed PagesShow source
pwp_files/2loads an Xml document from the file named In, transforms it using the PWP attributes, and writes the transformed version to the new file named Out.Source
pwp_stream/3Loads an Xml document from the given Input stream, transforms it using the PWP attributes, and writes the transformed version to the given Output stream.Source
pwp_xml/3maps down a list of XML items, acting specially on elements and copying everything else unchanged, including white space.Source
qsave.pl  -- Save current program as a state or executableShow source
quasi_quotations.pl  -- Define Quasi Quotation syntaxShow source
quintus.pl  -- Quintus compatibilityShow source
abs/2Unify `Absolute' with the absolute value of `Number'.Source
atom_char/2Same as ISO char_code/2.Source
compile/1Compile files.Source
cos/2Math library predicates.Source
current_stream/3SICStus/Quintus and backward compatible predicate.Source
date/1Get current date as date(Y,M,D).Source
genarg/3Generalised version of ISO arg/3.Source
log/2Math library predicates.Source
log10/2Math library predicates.Source
midstring/3Too difficult to explain.Source
midstring/4Too difficult to explain.Source
midstring/5Too difficult to explain.Source
midstring/6Too difficult to explain.Source
mode/1Ignore a DEC10/Quintus :- mode(Head) declaration.Source
no_style_check/1Same as SWI-Prolog style_check(-Style).Source
on_exception/3Source
otherwise/0For (A -> B ; otherwise -> C).Source
prolog_flag/2Same as ISO current_prolog_flag/2.Source
raise_exception/1Quintus compatible exception handling.Source
simple/1Term is atomic or a variable.Source
sin/2Math library predicates.Source
skip_line/0Skip the rest of the current line (on Stream).Source
skip_line/1Skip the rest of the current line (on Stream).Source
stream_position/3True when Old is the current position in Stream and the stream has been repositioned to New.Source
tan/2Math library predicates.Source
unix/1interface to Unix.Source
random.pl  -- Random numbersShow source
getrand/1Query/set the state of the random generator.Source
maybe/0Succeed/fail with equal probability (variant of maybe/1).Source
maybe/1Succeed with probability P, fail with probability 1-P.Source
maybe/2Succeed with probability K/N (variant of maybe/1).Source
random/1Binds R to a new random float in the open interval (0.0,1.0).Source
random/3Generate a random integer or float in a range.Source
random_between/3Binds R to a random integer in [L,U] (i.e., including both L and U).Source
random_member/2X is a random member of List.Source
random_perm2/4Does X=A,Y=B or X=B,Y=A with equal probability.Source
random_permutation/2Permutation is a random permutation of List.Source
random_select/3Randomly select or insert an element.Source
randseq/3S is a list of K unique random integers in the range 1..N.Source
randset/3S is a sorted list of K unique random integers in the range 1..N.Source
setrand/1Query/set the state of the random generator.Source
rbtrees.pl  -- Red black treesShow source
rdf.plShow source
rdf_ntriples.pl  -- RDF N-triples parser (obsolete)Show source
rdf_parser.plShow source
element_to_plrdf/3Rewrite a single XML element.Source
rdf_name_space/1True if URL must be handled as rdf: Determines special handling of rdf:about, rdf:resource, etc.Source
xml_to_plrdf/3Translate an XML (using namespaces) term into an Prolog term representing the RDF data.Source
rdf_triple.pl  -- Create triples from intermediate representationShow source
anon_prefix/1If defined, it is the prefix used to generate a blank node.Source
rdf_end_file/1Cleanup reaching the end of an RDF file.Source
rdf_reset_ids/0Utility predicate to reset the gensym counters for the various generated identifiers.Source
rdf_start_file/2Initialise for the translation of a file.Source
rdf_triples/2Convert an object as parsed by rdf.pl into a list of rdf/3 triples.Source
rdf_triples/3Convert an object as parsed by rdf.pl into a list of rdf/3 triples.Source
rdf_write.pl  -- Write RDF/XML from a list of triplesShow source
rdf_write_xml/2Write an RDF/XML serialization of Triples to Out.Source
readline.pl  -- GNU readline interfaceShow source
readutil.pl  -- Read utilitiesShow source
read_file_to_codes/3Read the file Spec into a list of Codes.Source
read_file_to_string/3Read the file Spec into a the string String.Source
read_file_to_terms/3Read the file Spec into a list of terms.Source
read_line_to_codes/2Read a line of input from In into a list of character codes.Source
read_line_to_codes/3Read a line of input as a difference list.Source
read_line_to_string/2Read the next line from Stream into String.Source
read_stream_to_codes/2Read input from Stream to a list of character codes.Source
read_stream_to_codes/3Read input from Stream to a list of character codes.Source
record.pl  -- Access compound arguments by nameShow source
current_record/2True if Name is the name of a record defined in the module associated with Term and Term is the user-provided record declaration.Source
current_record_predicate/2True if PI is the predicate indicator for an access predicate to Record.Source
record/1Define access predicates for a compound-term.Source
rewrite.plShow source
rewrite/2Invoke the term-rewriting system.Source
sandbox.pl  -- Sandboxed Prolog codeShow source
sandbox_allowed_directive/1Throws an exception if G is not considered a safe directive.Source
sandbox_allowed_expansion/1Throws an exception if G is not considered a safe expansion goal.Source
sandbox_allowed_goal/1Throw an exception if it is not safe to call G.Source
safe_call/1Call Goal if it complies with the sandboxing rules.Source
safe_directive/1Hook to declare additional directives as safe.Source
safe_global_variable/1Declare the given global variable safe to write to.Source
safe_goal/1True if calling Goal provides no security risc.Source
safe_meta/2Hook.Source
safe_primitive/1True if Goal is safe to call (i.e., cannot access dangerous system-resources and cannot upset other parts of the Prolog process).Source
settings.pl  -- Setting managementShow source
convert_setting_text/3Converts from textual form to Prolog Value.Source
current_setting/1True if Setting is a currently defined setting.Source
list_settings/0List settings to current_output.Source
list_settings/1List settings to current_output.Source
load_settings/1Load local settings from File.Source
load_settings/2Load local settings from File.Source
restore_setting/1Restore the value of setting Name to its default.Source
save_settings/0Save modified settings to File.Source
save_settings/1Save modified settings to File.Source
set_setting/2Change a setting.Source
set_setting_default/2Change the default for a setting.Source
setting/2True when Name is a currently defined setting with Value.Source
setting/4Define a setting.Source
setting_property/2Query currently defined settings.Source
sgml.pl  -- SGML, XML and HTML parserShow source
sgml_write.pl  -- XML/SGML writer moduleShow source
html_write/2Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
html_write/3Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
sgml_write/2Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
sgml_write/3Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
xml_write/2Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
xml_write/3Write a term as created by the SGML/XML parser to a stream in SGML or XML format.Source
xmlns/2Hook to define human readable abbreviations for XML namespaces.Source
sha.pl  -- SHA secure hashesShow source
file_sha1/2True when SHA1 is the SHA1 hash for the content of File.Source
hash_atom/2Convert a list of bytes (integers 0..255) into the usual hexadecimal notation.Source
hmac_sha/4For Options, see sha_hash/3.Source
sha_hash/3Hash is the SHA hash of Data, The conversion is controlled by Options:.Source
sha_hash_ctx/4Hash is the SHA hash of Data.Source
sha_new_ctx/2NewContext is unified with the empty SHA computation context (which includes the Options.) It could later be passed to sha_hash_ctx/4.Source
shell.pl  -- Elementary shell commandsShow source
cd/0Change working directory.Source
cd/1Change working directory.Source
dirs/0Manage the directory stack:.Source
ls/0Listing similar to Unix =ls -F=, flagging directories with =/=.Source
ls/1Listing similar to Unix =ls -F=, flagging directories with =/=.Source
mv/2Move (Rename) a file.Source
popd/0Manage the directory stack:.Source
pushd/0Manage the directory stack:.Source
pushd/1Manage the directory stack:.Source
pwd/0Print current working directory.Source
rm/1Remove (unlink) a file.Source
shell/0Execute an interactive shell.Source
shlib.pl  -- Utility library for loading foreign objects (DLLs, shared objects)Show source
snowball.pl  -- The Snowball multi-lingual stemmer libraryShow source
snowball/3Apply the Snowball Algorithm on Input and unify the result (an atom) with Stem.Source
snowball_current_algorithm/1True if Algorithm is the official name of an algorithm suported by snowball/3.Source
socket.pl  -- Network socket (TCP and UDP) libraryShow source
gethostname/1Return the canonical fully qualified name of this host.Source
negotiate_socks_connection/2Negotiate a connection to DesiredEndpoint over StreamPair.Source
proxy_for_url/3This hook can be implemented to return a proxy to try when connecting to URL.Source
tcp_accept/3This predicate waits on a server socket for a connection request by a client.Source
tcp_bind/2Bind the socket to Address on the current machine.Source
tcp_close_socket/1Closes the indicated socket, making SocketId invalid.Source
tcp_connect/2Connect SocketId.Source
tcp_connect/3Establish a TCP communication as a client.Source
tcp_connect/4Connect a (client) socket to Address and return a bi-directional connection through the stream-handles Read and Write.Source
tcp_fcntl/3Interface to the fcntl() call.Source
tcp_host_to_address/2Translate between a machines host-name and it's (IP-)address.Source
tcp_listen/2Tells, after tcp_bind/2, the socket to listen for incoming requests for connections.Source
tcp_open_socket/2Create streams to communicate to SocketId.Source
tcp_open_socket/3Similar to tcp_open_socket/2, but creates two separate sockets where tcp_open_socket/2 would have created a stream pair.Source
tcp_select/3Same as the built-in wait_for_input/3, but integrates better with event processing and the various options of sockets for Windows.Source
tcp_setopt/2Set options on the socket.Source
tcp_socket/1Creates an INET-domain stream-socket and unifies an identifier to it with SocketId.Source
try_proxy/4Attempt a socket-level connection via the given proxy to TargetAddress.Source
solution_sequences.pl  -- Modify solution sequencesShow source
call_nth/2True when Goal succeeded for the Nth time.Source
distinct/1True if Goal is true and no previous solution of Goal bound Witness to the same value.Source
distinct/2True if Goal is true and no previous solution of Goal bound Witness to the same value.Source
group_by/4Group bindings of Template that have the same value for By.Source
limit/2Limit the number of solutions.Source
offset/2Ignore the first Count solutions.Source
order_by/2Order solutions according to Spec.Source
reduced/1Similar to distinct/1, but does not guarantee unique results in return for using a limited amount of memory.Source
reduced/3Similar to distinct/1, but does not guarantee unique results in return for using a limited amount of memory.Source
sort.plShow source
ssl.pl  -- Secure Socket Layer (SSL) libraryShow source
cert_accept_any/5Implementation for the hook `cert_verify_hook(:Hook)` that accepts any certificate.Source
load_certificate/2Loads a certificate from a PEM- or DER-encoded stream, returning a term which will unify with the same certificate if presented in cert_verify_hook.Source
load_crl/2Loads a CRL from a PEM- or DER-encoded stream, returning a term containing terms hash/1, signature/1, issuer_name/1 and revocations/1, which is a list of revoked/2 terms.Source
load_private_key/3Load a private key PrivateKey from the given stream Stream, using Password to decrypt the key if it is encrypted.Source
load_public_key/2Load a public key PublicKey from the given stream Stream.Source
ssl_add_certificate_key/4Add an additional certificate/key pair to SSL0, yielding SSL.Source
ssl_context/3Create an SSL context.Source
ssl_negotiate/5Once a connection is established and a read/write stream pair is available, (PlainRead and PlainWrite), this predicate can be called to negotiate an SSL session over the streams.Source
ssl_peer_certificate/2True if the peer certificate is provided (this is always the case for a client connection) and Certificate unifies with the peer certificate.Source
ssl_peer_certificate_chain/2Certificates is the certificate chain provided by the peer, represented as a list of certificates.Source
ssl_secure_ciphers/1Ciphers is a secure cipher preference list that can be used in the cipher_list/1 option of ssl_context/3.Source
ssl_session/2Retrieves (debugging) properties from the SSL context associated with Stream.Source
ssl_set_options/3SSL is the same as SSL0, except for the options specified in Options.Source
system_root_certificates/1List is a list of trusted root certificates as provided by the OS.Source
statistics.pl  -- Get information about resource usageShow source
profile/1Run Goal under the execution profiler.Source
profile/2Run Goal under the execution profiler.Source
show_profile/1Display last collected profiling data.Source
statistics/0Print information about resource usage using print_message/2.Source
statistics/1Stats is a dict representing the same information as statistics/0.Source
thread_statistics/2Obtain statistical information about a single thread.Source
time/1Execute Goal, reporting statistics to the user.Source
streampool.plShow source
syslog.pl  -- Unix syslog interfaceShow source
system.pl  -- System utilitiesShow source
lock_predicate/1Transform a predicate into a system predicate.Source
system_mode/1Switch the system into system or user mode.Source
system_module/0Any predicate defined after this declaraction uptil the end of the file will become a system predicate.Source
unlock_predicate/1Transform a system predicate into a normal system predicate.Source
table.plShow source
term_to_json.plShow source
term_to_json/2Convert any general Prolog term into a JSON term.Source
term_to_json/3Convert any general Prolog term into a JSON term.Source
terms.pl  -- Term manipulationShow source
subsumes/2True if Generic is unified to Specific without changing Specific.Source
subsumes_chk/2True if Generic can be made equivalent to Specific without changing Specific.Source
term_factorized/3Is 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.Source
term_size/2True if Size is the size in cells occupied by Term on the global (term) stack.Source
term_subsumer/3General is the most specific term that is a generalisation of Special1 and Special2.Source
variant/2Same as SWI-Prolog Term1 =@= Term2.Source
test_cover.pl  -- Clause cover analysisShow source
show_coverage/1Report on coverage by Goal.Source
show_coverage/2Report on coverage by Goal.Source
thread.pl  -- High level thread primitivesShow source
concurrent/3Run Goals in parallel using N threads.Source
concurrent_maplist/2Concurrent version of maplist/2.Source
concurrent_maplist/3Concurrent version of maplist/2.Source
concurrent_maplist/4Concurrent version of maplist/2.Source
first_solution/3Try alternative solvers concurrently, returning the first answer.Source
thread_pool.pl  -- Resource bounded thread managementShow source
create_pool/1Hook to create a thread pool lazily.Source
current_thread_pool/1True if Name refers to a defined thread pool.Source
thread_create_in_pool/4Create a thread in Pool.Source
thread_pool_create/3Create a pool of threads.Source
thread_pool_destroy/1Destroy the thread pool named Name.Source
thread_pool_property/2True if Property is a property of thread pool Name.Source
threadutil.pl  -- Interactive thread utilitiesShow source
attach_console/0Create a new console and make the standard Prolog streams point to it.Source
attach_console/1Create a new console and make the standard Prolog streams point to it.Source
interactor/0Run a Prolog toplevel in another thread with a new console window.Source
interactor/1Run a Prolog toplevel in another thread with a new console window.Source
join_threads/0Join all terminated threads.Source
tdebug/0Enable debug-mode, trapping the graphical debugger on reaching spy-points or errors.Source
tdebug/1Enable debug-mode, trapping the graphical debugger on reaching spy-points or errors.Source
thread_has_console/0True when the calling thread has an attached console.Source
thread_run_interactor/0Attach a console and run a Prolog toplevel in the current thread.Source
threads/0List currently known threads with their status.Source
tnodebug/0Disable debug-mode in all threads or the specified Thread.Source
tnodebug/1Disable debug-mode in all threads or the specified Thread.Source
tprofile/1Profile the operation of Thread until the user hits a key.Source
tspy/1Trap the graphical debugger on reaching Spec in the specified or any thread.Source
tspy/2Trap the graphical debugger on reaching Spec in the specified or any thread.Source
xterm_args/1Multifile and dynamic hook that provides (additional) arguments for the xterm(1) process opened for additional thread consoles.Source
time.pl  -- Time and alarm libraryShow source
tty.pl  -- Terminal operationsShow source
menu/3Show a menu.Source
tty_clear/0Clear the display.Source
tty_flash/0Give visual signal if possible, otherwise beep.Source
udp_broadcast.pl  -- A UDP Broadcast BridgeShow source
udp_broadcast_initialize/2causes any required runtime initialization to occur.Source
udp_broadcast_service/2provides the UDP broadcast address for a given Domain.Source
udp_host_to_address/2locates a UDP service by name.Source
ugraphs.pl  -- Graph manipulation libraryShow source
compose/3Calculates the composition of two S-form graphs, which need not have the same set of vertices.Source
del_vertices/3Unify 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.Source
edges/2Edges is the set of edges in UGraph.Source
neighbors/3Neigbours is a sorted list of the neighbours of Vertex in Graph.Source
neighbours/3Neigbours is a sorted list of the neighbours of Vertex in Graph.Source
top_sort/2Sorted is a topological sorted list of nodes in Graph.Source
top_sort/3Sorted is a topological sorted list of nodes in Graph.Source
transpose_ugraph/2Unify NewGraph with a new graph obtained from Graph by replacing all edges of the form V1-V2 by edges of the form V2-V1.Source
ugraph_union/3Is true when Union is the union of Set1 and Set2.Source
vertices/2Strips off the neighbours lists of an S-representation to produce a list of the vertices of the graph.Source
vertices_edges_to_ugraph/3Create a UGraph from Vertices and edges.Source
uid.pl  -- User and group management on Unix systemsShow source
unicode.pl  -- Unicode string handlingShow source
unicode_map/3Perform unicode normalization operations.Source
unicode_nfc/2Characters are decomposed and then recomposed by canonical equivalence.Source
unicode_nfd/2Characters are decomposed by canonical equivalence.Source
unicode_nfkc/2Characters are decomposed by compatibility equivalence, then recomposed by canonical equivalence.Source
unicode_nfkd/2Characters are decomposed by compatibility equivalence.Source
unicode_property/2True if Property is defined for Char.Source
unix.pl  -- Unix specific operationsShow source
uri.pl  -- Process URIsShow source
iri_normalized/2NormalizedIRI is the normalized form of IRI.Source
iri_normalized/3NormalizedGlobalIRI is the normalized global version of IRI.Source
uri_authority_components/2Break-down the authority component of a URI.Source
uri_authority_data/3Provide access the uri_authority structure.Source
uri_components/2Break a URI into its 5 basic components according to the RFC-3986 regular expression:.Source
uri_data/3Provide access the uri_component structure.Source
uri_data/4NewComponents is the same as Components with Field set to Data.Source
uri_encoded/3Encoded is the URI encoding for Value.Source
uri_file_name/2Convert between a URI and a local file_name.Source
uri_iri/2Convert between a URI, encoded in US-ASCII and an IRI.Source
uri_is_global/1True if URI has a scheme.Source
uri_normalized/2NormalizedURI is the normalized form of URI.Source
uri_normalized/3NormalizedGlobalURI is the normalized global version of URI.Source
uri_normalized_iri/2As uri_normalized/2, but percent-encoding is translated into IRI Unicode characters.Source
uri_normalized_iri/3NormalizedGlobalIRI is the normalized global IRI of URI.Source
uri_query_components/2Perform encoding and decoding of an URI query string.Source
uri_resolve/3Resolve a possibly local URI relative to Base.Source
url.pl  -- Analysing and constructing URLShow source
utf8.pl  -- UTF-8 encoding/decoding on lists of character codes.Show source
utf8_codes/3DCG translating between a Unicode code-list and its UTF-8 encoded byte-string.Source
uuid.pl  -- Universally Unique Identifier (UUID) LibraryShow source
varnumbers.pl  -- Utilities for numbered termsShow source
max_var_number/3True when Max is the max of Start and the highest numbered $VAR(N) term.Source
numbervars/1Number variables in Term using $VAR(N).Source
varnumbers/2Inverse of numbervars/1.Source
varnumbers/3Inverse of numbervars/3.Source
varnumbers_names/3If 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.Source
when.pl  -- Conditional coroutiningShow source
when/2Execute Goal when Condition is satisfied.Source
win_menu.pl  -- Console window menuShow source
writef.pl  -- Old-style formatted writeShow source
swritef/2Use writef/1 or writef/2 and write the result to a string.Source
swritef/3Use writef/1 or writef/2 and write the result to a string.Source
writef/1Formatted write to the current_output.Source
writef/2Formatted write to the current_output.Source
www_browser.pl  -- Open a URL in the users browserShow source
expand_url_path/2Expand URL specifications similar to absolute_file_name/3.Source
known_browser/2True if browser FileBaseName has a remote protocol compatible to Compatible.Source
www_open_url/1Open URL in running version of the users' browser or start a new browser.Source
xmldsig.pl  -- XML Digital signatureShow source
xpath.pl  -- Select nodes in an XML DOMShow source
xpath/3Match an element in a DOM structure.Source
xpath_chk/3Semi-deterministic version of xpath/3.Source
xsdp_types.pl  -- XML-Schema primitive typesShow source
yall.pl  -- Lambda expressionsShow source
//2Shorthand for Free/[]>>Lambda.Source
//3Shorthand for Free/[]>>Lambda.Source
//4Shorthand for Free/[]>>Lambda.Source
//5Shorthand for Free/[]>>Lambda.Source
//6Shorthand for Free/[]>>Lambda.Source
//7Shorthand for Free/[]>>Lambda.Source
//8Shorthand for Free/[]>>Lambda.Source
//9Shorthand for Free/[]>>Lambda.Source
>>/2Calls a copy of Lambda.Source
>>/3Calls a copy of Lambda.Source
>>/4Calls a copy of Lambda.Source
>>/5Calls a copy of Lambda.Source
>>/6Calls a copy of Lambda.Source
>>/7Calls a copy of Lambda.Source
>>/8Calls a copy of Lambda.Source
>>/9Calls a copy of Lambda.Source
is_lambda/1True if Term is a valid Lambda expression.Source
lambda_calls/2Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N.Source
lambda_calls/3Goal is the goal called if call/N is applied to LambdaExpression, where ExtraArgs are the additional arguments to call/N.Source
yaml.pl  -- Process YAML dataShow source
tagged/3Hook that allows convering !!tag values to be decoded or encoded.Source
yaml_read/2Parse Input to a YALM DOM.Source
yaml_write/2Emit a YAML DOM object as a serialized YAML document to the stream Out.Source
yaml_write/3Emit a YAML DOM object as a serialized YAML document to the stream Out.Source
zlib.pl  -- Zlib wrapper for SWI-PrologShow source
encoding_filter/3Act as plugin for library(http/http_open) for processing content with Content-encoding: gzip.Source
gzopen/3Open a file compatible with the gzip program.Source
gzopen/4Open a file compatible with the gzip program.Source