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.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.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.pl  -- Character code classificationShow source
date.pl  -- Process dates and timesShow 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.pl  -- Dict utilitiesShow source
dif.plShow source
dif/2Constraint that expresses that Term1 and Term2 never become identical (==/2).Source
edinburgh.pl  -- Some traditional Edinburgh predicatesShow source
edit.plShow 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
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
fastrw.plShow source
fast_read/1The next term is read from current standard input and is unified with Term.Source
fast_write/1Output Term in a way that fast_read/1 and fast_read/2 will be able to read it back.Source
fast_write_to_string/3Perform a fast-write to the difference-slist String\Tail.Source
files.plShow 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.pl  -- Incremental dynamic predicate modificationShow source
intercept.pl  -- Intercept and signal interfaceShow 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.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.plShow source
argv_options/3Parse command line arguments.Source
argv_options/4As argv_options/3 in guided mode, Currently this version allows parsing argument options throwing an exception rather than calling halt/1 by passing an empty list to ParseOptions.Source
argv_usage/1Use print_message/2 to print a usage message at Level.Source
cli_debug_opt_help/2Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments.Source
cli_debug_opt_meta/2Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments.Source
cli_debug_opt_type/3Implements opt_type/3, opt_help/2 and opt_meta/2 for debug arguments.Source
cli_enable_development_system/0Re-enable the development environment.Source
cli_parse_debug_options/2Parse certain commandline options for debugging and development purposes.Source
main/0Call main/1 using the passed command-line arguments.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.pl  -- Manage operatorsShow 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.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.plShow source
print_term/2Pretty print a Prolog term.Source
predicate_options.plShow 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
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.plShow source
breakpoint_property/2True when Property is a property of the breakpoint Id.Source
delete_breakpoint/1Delete breakpoint with given Id.Source
set_breakpoint/4Put a breakpoint at the indicated source-location.Source
set_breakpoint/5Put a breakpoint at the indicated source-location.Source
set_breakpoint_condition/2Set a condition for of the breakpoint with given Id.Source
prolog_clause.plShow 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.plShow 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
subterm_pos/5True when SubTerm is a sub term of Term, compared using Cmp, TermPosition describes the term layout of Term and SubTermPos describes the term layout of SubTerm.Source
prolog_colour.pl  -- Prolog syntax colouring support.Show 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
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.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.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_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
readutil.pl  -- Read utilitiesShow source
record.pl  -- Access compound arguments by nameShow source
sandbox.plShow source
settings.pl  -- Setting managementShow 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.plShow 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
statistics.pl  -- Get information about resource usageShow 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
thread_pool.pl  -- Resource bounded thread managementShow source
threadutil.pl  -- Interactive thread utilitiesShow source
tty.pl  -- Terminal operationsShow 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.pl  -- Well Founded Semantics interfaceShow 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.pl  -- Open a URL in the users browserShow 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.pl  -- Access resource ZIP archivesShow source