library

Prolog files

aggregate.pl  -- Aggregation operators on backtrackable predicatesShow source
ansi_term.pl  -- Print decorated text to ANSI consolesShow 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.pl  -- Apply predicates on a listShow source
apply_macros.pl  -- Goal expansion rules to avoid meta-callingShow source
apply_macros_sentinel/0Used to detect that library(apply_macros) is loaded into the current context explicitly.Source
expand_phrase/2Provide goal-expansion for PhraseGoal.Source
expand_phrase/4Provide goal-expansion for PhraseGoal.Source
arithmetic.pl  -- Extensible arithmeticShow source
assoc.pl  -- Binary associationsShow source
atom.pl  -- Operations on atomsShow source
backcomp.pl  -- Backward compatibilityShow source
base32.pl  -- Base32 encoding and decodingShow source
base64.pl  -- Base64 encoding and decodingShow source
broadcast.pl  -- Event serviceShow 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.plShow 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
debug.pl  -- Print debug messages and test assertionsShow source
dialect.pl  -- Support multiple Prolog dialectsShow source
dicts.pl  -- Dict utilitiesShow 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
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.pl  -- Generate unique symbolsShow source
git.pl  -- Run GIT commandsShow 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.pl  -- Text based manualShow 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
lazy_lists.pl  -- Lazy list handlingShow source
listing.pl  -- List programs and pretty print clausesShow source
lists.plShow source
append/2Concatenate a list of lists.Source
append/3List1AndList2 is the concatenation of List1 and List2.Source
clumped/2Pairs is a list of Item-Count pairs that represents the run length encoding of Items.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
max_member/3True when Max is the largest member according to Pred, which must be a 2-argument callable that behaves like (@=<)/2.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
min_member/3True when Min is the smallest member according to Pred, which must be a 2-argument callable that behaves like (@=<)/2.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 position.Source
selectchk/3Semi-deterministic removal of first element in List that unifies with Elem.Source
selectchk/4Semi-deterministic version of select/4.Source
subseq/3Is true when SubList contains a subset of the elements of List in the same order and Complement contains all elements of List not in SubList, also in the order they appear in List.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
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
modules.pl  -- Module utility predicatesShow source
nb_set.pl  -- Non-backtrackable setsShow 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.pl  -- Ordered set manipulationShow source
oset.pl  -- Ordered set manipulationShow source
pairs.pl  -- Operations on key-value listsShow source
persistency.pl  -- Provide persistent dynamic predicatesShow source
pio.pl  -- Pure I/OShow source
portray_text.plShow source
portray_text/1Switch portraying on or off.Source
set_portray_text/2Set options for portraying.Source
set_portray_text/3Set options for portraying.Source
pprint.pl  -- Pretty Print Prolog termsShow source
predicate_options.pl  -- Access and analyse predicate optionsShow source
prolog_autoload.pl  -- Autoload all dependenciesShow 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.pl  -- Utilities for reasoning about codeShow source
prolog_codewalk.pl  -- Prolog code walkerShow source
prolog_colour.pl  -- Prolog syntax colouring support.Show source
prolog_config.plShow source
prolog_config/2Get information on the configuration of the current Prolog system.Source
prolog_dump_runtime_variables/0Dump the current configuration in shell format.Source
prolog_coverage.pl  -- Coverage analysis toolShow source
prolog_debug.pl  -- User level debugging toolsShow source
prolog_format.pl  -- Analyse format specificationsShow 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.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
prolog_profile.pl  -- Execution profilerShow source
prolog_source.plShow 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_file_directives/3True when Directives is a list of directives that appear in the source file File.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
valid_term_position/2Check that a Term has an appropriate TermPos layout.Source
prolog_stack.pl  -- Examine the Prolog stackShow source
prolog_trace.pl  -- Print access to predicatesShow source
prolog_versions.pl  -- Demand specific (Prolog) versionsShow 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.pl  -- Wrapping predicatesShow 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.pl  -- Pure Input from files and streamsShow 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.pl  -- Access compound arguments by nameShow 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.pl  -- Sandboxed Prolog codeShow 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.pl  -- Utility library for loading foreign objects (DLLs, shared objects)Show source
solution_sequences.pl  -- Modify solution sequencesShow source
sort.plShow source
statistics.pl  -- Get information about resource usageShow source
streams.pl  -- Manage Prolog streamsShow source
strings.pl  -- String utilitiesShow source
system.pl  -- System utilitiesShow source
tables.pl  -- XSB interface to tablesShow source
terms.pl  -- Term manipulationShow source
thread.pl  -- High level thread primitivesShow 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.pl  -- Terminal operationsShow source
ugraphs.pl  -- Graph manipulation libraryShow source
url.plShow source
file_name_to_url/2Translate between a filename and a file:// URL.Source
global_url/3Translate a possibly relative URL into an absolute one.Source
http_location/2Construct or analyze an HTTP location.Source
is_absolute_url/1True if URL is an absolute URL.Source
parse_url/2Construct or analyse a URL.Source
parse_url/3Similar to parse_url/2 for relative URLs.Source
parse_url_search/2Construct or analyze an HTTP search specification.Source
set_url_encoding/2Query and set the encoding for URLs.Source
url_iri/2Convert between a URL, encoding in US-ASCII and an IRI.Source
www_form_encode/2En/decode to/from application/x-www-form-encoded.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.pl  -- Old-style formatted writeShow source
www_browser.pl  -- Open a URL in the users browserShow source
yall.pl  -- Lambda expressionsShow source
zip.pl  -- Access resource ZIP archivesShow source