library

Prolog files

aggregate.pl  -- Aggregation operators on backtrackable predicatesShow source
ansi_term.plShow source
ansi_format/3Format text with ANSI attributes.Source
ansi_get_color/2Obtain the RGB color for an ANSI color parameter.Source
ansi_hyperlink/2Create a hyperlink for a terminal emulator.Source
ansi_hyperlink/3Create a hyperlink for a terminal emulator.Source
tty_url_hook/2Hook for location_url/2.Source
console_color/2Hook that allows for mapping abstract terms to concrete ANSI attributes.
message_line_element/2Hook implementation that deals with ansi(+Attr, +Fmt, +Args) in message specifications.Source
apply.plShow 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 an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal.Source
foldl/5Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal.Source
foldl/6Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal.Source
foldl/7Fold an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("fold-left"), using columns of m list elements as arguments for Goal.Source
include/3Filter elements for which Goal succeeds.Source
maplist/2True if Goal is successfully applied on all matching elements of the list.Source
maplist/3True if Goal is successfully applied on all matching elements of the list.Source
maplist/4True if Goal is successfully applied on all matching elements of the list.Source
maplist/5True if Goal is successfully applied on all matching elements of the list.Source
partition/4Filter elements of List according to Pred.Source
partition/5Filter List according to Pred in three sets.Source
scanl/4Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal.Source
scanl/5Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal.Source
scanl/6Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal.Source
scanl/7Scan an ensemble of m (0 <= m <= 4) lists of length n head-to-tail ("scan-left"), using columns of m list elements as arguments for Goal.Source
apply_macros.pl  -- Goal expansion rules to avoid meta-callingShow source
arithmetic.pl  -- Extensible arithmeticShow source
assoc.pl  -- Binary associationsShow source
atom.plShow source
identifier_parts/2Parts is a list of atoms that make up Identifier.Source
join_identifier_parts/3Join parts of an identifier according to Style.Source
restyle_identifier/3Restyle an identifier by extracting the alnum substrings and joining them together according to Style.Source
backcomp.plShow 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
$sig_atomic/1Execute Goal without processing signals.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
call_cleanup/3Call Cleanup with an indication of the reason unified to Catcher.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 Separator 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_history/6Source
read_pending_input/3Source
read_variables/2Source
read_variables/3Source
set_base_module/1Set the default module from which 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 which call(Goal, Elem) succeeds.Source
substring/4Predecessor of sub_string using 1-based Offset.Source
sumlist/2True when Sum is the list of all numbers in List.Source
thread_at_exit/1Register Goal to be called when the calling thread exits.Source
trie_insert_new/3Source
unlock_predicate/2Source
write_ln/1Source
base32.pl  -- Base32 encoding and decodingShow source
base64.plShow source
base64/2Equivalent to base64_encoded/3 using the options as(atom) and encoding(iso_latin_1).Source
base64/3Encode/decode list of character codes using base64.Source
base64_encoded/3General the base64 encoding and decoding.Source
base64_encoded/4Source
base64url/2Translates between plaintext and base64url encoded atom or string.Source
base64url/3Encode/decode list of character codes using Base64URL.Source
broadcast.plShow source
broadcast/1Broadcast given event.Source
broadcast_request/1Broadcast given event till accepted.Source
listen/2Open a channel for listening for events of the given `Templ'.Source
listen/3Open a channel for listening for events of the given `Templ'.Source
listening/3returns currently open channels.Source
unlisten/1Destroy a channel.Source
unlisten/2Destroy a channel.Source
unlisten/3Destroy a channel.Source
charsio.pl  -- I/O on Lists of Character CodesShow source
check.pl  -- Consistency checkingShow source
codesio.pl  -- I/O on Lists of Character CodesShow source
coinduction.pl  -- Co-Logic ProgrammingShow source
csv.pl  -- Process CSV (Comma-Separated Values) dataShow 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.plShow 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.plShow source
assertion_failed/2This hook is called if the Goal of assertion/1 fails.
debug_print_hook/3Hook called by debug/3.Source
assertion/1Acts similar to C assert() macro.Source
debug/1Add/remove a topic from being printed.Source
debug/3Format a message if debug topic is enabled.Source
debug_message_context/1Specify additional context for debug messages.Source
debugging/1Examine debug topics.Source
debugging/2Examine debug topics.Source
list_debug_topics/0List currently known topics for debug/3 and their setting.Source
list_debug_topics/1List currently known topics for debug/3 and their setting.Source
nodebug/1Add/remove a topic from being printed.Source
dialect.pl  -- Support multiple Prolog dialectsShow source
dicts.plShow 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
dict_size/2True when KeyCount is the number of keys 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
mapdict/2True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts.Source
mapdict/3True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts.Source
mapdict/4True when all dicts have the same set of keys and call(Goal, Key, V1, ...) is true for all keys in the dicts.Source
dif.pl  -- The dif/2 constraintShow source
edinburgh.plShow source
debug/0Switch on/off debug mode.Source
display/1Write a term, ignoring operators and special syntax constructs such as brace terms ({a}) and lists ([a,b,c]).Source
display/2Write a term, ignoring operators and special syntax constructs such as brace terms ({a}) and lists ([a,b,c]).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
error.plShow source
current_encoding/1True if Name is the name of a supported encoding.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/2Culprit is of the correct type and correct domain, but there is no existing (external) resource of type ObjectType that is represented by it.Source
existence_error/3Culprit is of the correct type and correct domain, but there is no existing (external) resource of type ObjectType that is represented by it in the provided set.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 Operation on (whatever is represented by) Culprit that is of the given PermissionType (in fact, the ISO Standard is confusing and vague about these terms' meaning).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 Culprit is not of the expected ValidType.Source
uninstantiation_error/1An argument is over-instantiated.Source
exceptions.plShow source
catch/4As catch/3, only catching exceptions for which exception(ErrorType,Ball) is true.Source
error_term/2Describe the formal part of error(Formal,ImplDefined) exceptions.Source
exception/2If Ball is unbound, adds a delayed goal that tests the error belongs to Type when Ball is instantiated (by catch/3).Source
exception_term/2Describe exceptions that are not error(Formal, _) terms.Source
exception_type/2Declare all exceptions subsumed by Term to be an exception of Type.Source
explain.plShow source
explain/1Give an explanation on Term.Source
explain/2True when Explanation is an explanation of Term.Source
fastrw.pl  -- Fast reading and writing of 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
gensym.plShow source
gensym/2Generate <Base>1, <Base>2, etc atoms on each subsequent call.Source
reset_gensym/0Reset gensym for all registered keys.Source
reset_gensym/1Restart generation of identifiers from Base at <Base>1.Source
git.plShow 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 current branch of a 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/2True when Tags is a list of git tags defined on the repository.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
is_git_hash/1True when Atom represents a GIT hash, i.e., a 40 digit hexadecimal string.Source
hashtable.plShow source
ht_del/3Delete Key-Value from HT.Source
ht_gen/3True when Key-Value is in HT.Source
ht_get/3True when Key is in HT and associated with Value.Source
ht_is_hashtable/1True when HT is a hash table.Source
ht_keys/2True when Keys is an ordered set of all keys in HT.Source
ht_new/1Create a new hash table.Source
ht_pairs/2True when Pairs and HT represent the same association.Source
ht_put/3Add a Key-Value to HT.Source
ht_put/5Add Key-Value to HT.Source
ht_put_new/3As ht_put/3, but fails if Key is already in HT instead of updating the associated value.Source
ht_size/2True when Size is the number of key-value pairs in HT.Source
ht_update/4True when HT holds Key-Old before and Key-New after this call.Source
heaps.pl  -- heaps/priority queuesShow source
help.plShow source
apropos/1Print objects from the manual whose name or summary match with Query.Source
help/0Show help for What.Source
help/1Show help for What.Source
help_text/2When Predicate is a term of the form Name/Arity for which documentation exists, HelpText is the documentation in textual format (parsed from the HTML help).Source
show_html_hook/1Hook called to display the extracted HTML document.Source
increval.plShow source
incr_directly_depends/2True if Goal1 depends on Goal2 in the IDG.Source
incr_invalid_subgoals/1List is a sorted list (set) of the incremental subgoals that are currently invalid.Source
incr_invalidate_call/1This is the XSB name, but the manual says incr_invalidate_calls/1 and the comment with the code suggests this is misnamed.Source
incr_invalidate_calls/1Invalidate all tables for subgoals of Goal as well as tables that are affected by these.Source
incr_is_invalid/1True when Subgoal's table is marked as invalid.Source
incr_propagate_calls/1Activate the monotonic answer propagation similarly to when a new fact is asserted for a monotonic dynamic predicate.Source
incr_table_update/0Updated all invalid tables.Source
incr_trans_depends/2True for each pair in the transitive closure of incr_directly_depends(G1, G2).Source
is_incremental_subgoal/1This predicate non-deterministically unifies Subgoal with incrementally tabled subgoals that are currently table entries.Source
intercept.plShow source
intercept/3Run Goal as call/1.Source
intercept/4Similar to intercept/3, but the copy of Handler is called as call(Copy,Arg), which allows passing large context arguments or arguments subject to unification or destructive assignment.Source
intercept_all/4True when List contains all instances of Template that have been sent using send_signal/1 where the argument unifies with Ball.Source
nb_intercept_all/4As intercept_all/4, but backtracing inside Goal does not reset List.Source
send_signal/1If this predicate is called from a sub-goal of intercept/3, execute the associated Handler of the intercept/3 environment.Source
send_silent_signal/1As send_signal/1, but succeed silently if there is no matching intercept environment.Source
iostream.pl  -- Utilities to deal with streamsShow source
close_any/1Execute the Close closure returned by open_any/5.Source
open_any/5Establish a stream from Specification that should be closed using Close, which can either be called or passed to close_any/1.Source
lazy_lists.plShow 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
lists.pl  -- List ManipulationShow source
macros.plShow source
expand_macros/5Perform macro expansion on TermIn with layout PosIn to produce TermOut with layout PosOut.Source
include_macros/3Include macros from another module.Source
macro_position/1True when Position is the position of the macro.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_reload_file/1Reload file into the proper module.Source
modules.plShow source
current_temporary_module/1True when we are executing in the given temporary module context.Source
in_temporary_module/3Run Goal on temporary loaded sources and discard the module and loaded predicates after completion.Source
nb_set.plShow source
add_nb_set/2Insert Key into the set.Source
add_nb_set/3Insert Key into the set.Source
empty_nb_set/1Create an empty non-backtrackable set.Source
gen_nb_set/2Enumerate the members of a set in the standard order of terms.Source
nb_set_to_list/2Get the elements of a an nb_set.Source
size_nb_set/2Unify Size with the number of elements in the set.Source
occurs.pl  -- Finding and counting sub-termsShow source
operators.plShow 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
optparse.pl  -- command line parsingShow source
ordsets.plShow 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.plShow 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/3Union is the union of OSet1 and OSet2.Source
pairs.plShow source
group_pairs_by_key/2Group values with equivalent (==/2) consecutive keys.Source
map_list_to_pairs/3Create a Key-Value list by mapping each element of List.Source
pairs_keys/2Remove the values from a list of Key-Value pairs.Source
pairs_keys_values/3True if Keys holds the keys of Pairs and Values the values.Source
pairs_values/2Remove the keys from a list of Key-Value pairs.Source
transpose_pairs/2Swap Key-Value to Value-Key.Source
persistency.pl  -- Provide persistent dynamic predicatesShow source
pio.plShow source
portray_text.pl  -- Portray textShow source
pprint.pl  -- Pretty Print Prolog termsShow source
predicate_options.pl  -- Access and analyse predicate optionsShow source
prolog_autoload.plShow source
autoload_all/0Force all necessary autoloading to be done now.Source
autoload_all/1Force all necessary autoloading to be done now.Source
prolog_breakpoints.pl  -- Manage Prolog break-pointsShow source
prolog_clause.plShow source
clause_info/4Fetches source information for the given clause.Source
clause_info/5Fetches 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
make_varnames/5Create a Term varnames(...) where each argument contains the name of the variable at that offset.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
unify_term/2Unify the two terms, where T2 is created by writing the term and reading it back in, but be aware that rounding problems may cause floating point numbers not to unify.Source
prolog_code.plShow source
body_term_calls/2True when BodyTerm calls Goal.Source
comma_list/2True if CommaList is a nested term over the ','/2 (';'/2) functor and List is a list expressing the elements of the conjunction.Source
extend_goal/3Extend the possibly qualified Goal0 with additional arguments from Extra.Source
head_name_arity/3Similar to functor/3, but deals with SWI-Prolog's zero-argument callable terms and avoids creating a non-callable term if Name is not an atom and Arity is zero.Source
is_control_goal/1True if Goal is a compiled Prolog control structure.Source
is_predicate_indicator/1True when Term is a predicate indicator.Source
mkconj/3Create a conjunction or disjunction from two terms.Source
mkdisj/3Create a conjunction or disjunction from two terms.Source
most_general_goal/2General is the most general version of Goal.Source
pi_head/2Translate between a PredicateIndicator and a Goal term.Source
predicate_label/2Create a human-readable label for the given predicate indicator.Source
predicate_sort_key/2Key is the (module-free) name of the predicate for sorting purposes.Source
semicolon_list/2True if CommaList is a nested term over the ','/2 (';'/2) functor and List is a list expressing the elements of the conjunction.Source
prolog_codewalk.pl  -- Prolog code walkerShow source
prolog_colour.plShow 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_stream/4Determine 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_config.pl  -- Provide configuration informationShow source
prolog_coverage.pl  -- Coverage analysis toolShow source
prolog_debug.pl  -- User level debugging toolsShow source
debug_control_hook/1Allow user-hooks in the Prolog debugger interaction.
debugging/0Report current status of the debugger.Source
debugging_hook/1Multifile hook that is called as forall(debugging_hook(DebugMode), true) and that may be used to extend the information printed from other debugging libraries.Source
exception_hook/5Trap exceptions and consider whether or not to start the tracer.Source
nospy/1Set/clear spy-points.Source
nospyall/0Set/clear spy-points.Source
notrap/1Install a trap on error(Formal, Context) exceptions that unify.Source
spy/1Set/clear spy-points.Source
trap/1Install a trap on error(Formal, Context) exceptions that unify.Source
trap_alias/2Define short hands for commonly used exceptions.Source
prolog_format.pl  -- Analyse format specificationsShow source
prolog_history.plShow source
prolog_history/1Execute Action on the history.Source
prolog_jiti.plShow source
jiti_list/0List the JITI (Just In Time Indexes) of selected predicates.Source
jiti_list/1List the JITI (Just In Time Indexes) of selected predicates.Source
jiti_suggest_modes/0Propose modes for the predicates referenced by Spec.Source
jiti_suggest_modes/1Propose modes for the predicates referenced by Spec.Source
prolog_metainference.plShow 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.plShow source
pack_info/1Print more detailed information about Pack.Source
pack_install/1Install one or more packs from SpecOrList.Source
pack_install/2Install one or more packs from SpecOrList.Source
pack_install_local/3Install a number of packages in a local directory.Source
pack_list/1Query package server and installed packages and display results.Source
pack_list/2Query package server and installed packages and display results.Source
pack_list_installed/0List currently installed packages and report possible dependency issues.Source
pack_property/2True when Property is a property of an installed Pack.Source
pack_publish/2Publish a package.Source
pack_rebuild/0Rebuild possible foreign components of Pack.Source
pack_rebuild/1Rebuild possible foreign components of Pack.Source
pack_remove/1Remove the indicated package.Source
pack_remove/2Remove the indicated package.Source
pack_search/1Query package server and installed packages and display results.Source
pack_upgrade/1Upgrade Pack.Source
pack_url_file/2True if File is a unique id for the referenced pack and version.Source
prolog_profile.pl  -- Execution profilerShow source
prolog_source.pl  -- Examine Prolog source-filesShow source
prolog_stack.plShow 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_last_choicepoint/0Print details on the last open choice point.Source
print_last_choicepoint/2Source
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_trace.plShow source
list_tracing/0List predicates we are currently tracing.Source
notraceall/0Remove all trace points.Source
trace/1Print passes through ports of specified predicates.Source
trace/2Print passes through ports of specified predicates.Source
tracing/2True if Spec is traced using Ports.Source
prolog_versions.plShow source
cmp_versions/3Compare to versions.Source
require_prolog_version/2Claim that the running Prolog version is at least version Required and provides the requested Features.Source
require_version/3Require Component to have version CmpRequired, while Component is know to have version Available.Source
prolog_wrap.plShow source
current_predicate_wrapper/4True if Head is wrapped with Body.Source
unwrap_predicate/2Remove the outermost wrapper whose name unifies with Name.
wrap_predicate/4Wrap the predicate referenced by Head using Body.Source
prolog_xref.pl  -- Prolog cross-referencer data collectionShow source
pure_input.plShow source
lazy_list_character_count/3True when CharCount is the current character count in the Lazy list.Source
lazy_list_location/3Determine current (error) location in a lazy list.Source
phrase_from_file/2Process the content of File using the DCG rule Grammar.Source
phrase_from_file/3As phrase_from_file/2, providing additional Options.Source
phrase_from_stream/2Run Grammer against the character codes on Stream.Source
stream_to_lazy_list/2Create a lazy list representing the character codes in Stream.Source
syntax_error/3Throw the syntax error Error at the current location of the input.Source
qsave.plShow source
arch_shlib/3This is a user defined hook called by qsave_program/2.Source
qsave_program/1Make a saved state in file `File'.Source
qsave_program/2Make a saved state in file `File'.Source
qsave_toplevel/0Called to handle `-c file` compilaton.Source
quasi_quotations.pl  -- Define Quasi Quotation syntaxShow source
quintus.pl  -- Quintus compatibilityShow source
random.pl  -- Random numbersShow source
rbtrees.pl  -- Red black treesShow source
readln.plShow source
readutil.pl  -- Read utilitiesShow source
record.plShow 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
rwlocks.plShow source
with_rwlock/3Run Goal, synchronized with LockId in ModeSpec.Source
with_rwlock/4Run Goal, synchronized with LockId in ModeSpec.Source
sandbox.plShow 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
format_calls/3Find ~@ calls from Format and Args.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
safe_prolog_flag/2True if it is safe to set the flag Flag to Value.Source
settings.plShow source
convert_setting_text/3Converts from textual form to Prolog Value.Source
current_setting/1True if Setting is a currently defined setting.Source
env/2Evaluate environment variables on behalf of arithmetic expressions.Source
env/3Evaluate environment variables on behalf of arithmetic expressions.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
shell.plShow source
cd/0Change working directory.Source
cd/1Change working directory.Source
dirs/0Manage the directory stack:.Source
file_style/2True when File should be listed as a terminal hyperlink.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.plShow source
compat_arch/2User definable hook to establish if Arch1 is compatible with Arch2 when running a shared object.Source
current_foreign_library/2Query currently loaded shared libraries.Source
load_foreign_library/1Load a shared object or DLL.Source
load_foreign_library/2Load a shared object or DLL.Source
reload_foreign_libraries/0Reload all foreign libraries loaded (after restore of a state created using qsave_program/2.Source
unload_foreign_library/1Unload a shared object or DLL.Source
unload_foreign_library/2Unload a shared object or DLL.Source
use_foreign_library/1Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now.Source
use_foreign_library/2Load and install a foreign library as load_foreign_library/1,2 and register the installation using initialization/2 with the option now.Source
solution_sequences.pl  -- Modify solution sequencesShow source
sort.plShow source
statistics.plShow source
call_time/2Call Goal as call/1, unifying Time with a dict that provides information on the resource usage.Source
call_time/3Call Goal as call/1, unifying Time with a dict that provides information on the resource usage.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
streams.pl  -- Manage Prolog streamsShow source
with_output_to/3Run Goal and once/1 while capturing all output to all streams (current_output, user_output and user_error) in the string Output.Source
strings.plShow source
dedent_lines/3Remove shared indentation for all lines in a string.Source
indent_lines/3Add Prefix to the beginning of lines in In.Source
indent_lines/4Similar to indent_lines/3, but only adds Prefix to lines for which call(Filter, Line) succeeds.Source
interpolate_string/4Establish a string from a template by replacing patterns.Source
string/4Implements the quasi quotation syntax string.Source
string_lines/2True when String represents Lines.Source
system.pl  -- System utilitiesShow source
tables.pl  -- XSB interface to tablesShow source
terms.pl  -- Term manipulationShow source
thread.plShow source
call_in_thread/2Run Goal as an interrupt in the context of Thread.Source
concurrent/3Run Goals in parallel using N threads.Source
concurrent_and/2Concurrent version of (Generator,Test).Source
concurrent_and/3Concurrent version of (Generator,Test).Source
concurrent_forall/2True when Action is true for all solutions of Generate.Source
concurrent_forall/3True when Action is true for all solutions of Generate.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.plShow 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
worker_exitted/3It is possible that '__thread_pool_manager' no longer exists while closing down the process because the manager was killed before the worker.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
join_threads/0Join all terminated threads.Source
tbacktrace/1Print a backtrace for Thread to the stream user_error of the calling thread.Source
tbacktrace/2Print a backtrace for Thread to the stream user_error of the calling thread.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
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
with_stopped_threads/2Stop all threads except the caller while running once(Goal).Source
tty.plShow source
menu/3Show a menu.Source
tty_clear/0Clear the display.Source
tty_flash/0Give visual signal if possible, otherwise beep.Source
ugraphs.plShow source
add_edges/3Unify NewGraph with a new graph obtained by adding the list of Edges to Graph.Source
add_vertices/3Unify NewGraph with a new graph obtained by adding the list of Vertices to Graph.Source
complement/2UGraphOut is a ugraph with an edge between all vertices that are not connected in UGraphIn and all edges from UGraphIn removed.Source
compose/3Compose NewGraph by connecting the drains of LeftGraph to the sources of RightGraph.Source
connect_ugraph/3Adds Start as an additional vertex that is connected to all vertices in UGraphIn.Source
del_edges/3Unify NewGraph with a new graph obtained by removing the list of Edges from Graph.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/2Unify Edges with all edges appearing in Graph.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
reachable/3True when Vertices is an ordered set of vertices reachable in UGraph, including Vertex.Source
top_sort/2Sort vertices topologically.Source
transitive_closure/2Generate the graph Closure as the transitive closure of 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_layers/2Sort vertices topologically.Source
ugraph_union/3NewGraph is the union of Graph1 and Graph2.Source
vertices/2Unify Vertices with all vertices appearing in Graph.Source
vertices_edges_to_ugraph/3Create a UGraph from Vertices and Edges.Source
url.pl  -- Analysing and constructing URLShow source
utf8.pl  -- UTF-8 encoding/decoding on lists of character codes.Show source
varnumbers.pl  -- Utilities for numbered termsShow source
wfs.plShow source
answer_residual/2True when Goal resolves to a tabled predicate and Residual is the residual goal associated with an answer for Goal.Source
call_delays/2True when Goal is true with Delays.Source
call_residual_program/2Call Goal and return the full residual program as a list of Clauses.Source
delays_residual_program/2Given a delay as returned by call_delays/2, produce a set of clauses the represents the complete residual program responsible for these delays, The program contains at least one loop through tnot/1 and is either inconsistent or has multiple models according to the stable model semantics.Source
when.pl  -- Conditional coroutiningShow source
writef.plShow 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.plShow 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
yall.plShow 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
zip.plShow source
with_zipper/2Run Goal while holding ownership over Zipper.Source
zip_close/1Close a zipper.Source
zip_close/2Close a zipper.Source
zip_open/4Create a Zipper, providing access to File.Source
zipper_file_info/3Obtain information about the current zip entry.Source
zipper_goto/2Seek Zipper to a specified entry.
zipper_members/2True when Members is the list of file names in the Zipper.Source
zipper_open_current/3Open the current entry as an input stream.