meta_predicate Declarationlibrary(aggregate)library(assoc)library(atts)library(avl)library(bags)library(between)library(chr)
    library(clpb)
    library(clpfd)
    library([clpq,clpr])
    library(codesio)library(csv)library(comclient)
    library(fdbg)
    library(file_systems)library(gauge)library(heaps)library(is_directives)
    library(jasper)
    library(json)
    library('jsonrpc/jsonrpc_server')
    library('jsonrpc/simple_jsonrpc_server')library(linda/[server,client])
    library(lists)library(lmdb)
    library(logarr)library(mutarray)library(mutdict)library(objects)
    <-/2<</2>>/2class/1  declarationclass_ancestor/2class_method/1  declarationclass_superclass/2class_of/2create/2current_class/1debug_message/0  declarationdefine_method/3descendant_of/2destroy/1direct_message/4end_class/[0,1]  declarationfetch_slot/2inherit/1  declarationinstance_method/1  declarationmessage/4nodebug_message/0  declarationpointer_object/2store_slot/2undefine_method/3uninherit/1  declarationlibrary(odbc)
    library(ordsets)library(pillow)library(plunit)
    library(process)
    library(prologbeans)
    library(queues)library(random)library(rem)library(samsort)library(sets)library(sockets)library(statistics)library(structs)
    library(system)library(tcltk)
    library(terms)library(timeout)library(trees)library(types)library(ugraphs)library(varnumbers)library(wgraphs)library(xml)library(zinc)
    abolish/[1,2]   ISOabort/0absolute_file_name/[2,3]   hookableacyclic_term/1   ISOadd_breakpoint/2   development,/2   ISOappend/3arg/3   ISOask_query/4   hookableassert/[1,2]asserta/[1,2]   ISOassertz/[1,2]   ISOat_end_of_line/[0,1]at_end_of_stream/[0,1]   ISOatom/1   ISOatom_chars/2   ISOatom_codes/2   ISOatom_concat/3   ISOatom_length/2   ISOatomic/1   ISObagof/3   ISObb_delete/2bb_get/2bb_put/2bb_update/3block/1   declarationbreak/0   developmentbreakpoint_expansion/2   hook, developmentbyte_count/2call/[1,2,...,255]   ISOcall_cleanup/2call_residue_vars/2callable/1   ISOcatch/3   ISOchar_code/2   ISOchar_conversion/2   ISOcharacter_count/2clause/[2,3]   ISOclose/[1,2]   ISOcompare/3   ISOcompile/1compound/1   ISOconsult/1copy_term/[2,3]   ISOcoverage_data/1   developmentcreate_mutable/2current_atom/1current_breakpoint/5   developmentcurrent_char_conversion/2   ISOcurrent_input/1   ISOcurrent_key/2current_module/[1,2]current_op/3   ISOcurrent_output/1   ISOcurrent_predicate/[1,2]   ISOcurrent_prolog_flag/2   ISOcurrent_stream/3!/0   ISOdb_reference/1debug/0   developmentdebugger_command_hook/2   hook, developmentdebugging/0   developmentdif/2disable_breakpoints/1   developmentdiscontiguous/1   declaration, ISOdisplay/1do/2dynamic/1   declaration, ISOenable_breakpoints/1   developmentensure_loaded/1   ISO=:=/2   ISOerase/1error_exception/1   hook, developmentexecution_state/[1,2]   development^/2expand_term/2   hookablefail/0   ISOfalse/0   ISOfile_search_path/2   hookfindall/[3,4]   ISOfloat/1   ISOflush_output/[0,1]   ISOforeign/[2,3]   hookforeign_resource/2   hookformat/[2,3]freeze/2frozen/2functor/3   ISOgarbage_collect/0garbage_collect_atoms/0generate_message/3   hookgenerate_message_hook/3   hookget_byte/[1,2]   ISOget_char/[1,2]   ISOget_code/[1,2]   ISOget_mutable/2goal_expansion/5   hookgoal_source_info/3>/2   ISOground/1   ISOhalt/[0,1]   ISOif/3->/2   ISOinclude/1   declaration, ISOinitialization/1   declaration, ISOinstance/2integer/1   ISOis/2   ISOkeysort/2   ISOleash/1   developmentlength/2</2   ISOlibrary_directory/1   hookline_count/2line_position/2listing/[0,1]load_files/[1,2]load_foreign_resource/1   hookablemember/2memberchk/2message_hook/3   hookmeta_predicate/1   declarationmode/1   declarationmodule/[2,3]   declarationmultifile/1   declaration, ISOmutable/1name/2   deprecatednl/[0,1]   ISOnodebug/0   developmentnonmember/2nonvar/1   ISOnospy/1   developmentnospyall/0   development=\=/2   ISO=</2   ISO>=/2   ISO\+/1   ISO\=/2   ISOnotrace/0   developmentnozip/0   developmentnumber/1   ISOnumber_chars/2   ISOnumber_codes/2   ISOnumbervars/3on_exception/3   deprecatedonce/1   ISOop/3   ISOopen/[3,4]   ISOopen_null_stream/1;/2   ISOotherwise/0peek_byte/[1,2]   ISOpeek_char/[1,2]   ISOpeek_code/[1,2]   ISOphrase/[2,3]portray/1   hookportray_clause/[1,2]portray_message/2   hookpredicate_property/2print/[1,2]   hookableprint_coverage/[0,1]   developmentprint_message/2   hookableprint_message_lines/3print_profile/[0,1]   developmentprofile_data/1   developmentprofile_reset/0   developmentprolog_flag/[2,3]prolog_load_context/2prompt/2public/1   declarationput_byte/[1,2]   ISOput_char/[1,2]   ISOput_code/[1,2]   ISOquery_abbreviation/3   hookquery_class/5   hookquery_class_hook/5   hookquery_hook/6   hookquery_input/3   hookquery_input_hook/3   hookquery_map/4   hookquery_map_hook/4   hookraise_exception/1   deprecatedread/[1,2]   ISOread_line/[1,2]read_term/[2,3]   ISOreconsult/1recorda/3recorded/3recordz/3remove_breakpoints/1   developmentrepeat/0   ISOrestore/1retract/1   ISOretractall/1   ISOruntime_entry/1   hooksave_files/2save_modules/2save_predicates/2save_program/[1,2]see/1seeing/1seek/4seen/0set_input/1   ISOset_module/1set_output/1   ISOset_prolog_flag/2   ISOset_stream_position/2   ISOsetof/3   ISOsimple/1skip_byte/[1,2]skip_char/[1,2]skip_code/[1,2]skip_line/[0,1]sort/2   ISOsource_file/[1,2]spy/[1,2]   developmentstatistics/[0,2]stream_code/2stream_position/2stream_position_data/3stream_property/2   ISOsub_atom/5   ISOsubsumes_term/2   ISOtell/1telling/1==/2   ISOterm_expansion/6   hook@>/2   ISO@</2   ISO\==/2   ISO@=</2   ISO@>=/2   ISO?=/2term_variables/2   ISOthrow/1   ISOtold/0trace/0   developmenttrimcore/0true/0   ISO=/2   ISOunify_with_occurs_check/2   ISO=../2   ISOunknown/2   developmentunknown_predicate_handler/3   hookunload_foreign_resource/1   hookableupdate_mutable/2use_module/[1,2,3]var/1   ISOvolatile/1   declarationwhen/2write/[1,2]   ISOwrite_canonical/[1,2]   ISOwrite_term/[2,3]   hookable, ISOwriteq/[1,2]   ISOzip/0   developmentSP_atom_from_string()SP_atom_length()SP_calloc()SP_close_query()SP_compare()SP_cons_functor()SP_cons_functor_array()SP_cons_list()SP_create_stream()SP_cut_query()SP_define_c_predicate()SP_deinitialize()SP_error_message()SP_event()SP_exception_term()SP_expand_file_name()SP_fail()SP_fclose()SP_flush_output()SP_fopen()SP_foreign_stash()   macroSP_fprintf()SP_free()SP_get_address()SP_get_arg()SP_get_atom()SP_get_byte()SP_get_code()SP_get_current_dir()SP_get_dispatch()SP_get_float()SP_get_functor()SP_get_integer()SP_get_integer_bytes()SP_get_list()SP_get_list_codes()SP_get_list_n_bytes()SP_get_list_n_codes()SP_get_number_codes()SP_get_stream_counts()SP_get_stream_user_data()SP_get_string()SP_getenv()SP_initialize()   macroSP_is_atom()SP_is_atomic()SP_is_compound()SP_is_float()SP_is_integer()SP_is_list()SP_is_number()SP_is_variable()SP_load()SP_load_sicstus_run_time()SP_malloc()SP_mutex_lock()SP_mutex_unlock()SP_new_term_ref()SP_next_solution()SP_next_stream()SP_open_query()SP_pred()SP_predicate()SP_printf()SP_put_address()SP_put_atom()SP_put_byte()SP_put_bytes()SP_put_code()SP_put_codes()SP_put_encoded_string()SP_put_float()SP_put_functor()SP_put_integer()SP_put_integer_bytes()SP_put_list()SP_put_list_codes()SP_put_list_n_bytes()SP_put_list_n_codes()SP_put_number_codes()SP_put_string()SP_put_term()SP_put_variable()SP_query()SP_query_cut_fail()SP_raise_exception()SP_read_from_string()SP_realloc()SP_register_atom()SP_restore()SP_set_argv()SP_set_current_dir()SP_set_user_stream_hook()   preinitSP_set_user_stream_post_hook()   preinitSP_signal()SP_strdup()SP_string_from_atom()SP_term_type()SP_unget_byte()SP_unget_code()SP_unify()SP_unregister_atom()SU_initialize()   hookuser_close()user_flush_output()user_read()user_write()sicstus — SICStus Prolog Development Systemmzn-sicstus — Shortcut for MiniZinc with SICStus back-endspfz — FlatZinc Interpreterspdet — Determinacy Checkerspld — SICStus Prolog Application Buildersplfr — SICStus Prolog Foreign Resource Linkersplm — SICStus Prolog License Managerspxref — Cross ReferencerThis manual documents SICStus Prolog 4.9.0, December 2023.
Prolog is a simple but powerful programming language developed at the University of Marseille, as a practical tool for programming in logic. From a user’s point of view the major attraction of the language is ease of programming. Clear, readable, concise programs can be written quickly with few errors.
| • Intro | An Introduction to This Manual | |
| • Acknowledgments | Acknowledgments | |
| • Notation | Notational Conventions | |
| • Glossary | Glossary of Concepts Used | |
| • Run Intro | How to Run Prolog | |
| • Prolog Intro | The Prolog Language | |
| • Debug Intro | Debugging | |
| • Mixing C and Prolog | C-interface | |
| • Interfacing .NET and Java | Using the interfaces for .NET and Java | |
| • Multiple SICStus Runtimes | Multiple SICStus Runtimes in a Process | |
| • Writing Efficient Programs | Writing Efficient Programs | |
| • The Prolog Library | The Prolog Library | |
| • Prolog Reference Pages | Prolog Reference Pages | |
| • C Reference Pages | C Reference Pages | |
| • Command Reference Pages | Command Reference Pages | |
| • References | References | |
| • Predicate Index | An item for each predicate, function, etc | |
| • Keystroke Index | An item for each keystroke | |
| • Book Index | An item for each concept, predicate, method, other |