library

Prolog files

aggregate.pl  -- Aggregation operators on backtrackable predicatesShow source
ansi_term.pl  -- Print decorated text to ANSI consolesShow source
apply.pl  -- Apply predicates on a listShow source
apply_macros.pl  -- Goal expansion rules to avoid meta-callingShow source
arithmetic.pl  -- Extensible arithmeticShow source
assoc.pl  -- Binary associationsShow source
atom.pl  -- Operations on atomsShow 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.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.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
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
fastrw.pl  -- Fast reading and writing of termsShow source
gensym.pl  -- Generate unique symbolsShow source
git.pl  -- Run GIT commandsShow source
heaps.pl  -- heaps/priority queuesShow 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.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
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
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.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
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_colour.pl  -- Prolog syntax colouring support.Show source
prolog_coverage.plShow source
cov_load_data/2Reload coverage data from File.Source
cov_property/1True when coverage analysis satisfies Property.Source
cov_reset/0Discard all collected coverage data.Source
cov_save_data/2Save the coverage information to File.Source
coverage/1As call(Goal), collecting coverage information while Goal is running.Source
coverage/2Collect and optionally report coverage by Goal.Source
report_hook/2This hook is called after the data collection.Source
show_coverage/1Show collected coverage data.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_pack.pl  -- A package manager for PrologShow 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_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.pl  -- Pure Input from files and streamsShow 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
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
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.pl  -- Resource bounded thread managementShow source
threadutil.pl  -- Interactive thread utilitiesShow source
tty.pl  -- Terminal operationsShow source
ugraphs.pl  -- Graph manipulation libraryShow 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
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.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.