Python "streams"
Admin User, created Apr 22. 2025
###
# Warranty & Liability
# To the extent permitted by applicable law and unless explicitly
# otherwise agreed upon, XLOG Technologies AG makes no warranties
# regarding the provided information. XLOG Technologies AG assumes
# no liability that any problems might be solved with the information
# provided by XLOG Technologies AG.
#
# Rights & License
# All industrial property rights regarding the information - copyright
# and patent rights in particular - are the sole property of XLOG
# Technologies AG. If the company was not the originator of some
# excerpts, XLOG Technologies AG has at least obtained the right to
# reproduce, change and translate the information.
#
# Reproduction is restricted to the whole unaltered document. Reproduction
# of the information is only allowed for non-commercial uses. Selling,
# giving away or letting of the execution of the library is prohibited.
# The library can be distributed as part of your applications and libraries
# for execution provided this comment remains unchanged.
#
# Restrictions
# Only to be distributed with programs that add significant and primary
# functionality to the library. Not to be distributed with additional
# software intended to replace any components of the library.
#
# Trademarks
# Jekejeke is a registered trademark of XLOG Technologies AG.
##
from nova.store import (Clause, add, Compound,
Cache, make_defined, Place, Skeleton)
from nova.machine import (Goal, run)
import nova.special as special
import nova.runtime as runtime
import nova.eval as eval
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["open", 3])], -1))
add("open", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_open"), [Place(0), Place(1), None, Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["open", 4])], -1))
add("open", 4, Clause(5, [Place(-3), Place(-4), Place(-5), Place(-6)], [Skeleton(make_defined([Clause(1, [Place(-2)], [Skeleton(Cache("sub_atom"), [Place(0), 0, Place(-1), Place(-1), "http:"])], -1, NotImplemented), Clause(1, [Place(-2)], [Skeleton(Cache("sub_atom"), [Place(0), 0, Place(-1), Place(-1), "https:"])], -1, NotImplemented)]), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("ir_object_new"), [Place(-2)]), Skeleton(Cache("sys_open_opts"), [Place(4), Place(0)]), Skeleton(Cache("sys_open"), [Place(1), Place(2), Place(0), Place(3)]), Skeleton(Cache("sys_open_results"), [Place(4), Place(0)])], 0, NotImplemented))
add("open", 4, Clause(5, [Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("ir_object_new"), [Place(-6)]), Skeleton(Cache("sys_stream_opts"), [Place(3), Place(4)]), Skeleton(Cache("sys_open"), [Place(0), Place(1), Place(4), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_open", 4])], -1))
add("sys_open", 4, Clause(4, [Place(-3), "read", Place(-4), Place(-5)], [Compound(Cache("current_prolog_flag"), ["read_async", "on"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("os_open_promise_opts"), [Place(1), Place(2), Place(3), Place(-5)]), Skeleton(Cache("$YIELD"), [Place(3)])], 0, NotImplemented))
add("sys_open", 4, Clause(4, [Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("os_open_sync_opts"), [Place(0), Place(1), Place(2), Place(3)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["close", 1])], -1))
add("close", 1, Clause(3, [Place(-3)], [Skeleton(Cache("os_stream_flags"), [Place(1), Place(-4)]), Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(2), 2]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("os_close_promise"), [Place(1), Place(-3)]), Skeleton(Cache("$YIELD"), [Place(1)])], 0, NotImplemented))
add("close", 1, Clause(1, [Place(-2)], [Skeleton(Cache("os_close_sync"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["nl", 0])], -1))
add("nl", 0, Clause(1, [], [Skeleton(Cache("current_output"), [Place(-2)]), Skeleton(Cache("put_atom"), [Place(0), "\n"]), Skeleton(Cache("flush_output"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["nl", 1])], -1))
add("nl", 1, Clause(1, [Place(-2)], [Skeleton(Cache("put_atom"), [Place(0), "\n"]), Skeleton(Cache("flush_output"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["flush_output", 0])], -1))
add("flush_output", 0, Clause(1, [], [Skeleton(Cache("current_output"), [Place(-2)]), Skeleton(Cache("flush_output"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["put_code", 1])], -1))
add("put_code", 1, Clause(3, [Place(-2)], [Skeleton(Cache("current_output"), [Place(-3)]), Skeleton(Cache("char_code"), [Place(-4), Place(0)]), Skeleton(Cache("put_atom"), [Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["put_code", 2])], -1))
add("put_code", 2, Clause(3, [Place(-2), Place(-3)], [Skeleton(Cache("char_code"), [Place(-4), Place(1)]), Skeleton(Cache("put_atom"), [Place(0), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["get_code", 1])], -1))
add("get_code", 1, Clause(2, [Place(-2)], [Skeleton(Cache("current_input"), [Place(-3)]), Skeleton(Cache("get_code"), [Place(1), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["peek_code", 1])], -1))
add("peek_code", 1, Clause(2, [Place(-2)], [Skeleton(Cache("current_input"), [Place(-3)]), Skeleton(Cache("peek_code"), [Place(1), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["put_atom", 1])], -1))
add("put_atom", 1, Clause(2, [Place(-2)], [Skeleton(Cache("current_output"), [Place(-3)]), Skeleton(Cache("put_atom"), [Place(1), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["get_atom", 2])], -1))
add("get_atom", 2, Clause(3, [Place(-2), Place(-3)], [Skeleton(Cache("current_input"), [Place(-4)]), Skeleton(Cache("get_atom"), [Place(2), Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["get_atom", 3])], -1))
add("get_atom", 3, Clause(6, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_atom_opts"), [Place(2), Compound("v", [10, 1, 0]), Skeleton("v", [Place(-4), Place(-5), Place(-6)])]), Skeleton(Cache("sys_get_code"), [Place(0), Place(-7), Place(3)]), Skeleton(Cache("sys_get_code_list"), [Place(5), Place(2), Place(4), Place(0), Place(-2), Place(3)]), Skeleton(Cache("atom_codes"), [Place(1), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_code_list", 6])], -1))
add("sys_get_code_list", 6, Clause(1, [-1, Place(-1), Place(-1), Place(-1), "[]", Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, -1))
add("sys_get_code_list", 6, Clause(2, [Place(-3), Place(1), Place(-1), Place(-1), Skeleton(".", [Place(1), "[]"]), Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
add("sys_get_code_list", 6, Clause(2, [Place(-3), Place(-1), 1, Place(-1), Skeleton(".", [Place(1), "[]"]), Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
add("sys_get_code_list", 6, Clause(5, [Place(-3), Place(-4), 0, Place(-5), Skeleton(".", [Place(1), Place(-3)]), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_get_code"), [Place(3), Place(-2), Place(4)]), Skeleton(Cache("sys_get_code_list"), [Place(0), Place(2), 0, Place(3), Place(1), Place(4)])], 0, NotImplemented))
add("sys_get_code_list", 6, Clause(6, [Place(-2), Place(-3), Place(-4), Place(-5), Skeleton(".", [Place(0), Place(-2)]), Place(-6)], [Skeleton(Cache("sys_get_code"), [Place(3), Place(-7), Place(4)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(2), 1]), Place(-4)]), Skeleton(Cache("sys_get_code_list"), [Place(5), Place(1), Place(2), Place(3), Place(0), Place(4)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_code", 3])], -1))
add("sys_get_code", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(3), 1]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("get_code"), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_get_code", 3, Clause(5, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("os_stream_flags"), [Place(0), Place(-5)]), Skeleton(Cache("get_code"), [Place(0), Place(-6)]), Skeleton(Cache("sys_get_code_more"), [Place(4), Place(3), Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_code_more", 5])], -1))
add("sys_get_code_more", 5, Clause(1, [13, Place(-1), Place(-1), 10, Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, 13))
add("sys_get_code_more", 5, Clause(5, [10, Place(-3), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(1), 1]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_get_code"), [Place(2), Place(3), Place(4)])], 0, 10))
add("sys_get_code_more", 5, Clause(1, [Place(-2), Place(-1), Place(-1), Place(0), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_atom_opts", 3])], -1))
add("sys_atom_opts", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_atom_opts", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_atom_opt"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("sys_atom_opts"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_atom_opts", 3, Clause(2, ["[]", Place(-3), Place(1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "[]"))
add("sys_atom_opts", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["list", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_atom_opt", 3])], -1))
add("sys_atom_opt", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_atom_opt", 3, Clause(4, [Skeleton("stop", [Place(-3)]), Skeleton("v", [Place(-1), Place(-4), Place(-5)]), Skeleton("v", [Place(1), Place(2), Place(3)])], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "stop"))
add("sys_atom_opt", 3, Clause(5, [Skeleton("compress", [Place(-3)]), Skeleton("v", [Place(-4), Place(-5), Place(-6)]), Skeleton("v", [Place(2), Place(-4), Place(4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_opt_boolean"), [Place(1), 1, Place(3), Place(2)])], 0, "compress"))
add("sys_atom_opt", 3, Clause(4, [Skeleton("max", [Place(-3)]), Skeleton("v", [Place(-4), Place(-5), Place(-1)]), Skeleton("v", [Place(2), Place(3), Place(1)])], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "max"))
add("sys_atom_opt", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["atom_option", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["write", 1])], -1))
add("write", 1, Clause(2, [Place(-2)], [Skeleton(Cache("current_output"), [Place(-3)]), Skeleton(Cache("sys_write_term"), [Place(1), Place(0), Compound(".", [Compound("numbervars", ["true"]), "[]"])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["write", 2])], -1))
add("write", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("sys_write_term"), [Place(0), Place(1), Compound(".", [Compound("numbervars", ["true"]), "[]"])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["writeq", 1])], -1))
add("writeq", 1, Clause(2, [Place(-2)], [Skeleton(Cache("current_output"), [Place(-3)]), Skeleton(Cache("sys_write_term"), [Place(1), Place(0), Compound(".", [Compound("numbervars", ["true"]), Compound(".", [Compound("quoted", ["true"]), "[]"])])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["writeq", 2])], -1))
add("writeq", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("sys_write_term"), [Place(0), Place(1), Compound(".", [Compound("numbervars", ["true"]), Compound(".", [Compound("quoted", ["true"]), "[]"])])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["write_canonical", 1])], -1))
add("write_canonical", 1, Clause(2, [Place(-2)], [Skeleton(Cache("current_output"), [Place(-3)]), Skeleton(Cache("sys_write_term"), [Place(1), Place(0), Compound(".", [Compound("quoted", ["true"]), Compound(".", [Compound("ignore_ops", ["true"]), "[]"])])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["write_canonical", 2])], -1))
add("write_canonical", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("sys_write_term"), [Place(0), Place(1), Compound(".", [Compound("quoted", ["true"]), Compound(".", [Compound("ignore_ops", ["true"]), "[]"])])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["write_term", 2])], -1))
add("write_term", 2, Clause(3, [Place(-2), Place(-3)], [Skeleton(Cache("current_output"), [Place(-4)]), Skeleton(Cache("sys_write_term"), [Place(2), Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["write_term", 3])], -1))
add("write_term", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_write_term"), [Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["read", 1])], -1))
add("read", 1, Clause(3, [Place(-2)], [Skeleton(Cache("current_input"), [Place(-3)]), Skeleton(Cache("get_code"), [Place(1), Place(-4)]), Skeleton(Cache("sys_read_term"), [Place(2), Place(1), "[]", Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["read", 2])], -1))
add("read", 2, Clause(3, [Place(-2), Place(-3)], [Skeleton(Cache("get_code"), [Place(0), Place(-4)]), Skeleton(Cache("sys_read_term"), [Place(2), Place(0), "[]", Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["read_term", 2])], -1))
add("read_term", 2, Clause(4, [Place(-2), Place(-3)], [Skeleton(Cache("current_input"), [Place(-4)]), Skeleton(Cache("get_code"), [Place(2), Place(-5)]), Skeleton(Cache("sys_read_term"), [Place(3), Place(2), Place(1), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["read_term", 3])], -1))
add("read_term", 3, Clause(4, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("get_code"), [Place(0), Place(-5)]), Skeleton(Cache("sys_read_term"), [Place(3), Place(0), Place(2), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["file_property", 2])], -1))
add("file_property", 2, Clause(4, [Place(-3), Place(-4)], [Skeleton(Cache("var"), [Place(2)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_prop_map"), [Place(1), Place(-3)]), Skeleton(Cache("ir_object_keys"), [Place(1), Place(-2)]), Skeleton(Cache("member"), [Place(-5), Place(0)]), Skeleton(Cache("ir_object_current"), [Place(1), Place(3), Place(-3)]), Skeleton(Cache("=.."), [Place(2), Skeleton(".", [Place(3), Skeleton(".", [Place(1), "[]"])])])], 0, NotImplemented))
add("file_property", 2, Clause(4, [Place(-3), Place(-4)], [Skeleton(Cache("=.."), [Place(2), Skeleton(".", [Place(-4), Skeleton(".", [Place(-5), "[]"])])]), Skeleton(Cache("sys_prop_map"), [Place(1), Place(-3)]), Skeleton(Cache("ir_object_current"), [Place(1), Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(2)])], 0, NotImplemented))
add("file_property", 2, Clause(1, [Place(-1), Place(-2)], [Skeleton(Cache("=.."), [Place(0), Skeleton(".", [Place(-2), Skeleton(".", [Place(-1), "[]"])])]), Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("domain_error", ["prolog_flag", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_prop_map", 2])], -1))
add("sys_prop_map", 2, Clause(3, [Place(-3), Place(-4)], [Compound(Cache("current_prolog_flag"), ["prop_async", "on"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("os_prop_promise"), [Place(1), Place(2), Place(-4)]), Skeleton(Cache("$YIELD"), [Place(2)])], 0, NotImplemented))
add("sys_prop_map", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("os_prop_sync"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["file_directory_name", 2])], -1))
add("file_directory_name", 2, Clause(4, [Place(-2), Place(-3)], [Skeleton(make_defined([Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("last_sub_atom"), [Place(1), Place(2), Place(-1), Place(-1), "/"]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented), Clause(1, [Place(-1), Place(-2)], [Skeleton(Cache("="), [Place(0), -1])], -1, NotImplemented)]), [Place(0), Place(-4)]), Skeleton(make_defined([Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("last_sub_atom"), [Place(1), Place(2), Place(-1), Place(-1), "\\"]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented), Clause(1, [Place(-1), Place(-2)], [Skeleton(Cache("="), [Place(0), -1])], -1, NotImplemented)]), [Place(0), Place(-5)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("max"), [Place(2), Place(3)]), Place(-5)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("+"), [Place(3), 1]), Place(-5)]), Skeleton(Cache("sub_atom"), [Place(0), 0, Place(3), Place(-1), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["file_base_name", 2])], -1))
add("file_base_name", 2, Clause(5, [Place(-2), Place(-3)], [Skeleton(Cache("atom_length"), [Place(0), Place(-4)]), Skeleton(make_defined([Clause(3, [Place(-3), Place(-4), Place(-1)], [Skeleton(Cache("last_sub_atom"), [Place(1), Place(-1), Place(-1), Place(2), "/"]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented), Clause(2, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented)]), [Place(0), Place(-5), Place(2)]), Skeleton(make_defined([Clause(3, [Place(-3), Place(-4), Place(-1)], [Skeleton(Cache("last_sub_atom"), [Place(1), Place(-1), Place(-1), Place(2), "\\"]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented), Clause(2, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented)]), [Place(0), Place(-6), Place(2)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("min"), [Place(3), Place(4)]), Place(-6)]), Skeleton(Cache("sub_atom"), [Place(0), Place(-1), Place(4), 0, Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["absolute_file_name", 2])], -1))
add("absolute_file_name", 2, Clause(3, [Place(-2), Place(-3)], [Skeleton(Cache("current_prolog_flag"), ["base_url", Place(-4)]), Skeleton(Cache("sys_file_combine"), [Place(2), Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["absolute_file_name", 3])], -1))
add("absolute_file_name", 3, Clause(4, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("current_prolog_flag"), ["base_url", Place(-5)]), Skeleton(Cache("sys_absolute_opts"), [Place(2), Place(3), Place(-5)]), Skeleton(Cache("sys_file_combine"), [Place(3), Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_absolute_opts", 3])], -1))
add("sys_absolute_opts", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_absolute_opts", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_absolute_opt"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("sys_absolute_opts"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_absolute_opts", 3, Clause(2, ["[]", Place(-3), Place(1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "[]"))
add("sys_absolute_opts", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["list", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_absolute_opt", 3])], -1))
add("sys_absolute_opt", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_absolute_opt", 3, Clause(2, [Skeleton("relative_to", [Place(-3)]), Place(-1), Place(1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "relative_to"))
add("sys_absolute_opt", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["absolute_option", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_file_combine", 3])], -1))
add("sys_file_combine", 3, Clause(3, [Place(-1), Place(-3), Place(-4)], [Skeleton(Cache("is_absolute_file_name"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_file_combine", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(make_defined([Clause(1, [Place(-2)], [Skeleton(Cache("sub_atom"), [Place(0), 0, Place(-1), Place(-1), "../"])], -1, NotImplemented), Clause(1, [Place(-2)], [Skeleton(Cache("sub_atom"), [Place(0), 0, Place(-1), Place(-1), "..\\"])], -1, NotImplemented)]), [Place(2)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sub_atom"), [Place(2), 3, Place(-1), 0, Place(-4)]), Skeleton(Cache("file_directory_name"), [Place(1), Place(-3)]), Skeleton(Cache("sub_atom"), [Place(1), 0, Place(-1), 1, Place(-3)]), Skeleton(Cache("sys_file_combine"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_file_combine", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("file_directory_name"), [Place(0), Place(-2)]), Skeleton(Cache("atom_concat"), [Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["is_absolute_file_name", 1])], -1))
add("is_absolute_file_name", 1, Clause(4, [Place(-2)], [Skeleton(Cache("atom_length"), [Place(0), Place(-3)]), Skeleton(make_defined([Clause(3, [Place(-3), Place(-4), Place(-1)], [Skeleton(Cache("sub_atom"), [Place(1), Place(2), Place(-1), Place(-1), "/"]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented), Clause(2, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented)]), [Place(0), Place(-4), Place(1)]), Skeleton(make_defined([Clause(3, [Place(-3), Place(-4), Place(-1)], [Skeleton(Cache("sub_atom"), [Place(1), Place(2), Place(-1), Place(-1), "\\"]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented), Clause(2, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented)]), [Place(0), Place(-5), Place(1)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("min"), [Place(2), Place(3)]), Place(-5)]), Skeleton(make_defined([Clause(3, [Place(-3), Place(-4), Place(-1)], [Skeleton(Cache("=="), [Place(1), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("<"), [Place(1), Place(2)])], 0, NotImplemented), Clause(3, [Place(-3), Place(-1), Place(-4)], [Skeleton(Cache("sub_atom"), [Place(2), Place(-4), Place(-1), Place(-1), ":"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("<"), [Place(2), Place(1)])], 0, NotImplemented)]), [Place(3), Place(1), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_multifile_safe"), ["strings", 3])], -1))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["strings", 3])], -1))
add("strings", 3, Clause(0, ["evaluation_error.float_overflow", "de", "Die Funktion überschreitet hier den Gleitpunktzahlbereich."], [], -1, "evaluation_error.float_overflow"))
add("strings", 3, Clause(0, ["evaluation_error.undefined", "de", "Die Funktion ist hier undefiniert."], [], -1, "evaluation_error.undefined"))
add("strings", 3, Clause(0, ["evaluation_error.zero_divisor", "de", "Nulldivision."], [], -1, "evaluation_error.zero_divisor"))
add("strings", 3, Clause(0, ["representation_error.int", "de", "Unerlaubte Ganzzahl (nicht zwischen - 2^31 und 2^31-1)."], [], -1, "representation_error.int"))
add("strings", 3, Clause(0, ["representation_error.max_arity", "de", "Unerlaubte Stelligkeit (nicht kleiner oder gleich 2^31-1)."], [], -1, "representation_error.max_arity"))
add("strings", 3, Clause(0, ["domain_error.prolog_flag", "de", "Argument sollte Flag sein, gefunden $."], [], -1, "domain_error.prolog_flag"))
add("strings", 3, Clause(0, ["domain_error.flag_value", "de", "Argument sollte Flagwert sein, gefunden $."], [], -1, "domain_error.flag_value"))
add("strings", 3, Clause(0, ["domain_error.not_less_than_zero", "de", "Argument sollte positiv oder 0 sein, gefunden $."], [], -1, "domain_error.not_less_than_zero"))
add("strings", 3, Clause(0, ["domain_error.operator_priority", "de", "Argument sollte Operatorlevel sein (kleiner oder gleich 1200), gefunden $."], [], -1, "domain_error.operator_priority"))
add("strings", 3, Clause(0, ["domain_error.operator_specifier", "de", "Argument sollte Operatormode sein (fx, fy, xfx, yfx, xfy, xf, yf), gefunden $."], [], -1, "domain_error.operator_specifier"))
add("strings", 3, Clause(0, ["domain_error.time_format", "de", "Argument sollte Zeitformat sein, gefunden $."], [], -1, "domain_error.time_format"))
add("strings", 3, Clause(0, ["type_error.atom", "de", "Argument sollte Atom sein, gefunden $."], [], -1, "type_error.atom"))
add("strings", 3, Clause(0, ["type_error.number", "de", "Argument sollte Zahl sein, gefunden $."], [], -1, "type_error.number"))
add("strings", 3, Clause(0, ["type_error.integer", "de", "Argument sollte Ganzzahl sein, gefunden $."], [], -1, "type_error.integer"))
add("strings", 3, Clause(0, ["type_error.float", "de", "Argument sollte Gleitzahl sein, gefunden $."], [], -1, "type_error.float"))
add("strings", 3, Clause(0, ["type_error.callable", "de", "Argument sollte aufrufbar sein (Atom oder Verbund), gefunden $."], [], -1, "type_error.callable"))
add("strings", 3, Clause(0, ["type_error.atomic", "de", "Argument sollte atomar sein, gefunden $."], [], -1, "type_error.atomic"))
add("strings", 3, Clause(0, ["type_error.list", "de", "Argument sollte Liste sein ([] oder [_|_]), gefunden $."], [], -1, "type_error.list"))
add("strings", 3, Clause(0, ["type_error.evaluable", "de", "Argument sollte berechenbaren Funktor haben, gefunden $."], [], -1, "type_error.evaluable"))
add("strings", 3, Clause(0, ["type_error.character", "de", "Argument sollte Zeichen sein, gefunden $."], [], -1, "type_error.character"))
add("strings", 3, Clause(0, ["type_error.pair", "de", "Argument sollte Paar sein (_-_), gefunden $."], [], -1, "type_error.pair"))
add("strings", 3, Clause(0, ["type_error.predicate_indicator", "de", "Argument sollte Prädikatspezifikation sein ( _/_), gefunden $."], [], -1, "type_error.predicate_indicator"))
add("strings", 3, Clause(0, ["permission_error.modify.flag", "de", "Kann schreibgeschütztes Flag $ nicht aktualisieren."], [], -1, "permission_error.modify.flag"))
add("strings", 3, Clause(0, ["evaluation_error.float_overflow", "", "The function overflows the float range here."], [], -1, "evaluation_error.float_overflow"))
add("strings", 3, Clause(0, ["evaluation_error.undefined", "", "The function is undefined here."], [], -1, "evaluation_error.undefined"))
add("strings", 3, Clause(0, ["evaluation_error.zero_divisor", "", "Division by zero."], [], -1, "evaluation_error.zero_divisor"))
add("strings", 3, Clause(0, ["representation_error.int", "", "Illegal integer (not between - 2^31 and 2^31-1)."], [], -1, "representation_error.int"))
add("strings", 3, Clause(0, ["representation_error.max_arity", "", "Illegal arity (not less or equal 2^31-1)."], [], -1, "representation_error.max_arity"))
add("strings", 3, Clause(0, ["domain_error.prolog_flag", "", "Argument should be a flag, found $."], [], -1, "domain_error.prolog_flag"))
add("strings", 3, Clause(0, ["domain_error.flag_value", "", "Argument should be a flag value, found $."], [], -1, "domain_error.flag_value"))
add("strings", 3, Clause(0, ["domain_error.not_less_than_zero", "", "Argument should be positive or 0, found $."], [], -1, "domain_error.not_less_than_zero"))
add("strings", 3, Clause(0, ["domain_error.operator_priority", "", "Argument should be an operator level (less or equal 1200), found $."], [], -1, "domain_error.operator_priority"))
add("strings", 3, Clause(0, ["domain_error.operator_specifier", "", "Argument should be an operator mode (fx, fy, xfx, yfx, xfy, xf, yf), found $."], [], -1, "domain_error.operator_specifier"))
add("strings", 3, Clause(0, ["domain_error.time_format", "", "Argument should be time format, found $."], [], -1, "domain_error.time_format"))
add("strings", 3, Clause(0, ["type_error.atom", "", "Argument should be an atom, found $."], [], -1, "type_error.atom"))
add("strings", 3, Clause(0, ["type_error.number", "", "Argument should be a number, found $."], [], -1, "type_error.number"))
add("strings", 3, Clause(0, ["type_error.integer", "", "Argument should be an integer, found $."], [], -1, "type_error.integer"))
add("strings", 3, Clause(0, ["type_error.float", "", "Argument should be a float, found $."], [], -1, "type_error.float"))
add("strings", 3, Clause(0, ["type_error.callable", "", "Argument should be callable (atom or compound), found $."], [], -1, "type_error.callable"))
add("strings", 3, Clause(0, ["type_error.atomic", "", "Argument should be an atomic, found $."], [], -1, "type_error.atomic"))
add("strings", 3, Clause(0, ["type_error.list", "", "Argument should be a list ([] or [_|_]), found $."], [], -1, "type_error.list"))
add("strings", 3, Clause(0, ["type_error.evaluable", "", "Argument should have evaluable functor, found $."], [], -1, "type_error.evaluable"))
add("strings", 3, Clause(0, ["type_error.character", "", "Argument should be a character, found $."], [], -1, "type_error.character"))
add("strings", 3, Clause(0, ["type_error.pair", "", "Argument should be a pair (_-_), found $."], [], -1, "type_error.pair"))
add("strings", 3, Clause(0, ["type_error.predicate_indicator", "", "Argument should be a predicate specification (_/_), found $."], [], -1, "type_error.predicate_indicator"))
add("strings", 3, Clause(0, ["permission_error.modify.flag", "", "Can\'t modify read-only flag $."], [], -1, "permission_error.modify.flag"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_code_class", 2])], -1))
add("sys_code_class", 2, Clause(2, [44, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_punct"])], 0, 44))
add("sys_code_class", 2, Clause(2, [40, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_punct"])], 0, 40))
add("sys_code_class", 2, Clause(2, [41, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_punct"])], 0, 41))
add("sys_code_class", 2, Clause(2, [124, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_punct"])], 0, 124))
add("sys_code_class", 2, Clause(2, [91, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_punct"])], 0, 91))
add("sys_code_class", 2, Clause(2, [93, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_punct"])], 0, 93))
add("sys_code_class", 2, Clause(2, [123, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_punct"])], 0, 123))
add("sys_code_class", 2, Clause(2, [125, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_punct"])], 0, 125))
add("sys_code_class", 2, Clause(2, [59, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_solo"])], 0, 59))
add("sys_code_class", 2, Clause(2, [33, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_solo"])], 0, 33))
add("sys_code_class", 2, Clause(2, [39, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_solo"])], 0, 39))
add("sys_code_class", 2, Clause(2, [96, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_solo"])], 0, 96))
add("sys_code_class", 2, Clause(2, [34, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_solo"])], 0, 34))
add("sys_code_class", 2, Clause(2, [37, Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), "is_solo"])], 0, 37))
add("sys_code_class", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("code_category"), [Place(0), Place(-2)]), Skeleton(Cache("sys_type_class"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_type_class", 2])], -1))
add("sys_type_class", 2, Clause(0, [0, "is_invalid"], [], -1, 0))
add("sys_type_class", 2, Clause(0, [1, "is_upper"], [], -1, 1))
add("sys_type_class", 2, Clause(0, [2, "is_ident"], [], -1, 2))
add("sys_type_class", 2, Clause(0, [3, "is_upper"], [], -1, 3))
add("sys_type_class", 2, Clause(0, [4, "is_ident"], [], -1, 4))
add("sys_type_class", 2, Clause(0, [5, "is_ident"], [], -1, 5))
add("sys_type_class", 2, Clause(0, [6, "is_ident"], [], -1, 6))
add("sys_type_class", 2, Clause(0, [7, "is_ident"], [], -1, 7))
add("sys_type_class", 2, Clause(0, [8, "is_ident"], [], -1, 8))
add("sys_type_class", 2, Clause(0, [9, "is_digit"], [], -1, 9))
add("sys_type_class", 2, Clause(0, [10, "is_ident"], [], -1, 10))
add("sys_type_class", 2, Clause(0, [11, "is_ident"], [], -1, 11))
add("sys_type_class", 2, Clause(0, [12, "is_blank"], [], -1, 12))
add("sys_type_class", 2, Clause(0, [13, "is_blank"], [], -1, 13))
add("sys_type_class", 2, Clause(0, [14, "is_blank"], [], -1, 14))
add("sys_type_class", 2, Clause(0, [15, "is_cntrl"], [], -1, 15))
add("sys_type_class", 2, Clause(0, [16, "is_cntrl"], [], -1, 16))
add("sys_type_class", 2, Clause(0, [18, "is_invalid"], [], -1, 18))
add("sys_type_class", 2, Clause(0, [19, "is_invalid"], [], -1, 19))
add("sys_type_class", 2, Clause(0, [20, "is_graphic"], [], -1, 20))
add("sys_type_class", 2, Clause(0, [21, "is_solo"], [], -1, 21))
add("sys_type_class", 2, Clause(0, [22, "is_solo"], [], -1, 22))
add("sys_type_class", 2, Clause(0, [23, "is_score"], [], -1, 23))
add("sys_type_class", 2, Clause(0, [24, "is_graphic"], [], -1, 24))
add("sys_type_class", 2, Clause(0, [25, "is_graphic"], [], -1, 25))
add("sys_type_class", 2, Clause(0, [26, "is_graphic"], [], -1, 26))
add("sys_type_class", 2, Clause(0, [27, "is_graphic"], [], -1, 27))
add("sys_type_class", 2, Clause(0, [28, "is_graphic"], [], -1, 28))
add("sys_type_class", 2, Clause(0, [29, "is_solo"], [], -1, 29))
add("sys_type_class", 2, Clause(0, [30, "is_solo"], [], -1, 30))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_name_class", 1])], -1))
add("sys_name_class", 1, Clause(0, ["is_ident"], [], -1, "is_ident"))
add("sys_name_class", 1, Clause(0, ["is_upper"], [], -1, "is_upper"))
add("sys_name_class", 1, Clause(0, ["is_score"], [], -1, "is_score"))
add("sys_name_class", 1, Clause(0, ["is_digit"], [], -1, "is_digit"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_white_class", 1])], -1))
add("sys_white_class", 1, Clause(0, ["is_blank"], [], -1, "is_blank"))
add("sys_white_class", 1, Clause(0, ["is_cntrl"], [], -1, "is_cntrl"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_token", 3])], -1))
add("sys_get_token", 3, Clause(5, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_current_code"), [Place(-5), Place(1), Place(-3)]), Skeleton(Cache("sys_code_class"), [Place(3), Place(-6)]), Skeleton(Cache("sys_get_class"), [Place(4), Place(3), Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_class", 5])], -1))
add("sys_get_class", 5, Clause(5, ["is_ident", Place(-2), Skeleton("atom", [Place(-3)]), Place(-4), Place(-5)], [Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_name"), [Place(-6), Place(2), Place(-4)]), Skeleton(Cache("atom_codes"), [Place(1), Skeleton(".", [Place(0), Place(4)])]), Skeleton(Cache("="), [Place(2), Place(3)])], -1, "is_ident"))
add("sys_get_class", 5, Clause(5, ["is_upper", Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_name"), [Place(-6), Place(2), Place(-4)]), Skeleton(Cache("sys_make_variable"), [Skeleton(".", [Place(0), Place(4)]), Place(1)]), Skeleton(Cache("="), [Place(2), Place(3)])], -1, "is_upper"))
add("sys_get_class", 5, Clause(5, ["is_score", Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_name"), [Place(-6), Place(2), Place(-4)]), Skeleton(Cache("sys_make_variable"), [Skeleton(".", [Place(0), Place(4)]), Place(1)]), Skeleton(Cache("="), [Place(2), Place(3)])], -1, "is_score"))
add("sys_get_class", 5, Clause(4, ["is_digit", Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_get_number"), [Place(0), Place(1), Place(2), Place(3)])], -1, "is_digit"))
add("sys_get_class", 5, Clause(4, ["is_punct", Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("char_code"), [Place(1), Place(0)]), Skeleton(Cache("="), [Place(2), Place(3)])], -1, "is_punct"))
add("sys_get_class", 5, Clause(4, ["is_graphic", Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_block_or_symbol"), [Place(0), Place(1), Place(2), Place(3)])], -1, "is_graphic"))
add("sys_get_class", 5, Clause(4, ["is_solo", Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_get_line_or_solo"), [Place(0), Place(1), Place(2), Place(3)])], -1, "is_solo"))
add("sys_get_class", 5, Clause(4, ["is_invalid", Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_get_eof_or_error"), [Place(0), Place(1), Place(2), Place(3)])], -1, "is_invalid"))
add("sys_get_class", 5, Clause(3, ["is_blank", Place(-1), Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_next_code"), [Place(1), Place(-3)]), Skeleton(Cache("sys_get_token"), [Place(0), Place(1), Place(2)])], -1, "is_blank"))
add("sys_get_class", 5, Clause(3, ["is_cntrl", Place(-1), Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_next_code"), [Place(1), Place(-3)]), Skeleton(Cache("sys_get_token"), [Place(0), Place(1), Place(2)])], -1, "is_cntrl"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_eof_or_error", 4])], -1))
add("sys_get_eof_or_error", 4, Clause(3, [-1, "end_of_file", Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, -1))
add("sys_get_eof_or_error", 4, Clause(2, [Place(-1), Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["illegal_unicode"]), Place(-1)])]), Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_name", 3])], -1))
add("sys_get_name", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("sys_code_class"), [Place(1), Place(-3)]), Skeleton(Cache("sys_name_class"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_name"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_get_name", 3, Clause(1, ["[]", Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_make_variable", 2])], -1))
add("sys_make_variable", 2, Clause(2, [Skeleton(".", [Place(-3), "[]"]), "anon"], [Skeleton(Cache("code_category"), [Place(1), 23]), Skeleton(Cache("$CUT"), [Place(0)])], 0, "."))
add("sys_make_variable", 2, Clause(2, [Place(-2), Skeleton("var", [Place(-3)])], [Skeleton(Cache("atom_codes"), [Place(1), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_number", 4])], -1))
add("sys_get_number", 4, Clause(4, [48, Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_current_code"), [Place(-2), Place(2), Place(-4)]), Skeleton(Cache("sys_get_special"), [Place(0), Place(1), Place(2), Place(3)])], 0, 48))
add("sys_get_number", 4, Clause(3, [Place(-2), Skeleton("decimal", [Skeleton(".", [Place(0), Place(-2)])]), Place(-3), Place(-4)], [Skeleton(Cache("sys_next_code"), [Place(1), Place(-3)]), Skeleton(Cache("sys_get_decimal"), [Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_special", 4])], -1))
add("sys_get_special", 4, Clause(4, [120, Skeleton("radix", [Place(-3), 16]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_radix"), [Place(1), "[]", 16, Place(2), Place(3)])], 0, 120))
add("sys_get_special", 4, Clause(4, [111, Skeleton("radix", [Place(-3), 8]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_radix"), [Place(1), "[]", 8, Place(2), Place(3)])], 0, 111))
add("sys_get_special", 4, Clause(4, [98, Skeleton("radix", [Place(-3), 2]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_radix"), [Place(1), "[]", 2, Place(2), Place(3)])], 0, 98))
add("sys_get_special", 4, Clause(4, [114, Skeleton("reference", [Place(-3)]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_name"), [Place(1), Place(2), Place(3)])], 0, 114))
add("sys_get_special", 4, Clause(4, [102, Skeleton("decimal", [Skeleton(".", [48, Skeleton(".", [102, Place(-3)])])]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_decimal"), [Place(1), Place(2), Place(3)])], 0, 102))
add("sys_get_special", 4, Clause(4, [100, Skeleton("decimal", [Skeleton(".", [48, Skeleton(".", [100, Place(-3)])])]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_decimal"), [Place(1), Place(2), Place(3)])], 0, 100))
add("sys_get_special", 4, Clause(4, [39, Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_current_code"), [Place(-2), Place(2), Place(-4)]), Skeleton(Cache("sys_get_code"), [Place(0), Place(1), Place(2), Place(3)])], 0, 39))
add("sys_get_special", 4, Clause(3, [Place(-1), Skeleton("decimal", [Skeleton(".", [48, Place(-2)])]), Place(-3), Place(-4)], [Skeleton(Cache("sys_get_decimal"), [Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_code", 4])], -1))
add("sys_get_code", 4, Clause(4, [39, Skeleton("code", [Skeleton(".", [39, Place(-3)])]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_double"), [Place(1), Place(2), Place(3)])], 0, 39))
add("sys_get_code", 4, Clause(4, [92, Skeleton("code", [Skeleton(".", [92, Place(-3)])]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_current_code"), [Place(-2), Place(2), Place(-4)]), Skeleton(Cache("sys_get_escape"), [Place(0), Place(1), "[]", Place(2), Place(3)])], 0, 92))
add("sys_get_code", 4, Clause(3, [Place(-2), Skeleton("code", [Skeleton(".", [Place(0), "[]"])]), Place(-3), Place(-4)], [Skeleton(Cache("sys_get_char"), [Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_double", 3])], -1))
add("sys_get_double", 3, Clause(3, [Compound(".", [39, "[]"]), Place(-3), Place(-4)], [Skeleton(Cache("sys_current_code"), [39, Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(1), Place(2)])], 0, "."))
add("sys_get_double", 3, Clause(1, ["[]", Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_decimal", 3])], -1))
add("sys_get_decimal", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("code_category"), [Place(1), 9]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_decimal"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_get_decimal", 3, Clause(5, [Skeleton(".", [46, Place(-3)]), Place(-4), Place(-5)], [Skeleton(Cache("sys_current_code"), [46, Place(2), Place(-4)]), Skeleton(Cache("sys_at_code"), [Place(-6), Place(2), Place(-4)]), Skeleton(Cache("code_category"), [Place(4), 9]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_fraction"), [Place(1), Place(2), Place(3)])], 0, "."))
add("sys_get_decimal", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("sys_is_expo"), [Place(1)]), Skeleton(Cache("sys_at_code"), [Place(-3), Place(3), Place(-5)]), Skeleton(Cache("sys_is_sign_digit"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_exponent"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_get_decimal", 3, Clause(1, ["[]", Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_fraction", 3])], -1))
add("sys_get_fraction", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("code_category"), [Place(1), 9]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_fraction"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_get_fraction", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("sys_is_expo"), [Place(1)]), Skeleton(Cache("sys_at_code"), [Place(-3), Place(3), Place(-5)]), Skeleton(Cache("sys_is_sign_digit"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_exponent"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_get_fraction", 3, Clause(1, ["[]", Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_exponent", 3])], -1))
add("sys_get_exponent", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("sys_is_sign"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_rest"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_get_exponent", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_get_rest"), [Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_rest", 3])], -1))
add("sys_get_rest", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("code_category"), [Place(1), 9]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_rest"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_get_rest", 3, Clause(1, ["[]", Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_expo", 1])], -1))
add("sys_is_expo", 1, Clause(0, [69], [], -1, 69))
add("sys_is_expo", 1, Clause(0, [101], [], -1, 101))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_sign_digit", 1])], -1))
add("sys_is_sign_digit", 1, Clause(1, [Place(-2)], [Skeleton(Cache("sys_is_sign"), [Place(0)])], -1, NotImplemented))
add("sys_is_sign_digit", 1, Clause(1, [Place(-2)], [Skeleton(Cache("code_category"), [Place(0), 9])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_sign", 1])], -1))
add("sys_is_sign", 1, Clause(0, [45], [], -1, 45))
add("sys_is_sign", 1, Clause(0, [43], [], -1, 43))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_block_or_symbol", 4])], -1))
add("sys_get_block_or_symbol", 4, Clause(4, [47, Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_current_code"), [42, Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_skip_block"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_token"), [Place(1), Place(2), Place(3)])], 0, 47))
add("sys_get_block_or_symbol", 4, Clause(6, [Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_get_symbol"), [Place(-6), Place(2), Place(-4)]), Skeleton(Cache("sys_current_code"), [Place(-7), Place(2), Place(-4)]), Skeleton(Cache("sys_make_period"), [Place(5), Skeleton(".", [Place(0), Place(4)]), Place(1)]), Skeleton(Cache("="), [Place(2), Place(3)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_symbol", 3])], -1))
add("sys_get_symbol", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("sys_code_class"), [Place(1), "is_graphic"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_symbol"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_get_symbol", 3, Clause(1, ["[]", Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_skip_block", 2])], -1))
add("sys_skip_block", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("sys_current_code"), [42, Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(1), Place(-3)]), Skeleton(Cache("sys_skip_end"), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_skip_block", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("sys_current_code"), [-1, Place(0), Place(-2)]), Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["end_of_file_in_block_comment"]), Place(-1)])]), Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
add("sys_skip_block", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("sys_next_code"), [Place(0), Place(-2)]), Skeleton(Cache("sys_skip_block"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_skip_end", 2])], -1))
add("sys_skip_end", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("sys_current_code"), [47, Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_skip_end", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("sys_skip_block"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_make_period", 3])], -1))
add("sys_make_period", 3, Clause(1, [37, Compound(".", [46, "[]"]), "."], [Skeleton(Cache("$CUT"), [Place(0)])], 0, 37))
add("sys_make_period", 3, Clause(1, [-1, Compound(".", [46, "[]"]), "."], [Skeleton(Cache("$CUT"), [Place(0)])], 0, -1))
add("sys_make_period", 3, Clause(2, [Place(-3), Compound(".", [46, "[]"]), "."], [Skeleton(Cache("sys_code_class"), [Place(1), Place(-3)]), Skeleton(Cache("sys_white_class"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
add("sys_make_period", 3, Clause(2, [Place(-1), Place(-2), Skeleton("atom", [Place(-3)])], [Skeleton(Cache("atom_codes"), [Place(1), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_line_or_solo", 4])], -1))
add("sys_get_line_or_solo", 4, Clause(4, [39, Skeleton("single", [Place(-3)]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_quote"), [Place(1), 39, Place(2), Place(3)])], 0, 39))
add("sys_get_line_or_solo", 4, Clause(4, [96, Skeleton("back", [Place(-3)]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_quote"), [Place(1), 96, Place(2), Place(3)])], 0, 96))
add("sys_get_line_or_solo", 4, Clause(4, [34, Skeleton("codes", [Place(-3)]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_quote"), [Place(1), 34, Place(2), Place(3)])], 0, 34))
add("sys_get_line_or_solo", 4, Clause(4, [37, Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_current_code"), [Place(-2), Place(2), Place(-4)]), Skeleton(Cache("sys_skip_line"), [Place(0), Place(2), Place(-4)]), Skeleton(Cache("sys_get_token"), [Place(1), Place(2), Place(3)])], 0, 37))
add("sys_get_line_or_solo", 4, Clause(4, [Place(-2), Skeleton("atom", [Place(-3)]), Place(-4), Place(-5)], [Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("char_code"), [Place(1), Place(0)]), Skeleton(Cache("="), [Place(2), Place(3)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_skip_line", 3])], -1))
add("sys_skip_line", 3, Clause(3, [10, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, 10))
add("sys_skip_line", 3, Clause(3, [13, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, 13))
add("sys_skip_line", 3, Clause(3, [-1, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, -1))
add("sys_skip_line", 3, Clause(3, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("sys_next_code"), [Place(0), Place(-2)]), Skeleton(Cache("sys_current_code"), [Place(-4), Place(0), Place(-2)]), Skeleton(Cache("sys_skip_line"), [Place(2), Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_quote", 4])], -1))
add("sys_get_quote", 4, Clause(5, [Place(-3), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [Place(2), Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_more"), [Place(1), Place(2), Place(3), Place(4)])], 0, NotImplemented))
add("sys_get_quote", 4, Clause(5, [Place(-3), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [92, Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_cont"), [Place(1), Place(2), Place(3), Place(4)])], 0, NotImplemented))
add("sys_get_quote", 4, Clause(5, [Skeleton(".", [Place(-2), Place(-3)]), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [Place(0), Place(3), Place(-5)]), Skeleton(Cache("sys_get_char"), [Place(0), Place(3), Place(-5)]), Skeleton(Cache("sys_get_quote"), [Place(1), Place(2), Place(3), Place(4)])], -1, "."))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_more", 4])], -1))
add("sys_get_more", 4, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(1), Place(-5), Place(-6)], [Skeleton(Cache("sys_current_code"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_quote"), [Place(2), Place(1), Place(3), Place(4)])], 0, "."))
add("sys_get_more", 4, Clause(1, ["[]", Place(-1), Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_char", 3])], -1))
add("sys_get_char", 3, Clause(2, [10, Place(-2), Place(-3)], [Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["end_of_line_as_character"]), Place(-1)])]), Skeleton(Cache("="), [Place(0), Place(1)])], -1, 10))
add("sys_get_char", 3, Clause(2, [13, Place(-2), Place(-3)], [Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["end_of_line_as_character"]), Place(-1)])]), Skeleton(Cache("="), [Place(0), Place(1)])], -1, 13))
add("sys_get_char", 3, Clause(2, [-1, Place(-2), Place(-3)], [Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["unbalanced_quoted"]), Place(-1)])]), Skeleton(Cache("="), [Place(0), Place(1)])], -1, -1))
add("sys_get_char", 3, Clause(2, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("sys_next_code"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_cont", 4])], -1))
add("sys_get_cont", 4, Clause(5, [Skeleton(".", [92, Place(-2)]), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_current_code"), [Place(-6), Place(2), Place(-4)]), Skeleton(Cache("sys_get_escape"), [Place(4), Place(0), Place(-2), Place(2), Place(-4)]), Skeleton(Cache("sys_get_quote"), [Place(0), Place(1), Place(2), Place(3)])], -1, "."))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_escape", 5])], -1))
add("sys_get_escape", 5, Clause(5, [13, Skeleton(".", [13, Place(-3)]), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_skip"), [Place(1), Place(2), Place(3), Place(4)])], 0, 13))
add("sys_get_escape", 5, Clause(2, [-1, Place(-1), Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["illegal_escape"]), Place(-1)])]), Skeleton(Cache("="), [Place(0), Place(1)])], -1, -1))
add("sys_get_escape", 5, Clause(5, [120, Skeleton(".", [120, Place(-3)]), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_radix"), [Place(1), Place(-3), 16, Place(3), Place(-5)]), Skeleton(Cache("sys_get_backslash"), [Place(1), Place(2), Place(3), Place(4)])], 0, 120))
add("sys_get_escape", 5, Clause(6, [Place(-3), Skeleton(".", [Place(1), Place(-4)]), Place(-5), Place(-6), Place(-7)], [Skeleton(Cache("sys_is_radix"), [Place(1), 8]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(4), Place(-6)]), Skeleton(Cache("sys_get_radix"), [Place(2), Place(-4), 8, Place(4), Place(-6)]), Skeleton(Cache("sys_get_backslash"), [Place(2), Place(3), Place(4), Place(5)])], 0, NotImplemented))
add("sys_get_escape", 5, Clause(2, [Place(-2), Skeleton(".", [Place(0), Place(-2)]), Place(0), Place(-2), Place(-3)], [Skeleton(Cache("sys_next_code"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_skip", 4])], -1))
add("sys_get_skip", 4, Clause(3, [Skeleton(".", [10, Place(-3)]), Place(1), Place(-3), Place(-4)], [Skeleton(Cache("sys_current_code"), [10, Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(1), Place(2)])], 0, "."))
add("sys_get_skip", 4, Clause(1, [Place(-2), Place(0), Place(-2), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_backslash", 4])], -1))
add("sys_get_backslash", 4, Clause(3, [Skeleton(".", [92, Place(-3)]), Place(1), Place(-3), Place(-4)], [Skeleton(Cache("sys_current_code"), [92, Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(1), Place(2)])], 0, "."))
add("sys_get_backslash", 4, Clause(1, [Place(-2), Place(0), Place(-2), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_radix", 5])], -1))
add("sys_get_radix", 5, Clause(7, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6), Place(-7), Place(-8)], [Skeleton(Cache("sys_current_code"), [Place(1), Place(5), Place(-7)]), Skeleton(Cache("sys_is_radix"), [Place(1), Place(4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_code"), [Place(5), Place(-7)]), Skeleton(Cache("sys_get_radix"), [Place(2), Place(3), Place(4), Place(5), Place(6)])], 0, "."))
add("sys_get_radix", 5, Clause(1, [Place(-2), Place(0), Place(-1), Place(-2), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_radix", 2])], -1))
add("sys_is_radix", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("code_numeric"), [Place(0), Place(-2)]), Skeleton(Cache("=<"), [0, Place(0)]), Skeleton(Cache("<"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_meta", 1])], -1))
add("sys_is_meta", 1, Clause(0, [39], [], -1, 39))
add("sys_is_meta", 1, Clause(0, [96], [], -1, 96))
add("sys_is_meta", 1, Clause(0, [34], [], -1, 34))
add("sys_is_meta", 1, Clause(0, [92], [], -1, 92))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_escape", 2])], -1))
add("sys_is_escape", 2, Clause(0, [110, 10], [], -1, 110))
add("sys_is_escape", 2, Clause(0, [116, 9], [], -1, 116))
add("sys_is_escape", 2, Clause(0, [98, 8], [], -1, 98))
add("sys_is_escape", 2, Clause(0, [102, 12], [], -1, 102))
add("sys_is_escape", 2, Clause(0, [114, 13], [], -1, 114))
add("sys_is_escape", 2, Clause(0, [97, 7], [], -1, 97))
add("sys_is_escape", 2, Clause(0, [118, 11], [], -1, 118))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_current_code", 3])], -1))
add("sys_current_code", 3, Clause(2, [Place(-2), Skeleton("-", [Place(-3), Place(0)]), Skeleton("-", [Place(1), Place(0)])], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_next_code", 2])], -1))
add("sys_next_code", 2, Clause(2, [Skeleton("-", [Place(-2), Place(-1)]), Skeleton("-", [Place(0), Place(-3)])], [Skeleton(Cache("get_code"), [Place(0), Place(1)])], -1, "-"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_at_code", 3])], -1))
add("sys_at_code", 3, Clause(3, [Place(-2), Skeleton("-", [Place(-3), Place(-4)]), Skeleton("-", [Place(1), Place(2)])], [Skeleton(Cache("peek_code"), [Place(1), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_sync_throw", 3])], -1))
add("sys_sync_throw", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_fill_stack"), [Place(0)]), Skeleton(Cache("sys_sync_tokens"), [Place(1), Place(-3)]), Skeleton(Cache("sys_raise"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_sync_raise", 3])], -1))
add("sys_sync_raise", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_sync_tokens"), [Place(1), Place(-3)]), Skeleton(Cache("sys_raise"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_sync_tokens", 2])], -1))
add("sys_sync_tokens", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("sys_current_token"), [".", Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_sync_tokens", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("sys_current_token"), ["end_of_file", Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_sync_tokens", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("sys_sync_token"), [Place(0), Place(-2)]), Skeleton(Cache("sys_sync_tokens"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_sync_token", 2])], -1))
add("sys_sync_token", 2, Clause(5, [Skeleton("t", [Place(-1), Place(-2), Skeleton("r", [Place(-3), Place(-4)]), Place(-5)]), Skeleton("t", [Place(-6), Place(0), Skeleton("r", [Place(1), Place(-2)]), Place(3)])], [Skeleton(Cache("sys_get_token"), [Place(4), Skeleton("-", [Place(1), Place(2)]), Skeleton("-", [Place(-1), Place(0)])])], -1, "t"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_safe_atom", 3])], -1))
add("sys_safe_atom", 3, Clause(6, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sub_atom"), [Place(2), 0, 1, Place(-1), Place(-6)]), Skeleton(Cache("char_code"), [Place(4), Place(-6)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("ir_object_current"), [Place(1), "last", Place(-2)]), Skeleton(Cache("sys_code_class"), [Place(0), Place(-7)]), Skeleton(Cache("sys_safe_space"), [Place(5), Place(1), Place(0), Place(4), Place(3)]), Skeleton(Cache("put_atom"), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_safe_atom", 3, Clause(0, [Place(-1), Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_safe_space", 5])], -1))
add("sys_safe_space", 5, Clause(5, [Place(-3), Place(-4), Place(-5), Place(-6), Place(-1)], [Skeleton(Cache("sys_name_class"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_safe_name"), [Place(2), Place(3), Place(4)])], 0, NotImplemented))
add("sys_safe_space", 5, Clause(5, ["is_graphic", Place(-3), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_safe_symbol"), [Place(1), Place(2), Place(3), Place(4)])], 0, "is_graphic"))
add("sys_safe_space", 5, Clause(4, ["is_solo", Place(-3), Place(-4), Place(-5), Place(-1)], [Skeleton(Cache("=:="), [Place(2), Place(3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_safe_quote"), [Place(1), Place(3)])], 0, "is_solo"))
add("sys_safe_space", 5, Clause(0, [Place(-1), Place(-1), Place(-1), Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_safe_name", 3])], -1))
add("sys_safe_name", 3, Clause(3, [Place(-3), Place(-1), Place(-4)], [Skeleton(Cache("sys_code_class"), [Place(2), Place(-4)]), Skeleton(Cache("sys_name_class"), [Place(2)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), " "])], 0, NotImplemented))
add("sys_safe_name", 3, Clause(2, [Place(-3), 48, 39], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), " "])], 0, NotImplemented))
add("sys_safe_name", 3, Clause(0, [Place(-1), Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_safe_symbol", 4])], -1))
add("sys_safe_symbol", 4, Clause(3, [Place(-3), Place(-1), Place(-4), Place(-1)], [Skeleton(Cache("sys_code_class"), [Place(2), "is_graphic"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), " "])], 0, NotImplemented))
add("sys_safe_symbol", 4, Clause(4, [Place(-3), 45, Place(-4), Place(-5)], [Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(3), 4]), 0]), Skeleton(Cache("code_category"), [Place(2), 9]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), " "])], 0, NotImplemented))
add("sys_safe_symbol", 4, Clause(0, [Place(-1), Place(-1), Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_safe_quote", 2])], -1))
add("sys_safe_quote", 2, Clause(2, [Place(-3), 39], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), " "])], 0, NotImplemented))
add("sys_safe_quote", 2, Clause(2, [Place(-3), 96], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), " "])], 0, NotImplemented))
add("sys_safe_quote", 2, Clause(2, [Place(-3), 34], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), " "])], 0, NotImplemented))
add("sys_safe_quote", 2, Clause(0, [Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_next_token", 2])], -1))
add("sys_next_token", 2, Clause(7, [Skeleton("t", [Place(-1), Place(-2), Skeleton("r", [Place(-3), Place(-4)]), Place(-5)]), Skeleton("t", [Place(-6), Place(0), Skeleton("r", [Place(1), Place(-7)]), Place(3)])], [Skeleton(Cache("sys_get_token"), [Place(-8), Skeleton("-", [Place(1), Place(2)]), Skeleton("-", [Place(-1), Place(5)])]), Skeleton(Cache("sys_trap"), [Skeleton("sys_convert_token", [Place(6), Place(4)]), Place(-6), Skeleton("sys_sync_raise", [Place(4), Skeleton("t", [Place(6), Place(0), Skeleton("r", [Place(1), Place(5)]), Place(3)]), Place(-1)])])], -1, "t"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_token", 2])], -1))
add("sys_convert_token", 2, Clause(3, [Skeleton("single", [Place(-3)]), Skeleton("atom", [Place(-4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_convert_quote"), [Place(-2), Place(1), "[]"]), Skeleton(Cache("atom_codes"), [Place(2), Place(0)])], 0, "single"))
add("sys_convert_token", 2, Clause(3, [Skeleton("back", [Place(-3)]), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_convert_quote"), [Place(-2), Place(1), "[]"]), Skeleton(Cache("sys_make_variable"), [Place(0), Place(2)])], 0, "back"))
add("sys_convert_token", 2, Clause(3, [Skeleton("decimal", [Place(-3)]), Skeleton("number", [Place(-4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("atom_codes"), [Place(-2), Place(1)]), Skeleton(Cache("atom_number"), [Place(0), Place(2)])], 0, "decimal"))
add("sys_convert_token", 2, Clause(4, [Skeleton("radix", [Place(-3), Place(-4)]), Skeleton("radix", [Place(-5), Place(2)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("atom_codes"), [Place(-2), Place(1)]), Skeleton(Cache("atom_integer"), [Place(0), Place(2), Place(3)])], 0, "radix"))
add("sys_convert_token", 2, Clause(3, [Skeleton("reference", [Place(-3)]), Skeleton("reference", [Place(-4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("atom_codes"), [Place(-2), Place(1)]), Skeleton(Cache("atom_reference"), [Place(0), Place(2)])], 0, "reference"))
add("sys_convert_token", 2, Clause(3, [Skeleton("codes", [Place(-3)]), Skeleton("codes", [Place(-4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_convert_quote"), [Place(2), Place(1), "[]"])], 0, "codes"))
add("sys_convert_token", 2, Clause(3, [Skeleton("code", [Place(-3)]), Skeleton("code", [Place(-4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_convert_code"), [Place(2), Place(1), "[]"])], 0, "code"))
add("sys_convert_token", 2, Clause(1, [Place(-2), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_quote", 3])], -1))
add("sys_convert_quote", 3, Clause(4, [Place(-3), Skeleton(".", [92, Place(-4)]), Place(-5)], [Skeleton(Cache("sys_convert_sep"), [Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_convert_quote"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_convert_quote", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("sys_convert_char"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_convert_quote"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_convert_quote", 3, Clause(1, ["[]", Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_sep", 2])], -1))
add("sys_convert_sep", 2, Clause(1, [Skeleton(".", [13, Skeleton(".", [10, Place(-2)])]), Place(0)], [], -1, "."))
add("sys_convert_sep", 2, Clause(1, [Skeleton(".", [10, Place(-2)]), Place(0)], [], -1, "."))
add("sys_convert_sep", 2, Clause(1, [Skeleton(".", [13, Place(-2)]), Place(0)], [], -1, "."))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_char", 3])], -1))
add("sys_convert_char", 3, Clause(4, [Place(-3), Skeleton(".", [92, Place(-4)]), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_convert_escape"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_convert_char", 3, Clause(3, [Place(-1), Skeleton(".", [Place(-2), Place(-3)]), Place(-4)], [Skeleton(Cache("sys_code_class"), [Place(0), "is_cntrl"]), Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["illegal_layout"]), Place(-1)])]), Skeleton(Cache("="), [Place(1), Place(2)])], -1, NotImplemented))
add("sys_convert_char", 3, Clause(3, [Place(-1), Skeleton(".", [Place(-2), Place(-3)]), Place(-4)], [Skeleton(Cache("sys_code_class"), [Place(0), "is_invalid"]), Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["illegal_unicode"]), Place(-1)])]), Skeleton(Cache("="), [Place(1), Place(2)])], -1, NotImplemented))
add("sys_convert_char", 3, Clause(1, [Place(-2), Skeleton(".", [Place(0), Place(-2)]), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_code", 3])], -1))
add("sys_convert_code", 3, Clause(3, [39, Skeleton(".", [39, Place(-3)]), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_convert_double"), [Place(1), Place(2)])], 0, 39))
add("sys_convert_code", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_convert_char"), [Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_double", 2])], -1))
add("sys_convert_double", 2, Clause(3, [Skeleton(".", [39, Place(-3)]), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, "."))
add("sys_convert_double", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["doubling_missing"]), Place(-1)])]), Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_escape", 3])], -1))
add("sys_convert_escape", 3, Clause(5, [Place(-3), Skeleton(".", [Place(-4), Place(-5)]), Place(-6)], [Skeleton(Cache("sys_is_escape"), [Place(2), Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(4)])], 0, NotImplemented))
add("sys_convert_escape", 3, Clause(6, [Place(-3), Skeleton(".", [Place(-4), Place(-5)]), Place(-6)], [Skeleton(Cache("sys_is_radix"), [Place(2), 8]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_convert_radix"), [Place(-2), 8, Place(3), Place(-5)]), Skeleton(Cache("atom_codes"), [Place(-7), Skeleton(".", [Place(2), Place(0)])]), Skeleton(Cache("atom_integer"), [Place(5), 8, Place(1)]), Skeleton(Cache("sys_convert_backslash"), [Place(3), Place(4)])], 0, NotImplemented))
add("sys_convert_escape", 3, Clause(5, [Place(-3), Skeleton(".", [120, Place(-4)]), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_convert_radix"), [Place(-2), 16, Place(2), Place(-4)]), Skeleton(Cache("atom_codes"), [Place(-6), Place(0)]), Skeleton(Cache("atom_integer"), [Place(4), 16, Place(1)]), Skeleton(Cache("sys_convert_backslash"), [Place(2), Place(3)])], 0, NotImplemented))
add("sys_convert_escape", 3, Clause(4, [Place(-3), Skeleton(".", [Place(1), Place(-4)]), Place(-5)], [Skeleton(Cache("sys_is_meta"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(3)])], 0, NotImplemented))
add("sys_convert_escape", 3, Clause(2, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["illegal_escape"]), Place(-1)])]), Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_backslash", 2])], -1))
add("sys_convert_backslash", 2, Clause(3, [Skeleton(".", [92, Place(-3)]), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, "."))
add("sys_convert_backslash", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["unbalanced_escape"]), Place(-1)])]), Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_radix", 4])], -1))
add("sys_convert_radix", 4, Clause(6, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Skeleton(".", [Place(1), Place(-6)]), Place(-7)], [Skeleton(Cache("sys_is_radix"), [Place(1), Place(3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_convert_radix"), [Place(2), Place(3), Place(4), Place(5)])], 0, "."))
add("sys_convert_radix", 4, Clause(1, ["[]", Place(-1), Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_stream_opts", 2])], -1))
add("sys_stream_opts", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_stream_opts", 2, Clause(4, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_stream_opt"), [Place(1), Place(3)]), Skeleton(Cache("sys_stream_opts"), [Place(2), Place(3)])], 0, "."))
add("sys_stream_opts", 2, Clause(1, ["[]", Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "[]"))
add("sys_stream_opts", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["list", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_stream_opt", 2])], -1))
add("sys_stream_opt", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_stream_opt", 2, Clause(3, [Skeleton("type", [Place(-3)]), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_check_type"), [Place(1), Place(-3)]), Skeleton(Cache("ir_object_set"), [Place(2), "encoding", Place(1)])], 0, "type"))
add("sys_stream_opt", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("domain_error", ["open_option", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_check_type", 2])], -1))
add("sys_check_type", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_check_type", 2, Clause(1, ["text", "utf8"], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "text"))
add("sys_check_type", 2, Clause(1, ["binary", "latin1"], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "binary"))
add("sys_check_type", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["type", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_open_opts", 2])], -1))
add("sys_open_opts", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_open_opts", 2, Clause(4, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_open_opt"), [Place(1), Place(3)]), Skeleton(Cache("sys_open_opts"), [Place(2), Place(3)])], 0, "."))
add("sys_open_opts", 2, Clause(1, ["[]", Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "[]"))
add("sys_open_opts", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["list", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_open_opt", 2])], -1))
add("sys_open_opt", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_open_opt", 2, Clause(3, [Skeleton("method", [Place(-3)]), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_check_atom"), [Place(1)]), Skeleton(Cache("ir_object_set"), [Place(2), "method", Place(1)])], 0, "method"))
add("sys_open_opt", 2, Clause(3, [Skeleton("headers", [Place(-3)]), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("ir_object_new"), [Place(-2)]), Skeleton(Cache("sys_header_opts"), [Place(1), Place(0)]), Skeleton(Cache("ir_object_set"), [Place(2), "headers", Place(0)])], 0, "headers"))
add("sys_open_opt", 2, Clause(3, [Skeleton("body", [Place(-3)]), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_check_atom"), [Place(1)]), Skeleton(Cache("ir_object_new"), [Place(-2)]), Skeleton(Cache("ir_object_set"), [Place(0), "text", Place(1)]), Skeleton(Cache("ir_object_set"), [Place(2), "body", Place(0)])], 0, "body"))
add("sys_open_opt", 2, Clause(4, [Skeleton("body", [Place(-3), Place(-4)]), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_check_atom"), [Place(1)]), Skeleton(Cache("ir_object_new"), [Place(-2)]), Skeleton(Cache("ir_object_set"), [Place(0), "text", Place(1)]), Skeleton(Cache("sys_stream_opts"), [Place(2), Place(0)]), Skeleton(Cache("ir_object_set"), [Place(3), "body", Place(0)])], 0, "body"))
add("sys_open_opt", 2, Clause(3, [Skeleton("type", [Place(-3)]), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_check_type"), [Place(1), Place(-3)]), Skeleton(Cache("ir_object_set"), [Place(2), "encoding", Place(1)])], 0, "type"))
add("sys_open_opt", 2, Clause(1, [Skeleton("uri", [Place(-1)]), Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "uri"))
add("sys_open_opt", 2, Clause(1, [Skeleton("status", [Place(-1)]), Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "status"))
add("sys_open_opt", 2, Clause(1, [Skeleton("fields", [Place(-1)]), Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "fields"))
add("sys_open_opt", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("domain_error", ["open_option", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_header_opts", 2])], -1))
add("sys_header_opts", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_header_opts", 2, Clause(4, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_header_opt"), [Place(1), Place(3)]), Skeleton(Cache("sys_header_opts"), [Place(2), Place(3)])], 0, "."))
add("sys_header_opts", 2, Clause(1, ["[]", Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "[]"))
add("sys_header_opts", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["list", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_header_opt", 2])], -1))
add("sys_header_opt", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_header_opt", 2, Clause(4, [Skeleton("-", [Place(-3), Place(-4)]), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_check_atom"), [Place(1)]), Skeleton(Cache("sys_check_atom"), [Place(2)]), Skeleton(Cache("ir_object_set"), [Place(3), Place(1), Place(2)])], 0, "-"))
add("sys_header_opt", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["pair", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_open_results", 2])], -1))
add("sys_open_results", 2, Clause(3, [Skeleton(".", [Place(-2), Place(-3)]), Place(-4)], [Skeleton(Cache("sys_open_result"), [Place(0), Place(2)]), Skeleton(Cache("sys_open_results"), [Place(1), Place(2)])], -1, "."))
add("sys_open_results", 2, Clause(0, ["[]", Place(-1)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_open_result", 2])], -1))
add("sys_open_result", 2, Clause(0, [Skeleton("method", [Place(-1)]), Place(-1)], [], -1, "method"))
add("sys_open_result", 2, Clause(0, [Skeleton("headers", [Place(-1)]), Place(-1)], [], -1, "headers"))
add("sys_open_result", 2, Clause(1, [Skeleton("body", [Place(-1)]), Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "body"))
add("sys_open_result", 2, Clause(0, [Skeleton("body", [Place(-1), Place(-1)]), Place(-1)], [], -1, "body"))
add("sys_open_result", 2, Clause(0, [Skeleton("type", [Place(-1)]), Place(-1)], [], -1, "type"))
add("sys_open_result", 2, Clause(2, [Skeleton("uri", [Place(-2)]), Place(-3)], [Skeleton(Cache("ir_object_current"), [Place(1), "uri", Place(0)])], -1, "uri"))
add("sys_open_result", 2, Clause(2, [Skeleton("status", [Place(-2)]), Place(-3)], [Skeleton(Cache("ir_object_current"), [Place(1), "status", Place(0)])], -1, "status"))
add("sys_open_result", 2, Clause(2, [Skeleton("fields", [Place(-2)]), Place(-3)], [Skeleton(Cache("ir_object_current"), [Place(1), "fields", Place(-3)]), Skeleton(Cache("sys_header_results"), [Place(1), Place(0)])], -1, "fields"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_header_results", 2])], -1))
add("sys_header_results", 2, Clause(3, [Place(-2), Place(-3)], [Skeleton(Cache("ir_object_keys"), [Place(0), Place(-4)]), Skeleton(Cache("sys_header_results"), [Place(2), Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_header_results", 3])], -1))
add("sys_header_results", 3, Clause(0, ["[]", Place(-1), "[]"], [], -1, "[]"))
add("sys_header_results", 3, Clause(5, [Skeleton(".", [Place(-2), Place(-3)]), Place(-4), Skeleton(".", [Skeleton("-", [Place(0), Place(-5)]), Place(-6)])], [Skeleton(Cache("ir_object_current"), [Place(2), Place(0), Place(3)]), Skeleton(Cache("sys_header_results"), [Place(1), Place(2), Place(4)])], -1, "."))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_opts", 3])], -1))
add("sys_write_opts", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_write_opts", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_opt"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("sys_write_opts"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_write_opts", 3, Clause(2, ["[]", Place(-3), Place(1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "[]"))
add("sys_write_opts", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["list", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_opt", 3])], -1))
add("sys_write_opt", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_write_opt", 3, Clause(4, [Skeleton("variable_names", [Place(-3)]), Skeleton("v", [Place(-1), Place(-4), Place(-5)]), Skeleton("v", [Place(1), Place(2), Place(3)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_variable_names"), [Place(1)])], 0, "variable_names"))
add("sys_write_opt", 3, Clause(5, [Skeleton("quoted", [Place(-3)]), Skeleton("v", [Place(-4), Place(-5), Place(-6)]), Skeleton("v", [Place(2), Place(-4), Place(4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_opt_boolean"), [Place(1), 1, Place(3), Place(2)])], 0, "quoted"))
add("sys_write_opt", 3, Clause(5, [Skeleton("ignore_ops", [Place(-3)]), Skeleton("v", [Place(-4), Place(-5), Place(-6)]), Skeleton("v", [Place(2), Place(-4), Place(4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_opt_boolean"), [Place(1), 2, Place(3), Place(2)])], 0, "ignore_ops"))
add("sys_write_opt", 3, Clause(5, [Skeleton("format", [Place(-3)]), Skeleton("v", [Place(-4), Place(-5), Place(-6)]), Skeleton("v", [Place(2), Place(-4), Place(4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_opt_boolean"), [Place(1), 4, Place(3), Place(2)])], 0, "format"))
add("sys_write_opt", 3, Clause(5, [Skeleton("numbervars", [Place(-3)]), Skeleton("v", [Place(-4), Place(-5), Place(-6)]), Skeleton("v", [Place(2), Place(-4), Place(4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_opt_boolean"), [Place(1), 8, Place(3), Place(2)])], 0, "numbervars"))
add("sys_write_opt", 3, Clause(4, [Skeleton("priority", [Place(-3)]), Skeleton("v", [Place(-4), Place(-5), Place(-1)]), Skeleton("v", [Place(2), Place(3), Place(1)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_check_integer"), [Place(1)])], 0, "priority"))
add("sys_write_opt", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("domain_error", ["write_option", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_variable_names", 1])], -1))
add("sys_write_variable_names", 1, Clause(1, [Place(-2)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_write_variable_names", 1, Clause(3, [Skeleton(".", [Place(-3), Place(-4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_variable_name"), [Place(1)]), Skeleton(Cache("sys_write_variable_names"), [Place(2)])], 0, "."))
add("sys_write_variable_names", 1, Clause(1, ["[]"], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "[]"))
add("sys_write_variable_names", 1, Clause(1, [Place(-2)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["list", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_variable_name", 1])], -1))
add("sys_write_variable_name", 1, Clause(1, [Place(-2)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_write_variable_name", 1, Clause(2, [Skeleton("=", [Place(-3), Place(-1)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_check_atom"), [Place(1)])], 0, "="))
add("sys_write_variable_name", 1, Clause(1, [Place(-2)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["variable_name", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_opts", 3])], -1))
add("sys_read_opts", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_read_opts", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_read_opt"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("sys_read_opts"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_read_opts", 3, Clause(2, ["[]", Place(-3), Place(1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "[]"))
add("sys_read_opts", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["list", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_opt", 3])], -1))
add("sys_read_opt", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_read_opt", 3, Clause(2, [Skeleton("variable_names", [Place(-1)]), Place(-3), Place(1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "variable_names"))
add("sys_read_opt", 3, Clause(2, [Skeleton("singletons", [Place(-1)]), Place(-3), Place(1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "singletons"))
add("sys_read_opt", 3, Clause(3, [Skeleton("priority", [Place(-3)]), Skeleton("z", [Place(-1), Place(-4)]), Skeleton("z", [Place(1), Place(2)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_check_integer"), [Place(1)])], 0, "priority"))
add("sys_read_opt", 3, Clause(3, [Skeleton("end_of_term", [Place(-3)]), Skeleton("z", [Place(-4), Place(-1)]), Skeleton("z", [Place(2), Place(-4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_check_end_of_term"), [Place(1), Place(2)])], 0, "end_of_term"))
add("sys_read_opt", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("domain_error", ["read_option", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_check_end_of_term", 2])], -1))
add("sys_check_end_of_term", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_check_end_of_term", 2, Clause(1, ["dot", 0], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "dot"))
add("sys_check_end_of_term", 2, Clause(1, ["eof", 1], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "eof"))
add("sys_check_end_of_term", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("domain_error", ["end_of_term", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_results", 2])], -1))
add("sys_read_results", 2, Clause(3, [Skeleton(".", [Place(-2), Place(-3)]), Place(-4)], [Skeleton(Cache("sys_read_result"), [Place(0), Place(2)]), Skeleton(Cache("sys_read_results"), [Place(1), Place(2)])], -1, "."))
add("sys_read_results", 2, Clause(0, ["[]", Place(-1)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_result", 2])], -1))
add("sys_read_result", 2, Clause(2, [Skeleton("variable_names", [Place(-2)]), Skeleton("s", [Place(-3), Place(-1)])], [Skeleton(Cache("reverse"), [Place(1), Place(0)])], -1, "variable_names"))
add("sys_read_result", 2, Clause(2, [Skeleton("singletons", [Place(-2)]), Skeleton("s", [Place(-1), Place(-3)])], [Skeleton(Cache("reverse"), [Place(1), Place(0)])], -1, "singletons"))
add("sys_read_result", 2, Clause(0, [Skeleton("priority", [Place(-1)]), Place(-1)], [], -1, "priority"))
add("sys_read_result", 2, Clause(0, [Skeleton("end_of_term", [Place(-1)]), Place(-1)], [], -1, "end_of_term"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_opt_boolean", 4])], -1))
add("sys_opt_boolean", 4, Clause(1, [Place(-2), Place(-1), Place(-1), Place(-1)], [Skeleton(Cache("var"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", ["instantiation_error", Place(-1)])])], -1, NotImplemented))
add("sys_opt_boolean", 4, Clause(4, ["true", Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("\\/"), [Place(2), Place(1)]), Place(3)])], 0, "true"))
add("sys_opt_boolean", 4, Clause(4, ["false", Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("/\\"), [Place(2), Skeleton(Cache("\\"), [Place(1)])]), Place(3)])], 0, "false"))
add("sys_opt_boolean", 4, Clause(1, [Place(-2), Place(-1), Place(-1), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["boolean", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_proper_atom", 1])], -1))
add("sys_proper_atom", 1, Clause(3, [Skeleton(".", [Place(-2), Place(-3)])], [Skeleton(Cache("sys_code_class"), [Place(0), Place(-4)]), Skeleton(Cache("sys_proper_atom"), [Place(2), Skeleton(".", [Place(0), Place(1)])])], -1, "."))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_proper_atom", 2])], -1))
add("sys_proper_atom", 2, Clause(1, ["is_ident", Skeleton(".", [Place(-1), Place(-2)])], [Skeleton(Cache("sys_proper_atom_name"), [Place(0)])], -1, "is_ident"))
add("sys_proper_atom", 2, Clause(1, ["is_graphic", Compound(".", [46, "[]"])], [Skeleton(Cache("$CUT"), [Place(0)]), Cache("fail")], 0, "is_graphic"))
add("sys_proper_atom", 2, Clause(1, ["is_graphic", Skeleton(".", [47, Skeleton(".", [42, Place(-1)])])], [Skeleton(Cache("$CUT"), [Place(0)]), Cache("fail")], 0, "is_graphic"))
add("sys_proper_atom", 2, Clause(1, ["is_graphic", Skeleton(".", [Place(-1), Place(-2)])], [Skeleton(Cache("sys_proper_atom_graphic"), [Place(0)])], -1, "is_graphic"))
add("sys_proper_atom", 2, Clause(1, ["is_solo", Compound(".", [39, "[]"])], [Skeleton(Cache("$CUT"), [Place(0)]), Cache("fail")], 0, "is_solo"))
add("sys_proper_atom", 2, Clause(1, ["is_solo", Compound(".", [96, "[]"])], [Skeleton(Cache("$CUT"), [Place(0)]), Cache("fail")], 0, "is_solo"))
add("sys_proper_atom", 2, Clause(1, ["is_solo", Compound(".", [34, "[]"])], [Skeleton(Cache("$CUT"), [Place(0)]), Cache("fail")], 0, "is_solo"))
add("sys_proper_atom", 2, Clause(1, ["is_solo", Compound(".", [37, "[]"])], [Skeleton(Cache("$CUT"), [Place(0)]), Cache("fail")], 0, "is_solo"))
add("sys_proper_atom", 2, Clause(0, ["is_solo", Skeleton(".", [Place(-1), "[]"])], [], -1, "is_solo"))
add("sys_proper_atom", 2, Clause(1, ["is_punct", Compound(".", [91, Compound(".", [93, "[]"])])], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "is_punct"))
add("sys_proper_atom", 2, Clause(0, ["is_punct", Compound(".", [123, Compound(".", [125, "[]"])])], [], -1, "is_punct"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_proper_atom_name", 1])], -1))
add("sys_proper_atom_name", 1, Clause(3, [Skeleton(".", [Place(-3), Place(-4)])], [Skeleton(Cache("sys_code_class"), [Place(1), Place(-3)]), Skeleton(Cache("sys_name_class"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_proper_atom_name"), [Place(2)])], 0, "."))
add("sys_proper_atom_name", 1, Clause(0, ["[]"], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_proper_atom_graphic", 1])], -1))
add("sys_proper_atom_graphic", 1, Clause(3, [Skeleton(".", [Place(-3), Place(-4)])], [Skeleton(Cache("sys_code_class"), [Place(1), "is_graphic"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_proper_atom_graphic"), [Place(2)])], 0, "."))
add("sys_proper_atom_graphic", 1, Clause(0, ["[]"], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_escape_codes", 3])], -1))
add("sys_escape_codes", 3, Clause(4, [Skeleton(".", [Place(-2), Place(-3)]), Place(-4), Place(-5)], [Skeleton(Cache("sys_escape_code"), [Place(0), Place(2), Place(-4)]), Skeleton(Cache("sys_escape_codes"), [Place(1), Place(2), Place(3)])], -1, "."))
add("sys_escape_codes", 3, Clause(1, ["[]", Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_escape_code", 3])], -1))
add("sys_escape_code", 3, Clause(5, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_is_escape"), [Place(-6), Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Skeleton(".", [92, Skeleton(".", [Place(4), Place(3)])])])], 0, NotImplemented))
add("sys_escape_code", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_is_meta"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Skeleton(".", [92, Skeleton(".", [Place(1), Place(3)])])])], 0, NotImplemented))
add("sys_escape_code", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_code_class"), [Place(1), "is_cntrl"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_escape_code2"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_escape_code", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_code_class"), [Place(1), "is_invalid"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_escape_code2"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_escape_code", 3, Clause(1, [Place(-2), Skeleton(".", [Place(0), Place(-2)]), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_escape_code2", 3])], -1))
add("sys_escape_code2", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("=<"), [Place(1), 511]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("atom_integer"), [Place(-2), 8, Place(1)]), Skeleton(Cache("atom_codes"), [Place(0), Place(-2)]), Skeleton(Cache("="), [Place(2), Skeleton(".", [92, Place(-4)])]), Skeleton(Cache("sys_escape_codes2"), [Place(0), Place(2), Place(-4)]), Skeleton(Cache("="), [Place(2), Skeleton(".", [92, Place(3)])])], 0, NotImplemented))
add("sys_escape_code2", 3, Clause(4, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("atom_integer"), [Place(-5), 16, Place(0)]), Skeleton(Cache("atom_codes"), [Place(3), Place(-5)]), Skeleton(Cache("="), [Place(1), Skeleton(".", [92, Skeleton(".", [120, Place(-3)])])]), Skeleton(Cache("sys_escape_codes2"), [Place(3), Place(1), Place(-3)]), Skeleton(Cache("="), [Place(1), Skeleton(".", [92, Place(2)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_escape_codes2", 3])], -1))
add("sys_escape_codes2", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Skeleton(".", [Place(1), Place(-3)])]), Skeleton(Cache("sys_escape_codes2"), [Place(2), Place(1), Place(4)])], 0, "."))
add("sys_escape_codes2", 3, Clause(1, ["[]", Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_polate", 3])], -1))
add("sys_polate", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("atom_codes"), [Place(1), Place(-3)]), Skeleton(Cache("sys_polate_format"), [Place(2), Place(0), Place(1), "[]"])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_polate_format", 4])], -1))
add("sys_polate_format", 4, Clause(5, [Place(-3), Place(-4), Skeleton(".", [36, Skeleton(".", [36, Place(-5)])]), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Skeleton(".", [Place(-3), Place(-2)])]), Skeleton(Cache("write"), [Place(2), Place(1)]), Skeleton(Cache("sys_polate_format"), [Place(0), Place(2), Place(3), Place(4)])], 0, NotImplemented))
add("sys_polate_format", 4, Clause(5, [Place(-3), Place(-4), Skeleton(".", [36, Place(-5)]), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Skeleton(".", [Place(-3), Place(-2)])]), Skeleton(Cache("writeq"), [Place(2), Place(1)]), Skeleton(Cache("sys_polate_format"), [Place(0), Place(2), Place(3), Place(4)])], 0, NotImplemented))
add("sys_polate_format", 4, Clause(7, [Place(-3), Place(-4), Skeleton(".", [Place(-5), Place(-6)]), Place(-7)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_polate_text"), [Place(-2), Place(4), Place(-6)]), Skeleton(Cache("atom_codes"), [Place(-8), Skeleton(".", [Place(3), Place(0)])]), Skeleton(Cache("put_atom"), [Place(2), Place(6)]), Skeleton(Cache("sys_polate_format"), [Place(1), Place(2), Place(4), Place(5)])], 0, NotImplemented))
add("sys_polate_format", 4, Clause(1, ["[]", Place(-1), Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_polate_text", 3])], -1))
add("sys_polate_text", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Skeleton(".", [Place(1), Place(-5)]), Place(-6)], [Skeleton(Cache("\\=="), [Place(1), 36]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_polate_text"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_polate_text", 3, Clause(1, ["[]", Place(-2), Place(0)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_name", 2])], -1))
add("sys_listing_name", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("<"), [Place(1), 26]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("+"), [Place(1), 65]), Place(-3)]), Skeleton(Cache("char_code"), [Place(2), Place(1)])], 0, NotImplemented))
add("sys_listing_name", 2, Clause(4, [Place(-2), Place(-3)], [Skeleton(Cache("$EVAL"), [Skeleton(Cache("+"), [Skeleton(Cache("rem"), [Place(0), 26]), 65]), Place(-4)]), Skeleton(Cache("char_code"), [Place(-5), Place(2)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("+"), [Skeleton(Cache("//"), [Place(0), 26]), 1]), Place(-2)]), Skeleton(Cache("atom_integer"), [Place(-4), 10, Place(0)]), Skeleton(Cache("atom_concat"), [Place(3), Place(2), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_multifile_safe"), ["strings", 3])], -1))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["strings", 3])], -1))
add("strings", 3, Clause(0, ["syntax_error.illegal_number", "de", "Keine Nummer."], [], -1, "syntax_error.illegal_number"))
add("strings", 3, Clause(0, ["syntax_error.illegal_reference", "de", "Keine Referenz."], [], -1, "syntax_error.illegal_reference"))
add("strings", 3, Clause(0, ["syntax_error.illegal_date", "de", "Kein Datum."], [], -1, "syntax_error.illegal_date"))
add("strings", 3, Clause(0, ["syntax_error.illegal_layout", "de", "Unerlaubtes Druckbildzeichen in Zeichenkette."], [], -1, "syntax_error.illegal_layout"))
add("strings", 3, Clause(0, ["syntax_error.illegal_unicode", "de", "Unerlaubtes Unicodezeichen im Text."], [], -1, "syntax_error.illegal_unicode"))
add("strings", 3, Clause(0, ["syntax_error.doubling_missing", "de", "Anführungszeichen nicht zweifach."], [], -1, "syntax_error.doubling_missing"))
add("strings", 3, Clause(0, ["syntax_error.illegal_escape", "de", "Unerlaubte Steuersequenz in Zeichenkette."], [], -1, "syntax_error.illegal_escape"))
add("strings", 3, Clause(0, ["syntax_error.unbalanced_escape", "de", "Steuersequenz nicht abgeschlossen."], [], -1, "syntax_error.unbalanced_escape"))
add("strings", 3, Clause(0, ["syntax_error.end_of_file_in_block_comment", "de", "Blockkommentar nicht geschlossen."], [], -1, "syntax_error.end_of_file_in_block_comment"))
add("strings", 3, Clause(0, ["syntax_error.end_of_line_as_character", "de", "Unerlaubtes Zeilenende als Zeichen."], [], -1, "syntax_error.end_of_line_as_character"))
add("strings", 3, Clause(0, ["syntax_error.singleton_var", "de", "Alleinstehende Variable(n) $."], [], -1, "syntax_error.singleton_var"))
add("strings", 3, Clause(0, ["syntax_error.multiton_var", "de", "Mehrfache markierte Variable(n) $."], [], -1, "syntax_error.multiton_var"))
add("strings", 3, Clause(0, ["syntax_error.bracket_balance", "de", "Rechte eckige Klammer (\"]\") fehlt."], [], -1, "syntax_error.bracket_balance"))
add("strings", 3, Clause(0, ["syntax_error.brace_balance", "de", "Rechte geschweifte Klammer (\"}\") fehlt."], [], -1, "syntax_error.brace_balance"))
add("strings", 3, Clause(0, ["syntax_error.parenthesis_balance", "de", "Rechte runde Klammer (\")\") fehlt."], [], -1, "syntax_error.parenthesis_balance"))
add("strings", 3, Clause(0, ["syntax_error.end_of_clause_expected", "de", "Überflüssiges Token."], [], -1, "syntax_error.end_of_clause_expected"))
add("strings", 3, Clause(0, ["syntax_error.operator_clash", "de", "Runde Klammer (\"(\") vor Operator fehlt."], [], -1, "syntax_error.operator_clash"))
add("strings", 3, Clause(0, ["syntax_error.cannot_start_term", "de", "Term fehlt."], [], -1, "syntax_error.cannot_start_term"))
add("strings", 3, Clause(0, ["syntax_error.illegal_number", "", "Not a number."], [], -1, "syntax_error.illegal_number"))
add("strings", 3, Clause(0, ["syntax_error.illegal_reference", "", "Not a reference."], [], -1, "syntax_error.illegal_reference"))
add("strings", 3, Clause(0, ["syntax_error.illegal_date", "", "Not a date."], [], -1, "syntax_error.illegal_date"))
add("strings", 3, Clause(0, ["syntax_error.illegal_layout", "", "Illegal layout character in string."], [], -1, "syntax_error.illegal_layout"))
add("strings", 3, Clause(0, ["syntax_error.illegal_unicode", "", "Illegal Unicode character in text."], [], -1, "syntax_error.illegal_unicode"))
add("strings", 3, Clause(0, ["syntax_error.doubling_missing", "", "Quote not doubled."], [], -1, "syntax_error.doubling_missing"))
add("strings", 3, Clause(0, ["syntax_error.illegal_escape", "", "Illegal escape sequence in string."], [], -1, "syntax_error.illegal_escape"))
add("strings", 3, Clause(0, ["syntax_error.unbalanced_escape", "", "Escape sequence not closed."], [], -1, "syntax_error.unbalanced_escape"))
add("strings", 3, Clause(0, ["syntax_error.end_of_file_in_block_comment", "", "Block comment not closed."], [], -1, "syntax_error.end_of_file_in_block_comment"))
add("strings", 3, Clause(0, ["syntax_error.end_of_line_as_character", "", "Illegal end of line as character."], [], -1, "syntax_error.end_of_line_as_character"))
add("strings", 3, Clause(0, ["syntax_error.singleton_var", "", "Singleton variable(s) $."], [], -1, "syntax_error.singleton_var"))
add("strings", 3, Clause(0, ["syntax_error.multiton_var", "", "Multiton marked variable(s) $."], [], -1, "syntax_error.multiton_var"))
add("strings", 3, Clause(0, ["syntax_error.bracket_balance", "", "Right bracket (\"]\") missing."], [], -1, "syntax_error.bracket_balance"))
add("strings", 3, Clause(0, ["syntax_error.brace_balance", "", "Right brace (\"}\") missing."], [], -1, "syntax_error.brace_balance"))
add("strings", 3, Clause(0, ["syntax_error.parenthesis_balance", "", "Right parenthesis (\")\") missing."], [], -1, "syntax_error.parenthesis_balance"))
add("strings", 3, Clause(0, ["syntax_error.end_of_clause_expected", "", "Superfluous token."], [], -1, "syntax_error.end_of_clause_expected"))
add("strings", 3, Clause(0, ["syntax_error.operator_clash", "", "Parenthesis (\"(\") before operator missing."], [], -1, "syntax_error.operator_clash"))
add("strings", 3, Clause(0, ["syntax_error.cannot_start_term", "", "Term missing."], [], -1, "syntax_error.cannot_start_term"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_infix", 3])], -1))
add("sys_is_infix", 3, Clause(0, ["xfx", 1, 1], [], -1, "xfx"))
add("sys_is_infix", 3, Clause(0, ["yfx", 0, 1], [], -1, "yfx"))
add("sys_is_infix", 3, Clause(0, ["xfy", 1, 0], [], -1, "xfy"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_prefix", 2])], -1))
add("sys_is_prefix", 2, Clause(0, ["fx", 1], [], -1, "fx"))
add("sys_is_prefix", 2, Clause(0, ["fy", 0], [], -1, "fy"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_postfix", 2])], -1))
add("sys_is_postfix", 2, Clause(0, ["xf", 1], [], -1, "xf"))
add("sys_is_postfix", 2, Clause(0, ["yf", 0], [], -1, "yf"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_term", 3])], -1))
add("sys_write_term", 3, Clause(5, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_write_opts"), [Place(2), Compound("v", ["[]", 0, 1200]), Skeleton("v", [Place(-4), Place(-5), Place(-6)])]), Skeleton(Cache("ir_object_set"), [Place(0), "last", -1]), Skeleton(Cache("sys_write_priority"), [Place(1), Skeleton("w", [1, Place(4), 0]), Skeleton("v", [Place(0), Place(3), Place(2)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_priority", 3])], -1))
add("sys_write_priority", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("number"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_number"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_write_priority", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("atom"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_atom"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_write_priority", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("reference"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_reference"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_write_priority", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("var"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_var"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_write_priority", 3, Clause(4, [Skeleton("$VAR", [Place(-3)]), Place(-1), Place(-4)], [Skeleton(Cache("sys_current_flags"), [Place(2), Place(-5)]), Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(3), 8]), 0]), Skeleton(Cache("integer"), [Place(1)]), Skeleton(Cache(">="), [Place(1), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_listing_name"), [Place(1), Place(-3)]), Skeleton(Cache("sys_current_stream"), [Place(2), Place(-4)]), Skeleton(Cache("sys_safe_atom"), [Place(2), Place(1), 0])], 0, "$VAR"))
add("sys_write_priority", 3, Clause(5, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_current_flags"), [Place(3), Place(-6)]), Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(4), 2]), 0]), Skeleton(Cache("compound"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_compound"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_write_priority", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Skeleton("w", [Place(-1), Place(-1), Place(-5)]), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_current_stream"), [Place(4), Place(-2)]), Skeleton(Cache("put_atom"), [Place(0), "["]), Skeleton(Cache("sys_write_priority"), [Place(1), Skeleton("w", [1, 999, Place(3)]), Place(4)]), Skeleton(Cache("sys_write_list"), [Place(2), Place(3), Place(4)]), Skeleton(Cache("put_atom"), [Place(0), "]"])], 0, "."))
add("sys_write_priority", 3, Clause(4, [Skeleton("{}", [Place(-3)]), Skeleton("w", [Place(-1), Place(-1), Place(-4)]), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_current_stream"), [Place(3), Place(-2)]), Skeleton(Cache("put_atom"), [Place(0), "{"]), Skeleton(Cache("sys_write_priority"), [Place(1), Skeleton("w", [1, 1200, Place(2)]), Place(3)]), Skeleton(Cache("put_atom"), [Place(0), "}"])], 0, "{}"))
add("sys_write_priority", 3, Clause(7, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("functor"), [Place(1), Place(-6), 1]), Skeleton(Cache("sys_op"), [Place(4), Place(-6), Place(-7), Place(-8), Place(-1)]), Skeleton(Cache("sys_is_prefix"), [Place(4), Place(-6)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_prefix"), [Place(1), Place(2), Place(3), Place(5), Place(6), Place(4)])], 0, NotImplemented))
add("sys_write_priority", 3, Clause(7, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("functor"), [Place(1), Place(-6), 1]), Skeleton(Cache("sys_op"), [Place(4), Place(-6), Place(-7), Place(-8), Place(-1)]), Skeleton(Cache("sys_is_postfix"), [Place(4), Place(-6)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_postfix"), [Place(1), Place(2), Place(3), Place(5), Place(6), Place(4)])], 0, NotImplemented))
add("sys_write_priority", 3, Clause(8, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("functor"), [Place(1), Place(-6), 2]), Skeleton(Cache("sys_op"), [Place(4), Place(-6), Place(-7), Place(-8), Place(-1)]), Skeleton(Cache("sys_is_infix"), [Place(4), Place(-6), Place(-9)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_infix"), [Place(1), Place(2), Place(3), Place(5), Place(6), Place(4), Place(7)])], 0, NotImplemented))
add("sys_write_priority", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_write_compound"), [Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_number", 3])], -1))
add("sys_write_number", 3, Clause(4, [Place(-2), Skeleton("w", [Place(-3), Place(-1), Place(-1)]), Place(-4)], [Skeleton(Cache("atom_number"), [Place(-5), Place(0)]), Skeleton(Cache("sys_current_stream"), [Place(2), Place(-4)]), Skeleton(Cache("sys_safe_atom"), [Place(2), Place(3), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_atom", 3])], -1))
add("sys_write_atom", 3, Clause(5, [Place(-3), Skeleton("w", [Place(-4), Place(-1), Place(-1)]), Place(-5)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 1]), 0]), Skeleton(Cache("sys_op"), [Place(1), Place(-6), Place(-1), Place(-1), Place(-1)]), Skeleton(Cache("sys_is_prefix"), [Place(4), Place(-1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_current_stream"), [Place(3), Place(-2)]), Skeleton(Cache("sys_put_lparen"), [Place(0), 1, 0, 1200, Place(2), Place(-1)]), Skeleton(Cache("sys_put_atom"), [Place(1), 0, Place(3), Place(-1)]), Skeleton(Cache("put_atom"), [Place(0), ")"])], 0, NotImplemented))
add("sys_write_atom", 3, Clause(3, [Place(-2), Skeleton("w", [Place(-3), Place(-1), Place(-1)]), Place(-4)], [Skeleton(Cache("sys_put_atom"), [Place(0), Place(1), Place(2), Place(-1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_reference", 3])], -1))
add("sys_write_reference", 3, Clause(3, [Place(-2), Skeleton("w", [Place(-3), Place(-1), Place(-1)]), Place(-4)], [Skeleton(Cache("sys_put_reference"), [Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_prefix", 6])], -1))
add("sys_write_prefix", 6, Clause(12, [Place(-2), Skeleton("w", [Place(-3), Place(-4), Place(-5)]), Place(-6), Place(-7), Place(-8), Place(-9)], [Skeleton(Cache("=.."), [Place(0), Skeleton(".", [Place(-2), Skeleton(".", [Place(-10), "[]"])])]), Skeleton(Cache("sys_current_stream"), [Place(4), Place(-11)]), Skeleton(Cache("sys_current_flags"), [Place(4), Place(-12)]), Skeleton(Cache("sys_put_lparen"), [Place(9), Place(7), Place(2), Place(5), Place(1), Place(-13)]), Skeleton(Cache("sys_put_adjust"), [Place(3), Place(10), Place(6), Place(-12)]), Skeleton(Cache("sys_oper_minus"), [Place(0), Place(11), Place(-5)]), Skeleton(Cache("sys_put_atom"), [Place(0), Place(11), Place(4), Place(-1)]), Skeleton(Cache("sys_put_rspace"), [Place(9), Place(6), Place(3), Place(-5)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(5), Place(7)]), Place(-8)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("/\\"), [Place(3), Compound(Cache("\\"), [8])]), Place(-5)]), Skeleton(Cache("sys_write_priority"), [Place(8), Skeleton("w", [Place(3), Place(6), Place(10)]), Place(4)]), Skeleton(Cache("sys_put_rparen"), [Place(9), Place(7), Place(2), Place(5), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_postfix", 6])], -1))
add("sys_write_postfix", 6, Clause(11, [Place(-2), Skeleton("w", [Place(-3), Place(-4), Place(-5)]), Place(-6), Place(-7), Place(-8), Place(-9)], [Skeleton(Cache("=.."), [Place(0), Skeleton(".", [Place(-2), Skeleton(".", [Place(-10), "[]"])])]), Skeleton(Cache("sys_current_stream"), [Place(4), Place(-11)]), Skeleton(Cache("sys_put_lparen"), [Place(9), 1, Place(2), Place(5), Place(1), Place(-12)]), Skeleton(Cache("sys_oper_escape"), [Place(0), Place(10), Place(-12)]), Skeleton(Cache("sys_oper_side"), [Place(7), Place(10), Place(-12)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(5), Place(7)]), Place(-9)]), Skeleton(Cache("sys_write_priority"), [Place(8), Skeleton("w", [Place(10), Place(7), Place(3)]), Place(4)]), Skeleton(Cache("sys_put_lspace"), [Place(9), Place(6)]), Skeleton(Cache("sys_put_oper"), [Place(0), Place(4), Place(-1)]), Skeleton(Cache("sys_put_rparen"), [Place(9), 1, Place(2), Place(5), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_infix", 7])], -1))
add("sys_write_infix", 7, Clause(15, [Place(-2), Skeleton("w", [Place(-3), Place(-4), Place(-5)]), Place(-6), Place(-7), Place(-8), Place(-9), Place(-10)], [Skeleton(Cache("=.."), [Place(0), Skeleton(".", [Place(-2), Skeleton(".", [Place(-11), Skeleton(".", [Place(-12), "[]"])])])]), Skeleton(Cache("sys_current_stream"), [Place(4), Place(-13)]), Skeleton(Cache("sys_current_flags"), [Place(4), Place(-14)]), Skeleton(Cache("sys_put_lparen"), [Place(11), Place(8), Place(2), Place(5), Place(1), Place(-15)]), Skeleton(Cache("sys_put_indent"), [Place(11), Place(3), Place(12), Place(6), Place(8), Place(2), Place(5), Place(1), Place(-5)]), Skeleton(Cache("sys_oper_escape"), [Place(0), Place(13), Place(-16)]), Skeleton(Cache("sys_oper_side"), [Place(7), Place(14), Place(-16)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(5), Place(7)]), Place(-9)]), Skeleton(Cache("sys_write_priority"), [Place(9), Skeleton("w", [Place(14), Place(7), Place(3)]), Place(4)]), Skeleton(Cache("sys_put_lformat"), [Place(11), Place(3), Place(12), Place(6)]), Skeleton(Cache("sys_put_oper"), [Place(0), Place(4), Place(-2)]), Skeleton(Cache("sys_put_rformat"), [Place(11), Place(3), Place(12), Place(6), Place(0), Place(13)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(5), Place(8)]), Place(-2)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("/\\"), [Place(13), Compound(Cache("\\"), [14])]), Place(-15)]), Skeleton(Cache("sys_write_priority"), [Place(10), Skeleton("w", [Place(13), Place(0), Place(3)]), Place(4)]), Skeleton(Cache("sys_put_rparen"), [Place(11), Place(8), Place(2), Place(5), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_oper", 3])], -1))
add("sys_put_oper", 3, Clause(2, [",", Place(-3), ","], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_current_stream"), [Place(1), Place(-3)]), Skeleton(Cache("put_atom"), [Place(1), ","])], 0, ","))
add("sys_put_oper", 3, Clause(2, ["|", Place(-3), "|"], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_current_stream"), [Place(1), Place(-3)]), Skeleton(Cache("put_atom"), [Place(1), "|"])], 0, "|"))
add("sys_put_oper", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_put_atom"), [Place(0), 0, Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_list", 3])], -1))
add("sys_write_list", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("var"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_current_stream"), [Place(3), Place(-2)]), Skeleton(Cache("put_atom"), [Place(0), "|"]), Skeleton(Cache("sys_write_priority"), [Place(1), Skeleton("w", [1, 999, Place(2)]), Place(3)])], 0, NotImplemented))
add("sys_write_list", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_current_stream"), [Place(4), Place(-2)]), Skeleton(Cache("put_atom"), [Place(0), ", "]), Skeleton(Cache("sys_write_priority"), [Place(1), Skeleton("w", [1, 999, Place(3)]), Place(4)]), Skeleton(Cache("sys_write_list"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_write_list", 3, Clause(1, ["[]", Place(-1), Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "[]"))
add("sys_write_list", 3, Clause(4, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_current_stream"), [Place(2), Place(-5)]), Skeleton(Cache("put_atom"), [Place(3), "|"]), Skeleton(Cache("sys_write_priority"), [Place(0), Skeleton("w", [1, 999, Place(1)]), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_compound", 3])], -1))
add("sys_write_compound", 3, Clause(7, [Place(-2), Skeleton("w", [Place(-3), Place(-1), Place(-4)]), Place(-5)], [Skeleton(Cache("=.."), [Place(0), Skeleton(".", [Place(-2), Skeleton(".", [Place(-6), Place(-7)])])]), Skeleton(Cache("sys_current_stream"), [Place(3), Place(-8)]), Skeleton(Cache("sys_put_symbol"), [Place(0), Place(1), Place(3)]), Skeleton(Cache("put_atom"), [Place(6), "("]), Skeleton(Cache("sys_write_priority"), [Place(4), Skeleton("w", [1, 999, Place(2)]), Place(3)]), Skeleton(Cache("sys_write_args"), [Place(5), Place(2), Place(3)]), Skeleton(Cache("put_atom"), [Place(6), ")"])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_symbol", 3])], -1))
add("sys_put_symbol", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("reference"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_put_reference"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_put_symbol", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_put_atom"), [Place(0), Place(1), Place(2), Place(-1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_args", 3])], -1))
add("sys_write_args", 3, Clause(5, [Skeleton(".", [Place(-2), Place(-3)]), Place(-4), Place(-5)], [Skeleton(Cache("sys_current_stream"), [Place(3), Place(-6)]), Skeleton(Cache("put_atom"), [Place(4), ", "]), Skeleton(Cache("sys_write_priority"), [Place(0), Skeleton("w", [1, 999, Place(2)]), Place(3)]), Skeleton(Cache("sys_write_args"), [Place(1), Place(2), Place(3)])], -1, "."))
add("sys_write_args", 3, Clause(0, ["[]", Place(-1), Place(-1)], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_atom_string", 2])], -1))
add("sys_atom_string", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("atom_codes"), [Place(1), Place(-3)]), Skeleton(Cache("sys_escape_codes"), [Place(1), Place(-3), Compound(".", [34, "[]"])]), Skeleton(Cache("atom_codes"), [Place(0), Skeleton(".", [34, Place(1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_atom_char", 2])], -1))
add("sys_atom_char", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("=<"), [0, Place(2)]), Skeleton(Cache("=<"), [Place(2), 1114111]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_escape_code"), [Place(2), Place(-4), "[]"]), Skeleton(Cache("atom_codes"), [Place(1), Skeleton(".", [48, Skeleton(".", [39, Place(2)])])])], 0, NotImplemented))
add("sys_atom_char", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("=<"), [-1114111, Place(2)]), Skeleton(Cache("=<"), [Place(2), -1]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(2)]), Place(-4)]), Skeleton(Cache("sys_escape_code"), [Place(2), Place(-4), "[]"]), Skeleton(Cache("atom_codes"), [Place(1), Skeleton(".", [45, Skeleton(".", [48, Skeleton(".", [39, Place(2)])])])])], 0, NotImplemented))
add("sys_atom_char", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("atom_integer"), [Place(0), 10, Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_var", 3])], -1))
add("sys_write_var", 3, Clause(5, [Place(-3), Skeleton("w", [Place(-4), Place(-1), Place(-1)]), Place(-5)], [Skeleton(Cache("sys_current_vars"), [Place(3), Place(-6)]), Skeleton(Cache("sys_find_var"), [Place(1), Place(4), Place(-6)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_current_flags"), [Place(3), Place(-2)]), Skeleton(Cache("sys_var_quoted"), [Place(4), Place(0), Place(-2)]), Skeleton(Cache("sys_current_stream"), [Place(3), Place(-5)]), Skeleton(Cache("sys_safe_atom"), [Place(3), Place(0), Place(2)])], 0, NotImplemented))
add("sys_write_var", 3, Clause(3, [Place(-2), Place(-1), Place(-3)], [Skeleton(Cache("sys_current_stream"), [Place(1), Place(-3)]), Skeleton(Cache("sys_safe_atom"), [Place(1), "_", 0]), Skeleton(Cache("dg_var_serno"), [Place(0), Place(-2)]), Skeleton(Cache("atom_integer"), [Place(-4), 10, Place(0)]), Skeleton(Cache("put_atom"), [Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_find_var", 3])], -1))
add("sys_find_var", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("member"), [Skeleton("=", [Place(3), Place(-5)]), Place(2)]), Skeleton(Cache("=="), [Place(1), Place(3)]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_var_quoted", 3])], -1))
add("sys_var_quoted", 3, Clause(3, [Place(-3), Place(-4), Place(1)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 1]), 0]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
add("sys_var_quoted", 3, Clause(3, [Place(-3), Place(-1), Place(-4)], [Skeleton(Cache("atom_codes"), [Place(1), Place(-3)]), Skeleton(Cache("\\+"), [Skeleton("sys_proper_var", [Place(1)])]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_escape_codes"), [Place(1), Place(-3), Compound(".", [96, "[]"])]), Skeleton(Cache("atom_codes"), [Place(2), Skeleton(".", [96, Place(1)])])], 0, NotImplemented))
add("sys_var_quoted", 3, Clause(1, [Place(-2), Place(-1), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_proper_var", 1])], -1))
add("sys_proper_var", 1, Clause(3, [Skeleton(".", [Place(-2), Place(-3)])], [Skeleton(Cache("sys_code_class"), [Place(0), Place(-4)]), Skeleton(Cache("sys_proper_var"), [Place(2), Skeleton(".", [Place(0), Place(1)])])], -1, "."))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_proper_var", 2])], -1))
add("sys_proper_var", 2, Clause(1, ["is_upper", Skeleton(".", [Place(-1), Place(-2)])], [Skeleton(Cache("sys_proper_atom_name"), [Place(0)])], -1, "is_upper"))
add("sys_proper_var", 2, Clause(1, ["is_score", Skeleton(".", [Place(-1), Place(-2)])], [Skeleton(Cache("sys_proper_atom_name"), [Place(0)])], -1, "is_score"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_adjust", 4])], -1))
add("sys_put_adjust", 4, Clause(3, [Place(-3), Place(-4), Place(-1), Place(1)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 4]), 0]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
add("sys_put_adjust", 4, Clause(4, [Place(-3), Place(-1), Place(-4), Place(-5)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 12]), 12]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("+"), [Place(1), 3]), Place(3)])], 0, NotImplemented))
add("sys_put_adjust", 4, Clause(1, [Place(-2), Place(-1), Place(-1), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_indent", 9])], -1))
add("sys_put_indent", 9, Clause(3, [Place(-1), Place(-3), Place(-4), Place(-1), Place(-1), Place(-1), Place(-1), Place(-1), Place(1)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 4]), 0]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
add("sys_put_indent", 9, Clause(3, [Place(-1), Place(-3), Place(-1), Place(-4), Place(-1), Place(-1), Place(-1), Place(-1), Place(1)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 12]), 0]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
add("sys_put_indent", 9, Clause(4, [Place(-1), Place(-3), Place(-1), Place(-4), Place(-1), Place(-1), Place(-1), Place(-1), Place(-5)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 12]), 12]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("+"), [Place(1), 3]), Place(3)])], 0, NotImplemented))
add("sys_put_indent", 9, Clause(8, [Place(-3), Place(-4), Place(-1), Place(-1), Place(-5), Place(-6), Place(-7), Place(-8), Place(-9)], [Skeleton(Cache("sys_needs_paren"), [Place(3), Place(4), Place(5), Place(6)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_put_spaces"), [Place(1), 2]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("+"), [Place(2), 3]), Place(7)])], 0, NotImplemented))
add("sys_put_indent", 9, Clause(1, [Place(-1), Place(-2), Place(-1), Place(-1), Place(-1), Place(-1), Place(-1), Place(-1), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_lparen", 6])], -1))
add("sys_put_lparen", 6, Clause(7, [Place(-3), Place(-4), Place(-5), Place(-6), Place(-7), Place(-8)], [Skeleton(Cache("sys_needs_paren"), [Place(2), Place(3), Place(4), Place(5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_put_lparen2"), [Place(1), Place(5), Place(6)])], 0, NotImplemented))
add("sys_put_lparen", 6, Clause(1, [Place(-1), Place(-1), Place(-1), Place(-1), Place(-2), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_lparen2", 3])], -1))
add("sys_put_lparen2", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(2), 2]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), " ("]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("\\/"), [Skeleton(Cache("/\\"), [Place(2), Compound(Cache("\\"), [6])]), 1]), Place(3)])], 0, NotImplemented))
add("sys_put_lparen2", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("put_atom"), [Place(0), "("]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("\\/"), [Place(1), 1]), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_rparen", 5])], -1))
add("sys_put_rparen", 5, Clause(6, [Place(-3), Place(-4), Place(-5), Place(-6), Place(-7)], [Skeleton(Cache("sys_needs_paren"), [Place(2), Place(3), Place(4), Place(5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), ")"])], 0, NotImplemented))
add("sys_put_rparen", 5, Clause(0, [Place(-1), Place(-1), Place(-1), Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_needs_paren", 4])], -1))
add("sys_needs_paren", 4, Clause(3, [Place(-1), Place(-3), Place(-4), Place(-1)], [Skeleton(Cache("<"), [Place(1), Place(2)]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
add("sys_needs_paren", 4, Clause(1, [0, Place(-2), Place(0), Place(-2)], [Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(0), 8]), 0])], -1, 0))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_lformat", 4])], -1))
add("sys_put_lformat", 4, Clause(4, [Place(-3), Place(-1), Place(-4), Place(-5)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 4]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_put_lspace"), [Place(1), Place(3)])], 0, NotImplemented))
add("sys_put_lformat", 4, Clause(3, [Place(-3), Place(-1), Place(-1), Place(-4)], [Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(2), 12]), 8]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_put_lspace"), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_put_lformat", 4, Clause(2, [Place(-2), Place(-3), Place(-1), Place(-1)], [Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(1), 3]), Place(-3)]), Skeleton(Cache("nl"), [Place(0)]), Skeleton(Cache("sys_put_spaces"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_rformat", 6])], -1))
add("sys_put_rformat", 6, Clause(5, [Place(-3), Place(-1), Place(-4), Place(-5), Place(-1), Place(-6)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 4]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_put_rspace"), [Place(1), Place(3), Place(4), Place(-1)])], 0, NotImplemented))
add("sys_put_rformat", 6, Clause(4, [Place(-3), Place(-1), Place(-1), Place(-4), Place(-1), Place(-5)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 12]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_put_rspace"), [Place(1), Place(2), Place(3), Place(-1)])], 0, NotImplemented))
add("sys_put_rformat", 6, Clause(4, [Place(-3), Place(-4), Place(-1), Place(-5), Place(-1), Place(-1)], [Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(3), 12]), 8]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("nl"), [Place(1)]), Skeleton(Cache("sys_put_spaces"), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_put_rformat", 6, Clause(2, [Place(-2), Place(-1), Place(-1), Place(-1), Place(-3), Place(-1)], [Skeleton(Cache("atom_length"), [Place(1), Place(-3)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [3, Place(1)]), Place(-3)]), Skeleton(Cache("sys_put_spaces"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_spaces", 2])], -1))
add("sys_put_spaces", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache(">"), [Place(2), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), " "]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(2), 1]), Place(-4)]), Skeleton(Cache("sys_put_spaces"), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_put_spaces", 2, Clause(0, [Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_lspace", 2])], -1))
add("sys_put_lspace", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 2]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), " "])], 0, NotImplemented))
add("sys_put_lspace", 2, Clause(0, [Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_rspace", 4])], -1))
add("sys_put_rspace", 4, Clause(5, [Place(-3), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 1]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_atom"), [Place(1), " "]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("/\\"), [Place(3), Compound(Cache("\\"), [6])]), Place(4)])], 0, NotImplemented))
add("sys_put_rspace", 4, Clause(2, [Place(-1), Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("$EVAL"), [Skeleton(Cache("\\/"), [Place(0), 2]), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_oper_side", 3])], -1))
add("sys_oper_side", 3, Clause(3, [0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("\\/"), [Place(1), 8]), Place(2)])], 0, 0))
add("sys_oper_side", 3, Clause(2, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("$EVAL"), [Skeleton(Cache("/\\"), [Place(0), Compound(Cache("\\"), [8])]), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_oper_minus", 3])], -1))
add("sys_oper_minus", 3, Clause(3, ["-", Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("\\/"), [Place(1), 4]), Place(2)])], 0, "-"))
add("sys_oper_minus", 3, Clause(2, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("$EVAL"), [Skeleton(Cache("/\\"), [Place(0), Compound(Cache("\\"), [4])]), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_oper_escape", 3])], -1))
add("sys_oper_escape", 3, Clause(3, [",", Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("\\/"), [Place(1), 1]), Place(2)])], 0, ","))
add("sys_oper_escape", 3, Clause(3, ["|", Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("\\/"), [Place(1), 1]), Place(2)])], 0, "|"))
add("sys_oper_escape", 3, Clause(2, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("$EVAL"), [Skeleton(Cache("/\\"), [Place(0), Compound(Cache("\\"), [1])]), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_current_stream", 2])], -1))
add("sys_current_stream", 2, Clause(1, [Skeleton("v", [Place(-2), Place(-1), Place(-1)]), Place(0)], [], -1, "v"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_current_flags", 2])], -1))
add("sys_current_flags", 2, Clause(1, [Skeleton("v", [Place(-1), Place(-2), Place(-1)]), Place(0)], [], -1, "v"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_current_vars", 2])], -1))
add("sys_current_vars", 2, Clause(1, [Skeleton("v", [Place(-1), Place(-1), Place(-2)]), Place(0)], [], -1, "v"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_atom", 4])], -1))
add("sys_put_atom", 4, Clause(5, [Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_current_flags"), [Place(2), Place(-6)]), Skeleton(Cache("sys_atom_quoted"), [Place(0), Place(4), Place(3)]), Skeleton(Cache("sys_current_stream"), [Place(2), Place(-4)]), Skeleton(Cache("sys_safe_atom"), [Place(2), Place(3), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_atom_quoted", 3])], -1))
add("sys_atom_quoted", 3, Clause(3, [Place(-3), Place(-4), Place(1)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 1]), 0]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
add("sys_atom_quoted", 3, Clause(3, [Place(-3), Place(-1), Place(-4)], [Skeleton(Cache("atom_codes"), [Place(1), Place(-3)]), Skeleton(Cache("\\+"), [Skeleton("sys_proper_atom", [Place(1)])]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_escape_codes"), [Place(1), Place(-3), Compound(".", [39, "[]"])]), Skeleton(Cache("atom_codes"), [Place(2), Skeleton(".", [39, Place(1)])])], 0, NotImplemented))
add("sys_atom_quoted", 3, Clause(1, [Place(-2), Place(-1), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_reference", 3])], -1))
add("sys_put_reference", 3, Clause(4, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_current_flags"), [Place(2), Place(-5)]), Skeleton(Cache("sys_reference_quoted"), [Place(0), Place(3), Place(-5)]), Skeleton(Cache("sys_current_stream"), [Place(2), Place(-4)]), Skeleton(Cache("sys_safe_atom"), [Place(2), Place(3), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_reference_quoted", 3])], -1))
add("sys_reference_quoted", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(2), 1]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("atom_reference"), [Place(3), Place(1)])], 0, NotImplemented))
add("sys_reference_quoted", 3, Clause(3, [Place(-2), Place(-1), Place(-3)], [Skeleton(Cache("atom_reference"), [Place(-4), Place(0)]), Skeleton(Cache("atom_concat"), ["0r", Place(2), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_term", 4])], -1))
add("sys_read_term", 4, Clause(6, [Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_read_opts"), [Place(2), Compound("z", [1200, 0]), Skeleton("z", [Place(-6), Place(-7)])]), Skeleton(Cache("sys_next_token"), [Skeleton("t", ["-", Place(5), Skeleton("r", [Place(1), Place(0)]), Compound("s", ["[]", "[]"])]), Place(-2)]), Skeleton(Cache("sys_read_optional"), [Place(-3), Place(4), Place(0), Skeleton("t", [Place(-1), Place(-1), Place(-1), Place(-2)])]), Skeleton(Cache("sys_read_results"), [Place(2), Place(0)]), Skeleton(Cache("="), [Place(3), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_optional", 4])], -1))
add("sys_read_optional", 4, Clause(3, ["end_of_file", Place(-1), Place(-3), Place(-4)], [Skeleton(Cache("sys_current_token"), ["end_of_file", Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, "end_of_file"))
add("sys_read_optional", 4, Clause(4, [Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_read_priority"), [Place(0), Place(1), Place(2), Place(-4)]), Skeleton(Cache("sys_read_end_of_term"), [Place(2), Place(3)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_end_of_term", 2])], -1))
add("sys_read_end_of_term", 2, Clause(4, [Place(-3), Place(-4)], [Skeleton(Cache("sys_current_options"), [Place(-5), Place(1), Place(-3)]), Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(3), 1]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_read_end"), ["end_of_file", Place(1), Place(2)])], 0, NotImplemented))
add("sys_read_end_of_term", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("sys_read_end"), [".", Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_priority", 4])], -1))
add("sys_read_priority", 4, Clause(7, [Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_current_token"), [Place(-6), Place(2), Place(-4)]), Skeleton(Cache("sys_read_factor"), [Place(4), Place(-6), Place(1), Place(-7), Place(2), Place(-4)]), Skeleton(Cache("sys_current_token"), [Place(-8), Place(2), Place(-4)]), Skeleton(Cache("sys_read_secondary"), [Place(6), Place(4), Place(0), Place(1), Place(5), Place(2), Place(3)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_secondary", 7])], -1))
add("sys_read_secondary", 7, Clause(8, [Skeleton("atom", [Place(-3)]), Place(-4), Place(-5), Place(-6), Place(-7), Place(-8), Place(-9)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_read_infix"), [Place(1), Place(2), Place(3), Place(4), Place(5), Place(6), Place(7)])], 0, "atom"))
add("sys_read_secondary", 7, Clause(8, [Place(-3), Place(-4), Place(-5), Place(-6), Place(-7), Place(-8), Place(-9)], [Skeleton(Cache("="), [Place(1), ","]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_read_infix"), [Place(1), Place(2), Place(3), Place(4), Place(5), Place(6), Place(7)])], 0, ","))
add("sys_read_secondary", 7, Clause(8, [Place(-3), Place(-4), Place(-5), Place(-6), Place(-7), Place(-8), Place(-9)], [Skeleton(Cache("="), [Place(1), "|"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_read_infix"), [Place(1), Place(2), Place(3), Place(4), Place(5), Place(6), Place(7)])], 0, "|"))
add("sys_read_secondary", 7, Clause(1, [Place(-1), Place(-2), Place(0), Place(-1), Place(-1), Place(-2), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_infix", 7])], -1))
add("sys_read_infix", 7, Clause(11, [Place(-3), Place(-4), Place(-5), Place(-6), Place(-7), Place(-8), Place(-9)], [Skeleton(Cache("sys_op"), [Place(1), Place(-10), Place(-11), Place(-1), Place(-1)]), Skeleton(Cache("sys_is_infix"), [Place(8), Place(-10), Place(-12)]), Skeleton(Cache(">="), [Place(4), Place(9)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(6), Place(-8)]), Skeleton(make_defined([Clause(6, [Place(-3), Place(-4), Place(-5), Place(-6), Place(-7)], [Skeleton(Cache("<"), [Skeleton(Cache("-"), [Place(1), Place(2)]), Place(3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_sync_throw"), [Skeleton("error", [Compound("syntax_error", ["operator_clash"]), Place(-1)]), Place(4), Place(5)])], 0, NotImplemented), Clause(2, [Place(-1), Place(-1), Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented)]), [Place(9), Place(8), Place(5), Place(6), Place(-8)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(9), Place(10)]), Place(-12)]), Skeleton(Cache("sys_read_priority"), [Place(-7), Place(10), Place(6), Place(-8)]), Skeleton(Cache("=.."), [Place(-12), Skeleton(".", [Place(1), Skeleton(".", [Place(2), Skeleton(".", [Place(5), "[]"])])])]), Skeleton(Cache("sys_current_token"), [Place(-7), Place(6), Place(-8)]), Skeleton(Cache("sys_read_secondary"), [Place(5), Place(10), Place(3), Place(4), Place(9), Place(6), Place(7)])], 0, NotImplemented))
add("sys_read_infix", 7, Clause(10, [Place(-3), Place(-4), Place(-5), Place(-6), Place(-7), Place(-8), Place(-9)], [Skeleton(Cache("sys_op"), [Place(1), Place(-10), Place(-11), Place(-1), Place(-1)]), Skeleton(Cache("sys_is_postfix"), [Place(8), Place(-10)]), Skeleton(Cache(">="), [Place(4), Place(9)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(6), Place(-8)]), Skeleton(make_defined([Clause(6, [Place(-3), Place(-4), Place(-5), Place(-6), Place(-7)], [Skeleton(Cache("<"), [Skeleton(Cache("-"), [Place(1), Place(2)]), Place(3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_sync_throw"), [Skeleton("error", [Compound("syntax_error", ["operator_clash"]), Place(-1)]), Place(4), Place(5)])], 0, NotImplemented), Clause(2, [Place(-1), Place(-1), Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented)]), [Place(9), Place(8), Place(5), Place(6), Place(-8)]), Skeleton(Cache("=.."), [Place(-7), Skeleton(".", [Place(1), Skeleton(".", [Place(2), "[]"])])]), Skeleton(Cache("sys_current_token"), [Place(-4), Place(6), Place(-8)]), Skeleton(Cache("sys_read_secondary"), [Place(2), Place(5), Place(3), Place(4), Place(9), Place(6), Place(7)])], 0, NotImplemented))
add("sys_read_infix", 7, Clause(1, [Place(-1), Place(-2), Place(0), Place(-1), Place(-1), Place(-2), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_lookup_var", 4])], -1))
add("sys_lookup_var", 4, Clause(6, [Place(-3), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("sys_sys_current_vars"), [Place(-7), Place(3), Place(-5)]), Skeleton(Cache("member"), [Skeleton("=", [Place(1), Place(2)]), Place(5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_remove_anon"), [Place(1), Place(3), Place(4)])], 0, NotImplemented))
add("sys_lookup_var", 4, Clause(5, [Place(-2), Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_sys_current_vars"), [Place(-6), Place(2), Place(-4)]), Skeleton(Cache("sys_set_vars"), [Skeleton(".", [Skeleton("=", [Place(0), Place(1)]), Place(4)]), Place(2), Place(-4)]), Skeleton(Cache("sys_current_anon"), [Place(-6), Place(2), Place(-4)]), Skeleton(Cache("sys_set_anon"), [Skeleton(".", [Skeleton("=", [Place(0), Place(1)]), Place(4)]), Place(2), Place(3)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_remove_anon", 3])], -1))
add("sys_remove_anon", 3, Clause(5, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_current_anon"), [Place(-6), Place(2), Place(-4)]), Skeleton(Cache("select"), [Skeleton("=", [Place(1), Place(-1)]), Place(4), Place(-6)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_set_anon"), [Place(4), Place(2), Place(3)])], 0, NotImplemented))
add("sys_remove_anon", 3, Clause(1, [Place(-1), Place(-2), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_current_token", 3])], -1))
add("sys_current_token", 3, Clause(4, [Place(-2), Skeleton("t", [Place(0), Place(-3), Place(-4), Place(-5)]), Skeleton("t", [Place(0), Place(1), Place(2), Place(3)])], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_current_options", 3])], -1))
add("sys_current_options", 3, Clause(4, [Place(-2), Skeleton("t", [Place(-3), Place(0), Place(-4), Place(-5)]), Skeleton("t", [Place(1), Place(0), Place(2), Place(3)])], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_reach_code", 3])], -1))
add("sys_reach_code", 3, Clause(5, [Place(-2), Skeleton("t", [Place(-3), Place(-4), Skeleton("r", [Place(-5), Place(0)]), Place(-6)]), Skeleton("t", [Place(1), Place(2), Skeleton("r", [Place(3), Place(0)]), Place(4)])], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_sys_current_vars", 3])], -1))
add("sys_sys_current_vars", 3, Clause(5, [Place(-2), Skeleton("t", [Place(-3), Place(-4), Place(-5), Skeleton("s", [Place(0), Place(-6)])]), Skeleton("t", [Place(1), Place(2), Place(3), Skeleton("s", [Place(0), Place(4)])])], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_set_vars", 3])], -1))
add("sys_set_vars", 3, Clause(5, [Place(-2), Skeleton("t", [Place(-3), Place(-4), Place(-5), Skeleton("s", [Place(-1), Place(-6)])]), Skeleton("t", [Place(1), Place(2), Place(3), Skeleton("s", [Place(0), Place(4)])])], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_current_anon", 3])], -1))
add("sys_current_anon", 3, Clause(5, [Place(-2), Skeleton("t", [Place(-3), Place(-4), Place(-5), Skeleton("s", [Place(-6), Place(0)])]), Skeleton("t", [Place(1), Place(2), Place(3), Skeleton("s", [Place(4), Place(0)])])], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_set_anon", 3])], -1))
add("sys_set_anon", 3, Clause(5, [Place(-2), Skeleton("t", [Place(-3), Place(-4), Place(-5), Skeleton("s", [Place(-6), Place(-1)])]), Skeleton("t", [Place(1), Place(2), Place(3), Skeleton("s", [Place(4), Place(0)])])], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_factor", 6])], -1))
add("sys_read_factor", 6, Clause(7, [Skeleton("atom", [Place(-3)]), Place(-4), Place(-5), Place(-6), Place(-7), Place(-8)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_reach_code"), [Place(-2), Place(5), Place(-7)]), Skeleton(Cache("sys_next_token"), [Place(5), Place(-7)]), Skeleton(Cache("sys_read_atom"), [Place(0), Place(1), Place(2), Place(3), Place(4), Place(5), Place(6)])], 0, "atom"))
add("sys_read_factor", 6, Clause(3, ["anon", Place(-1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], 0, "anon"))
add("sys_read_factor", 6, Clause(5, [Skeleton("var", [Place(-3)]), Place(-4), Place(-1), 0, Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_lookup_var"), [Place(1), Place(2), Place(3), Place(-5)]), Skeleton(Cache("sys_next_token"), [Place(3), Place(4)])], 0, "var"))
add("sys_read_factor", 6, Clause(6, ["[", Place(-3), Place(-4), Place(-5), Place(-6), Place(-7)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(4), Place(-6)]), Skeleton(Cache("sys_current_token"), [Place(-2), Place(4), Place(-6)]), Skeleton(Cache("sys_read_list"), [Place(0), Place(1), Place(2), Place(3), Place(4), Place(5)])], 0, "["))
add("sys_read_factor", 6, Clause(6, ["{", Place(-3), Place(-4), Place(-5), Place(-6), Place(-7)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(4), Place(-6)]), Skeleton(Cache("sys_current_token"), [Place(-2), Place(4), Place(-6)]), Skeleton(Cache("sys_read_set"), [Place(0), Place(1), Place(2), Place(3), Place(4), Place(5)])], 0, "{"))
add("sys_read_factor", 6, Clause(4, ["(", Place(-3), Place(-1), 0, Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(2), Place(-4)]), Skeleton(Cache("sys_read_priority"), [Place(1), 1200, Place(2), Place(-4)]), Skeleton(Cache("sys_read_end"), [")", Place(2), Place(-4)]), Skeleton(Cache("sys_next_token"), [Place(2), Place(3)])], 0, "("))
add("sys_read_factor", 6, Clause(3, [Skeleton("number", [Place(-3)]), Place(1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], 0, "number"))
add("sys_read_factor", 6, Clause(3, [Skeleton("radix", [Place(-3), Place(-1)]), Place(1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], 0, "radix"))
add("sys_read_factor", 6, Clause(3, [Skeleton("reference", [Place(-3)]), Place(1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], 0, "reference"))
add("sys_read_factor", 6, Clause(3, [Skeleton("codes", [Place(-3)]), Place(1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], 0, "codes"))
add("sys_read_factor", 6, Clause(3, [Skeleton("code", [Place(-3)]), Place(1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], 0, "code"))
add("sys_read_factor", 6, Clause(2, [Place(-1), Place(-1), Place(-1), Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("sys_sync_throw"), [Skeleton("error", [Compound("syntax_error", ["cannot_start_term"]), Place(-1)]), Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_atom", 7])], -1))
add("sys_read_atom", 7, Clause(6, [40, Place(-3), Place(-4), Place(-1), 0, Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(3), Place(-5)]), Skeleton(Cache("sys_read_priority"), [Place(-2), 999, Place(3), Place(-5)]), Skeleton(Cache("sys_current_token"), [Place(-7), Place(3), Place(-5)]), Skeleton(Cache("sys_read_args"), [Place(5), Place(-7), Place(3), Place(-5)]), Skeleton(Cache("sys_read_end"), [")", Place(3), Place(-5)]), Skeleton(Cache("=.."), [Place(2), Skeleton(".", [Place(1), Skeleton(".", [Place(0), Place(5)])])]), Skeleton(Cache("sys_next_token"), [Place(3), Place(4)])], 0, 40))
add("sys_read_atom", 7, Clause(7, [Place(-3), "-", Place(-4), Place(-5), Place(-6), Place(-7), Place(-8)], [Skeleton(Cache("sys_code_class"), [Place(1), "is_digit"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_current_token"), [Place(-2), Place(5), Place(-7)]), Skeleton(Cache("sys_read_factor"), [Place(0), Place(-2), Place(3), Place(4), Place(5), Place(-7)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(0)]), Place(2)]), Skeleton(Cache("="), [Place(5), Place(6)])], 0, NotImplemented))
add("sys_read_atom", 7, Clause(9, [Place(-1), Place(-3), Place(-4), Place(-5), Place(-6), Place(-7), Place(-8)], [Skeleton(Cache("sys_op"), [Place(1), Place(-9), Place(-10), Place(-1), Place(-1)]), Skeleton(Cache("sys_is_prefix"), [Place(7), Place(-9)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_current_token"), [Place(-2), Place(5), Place(-7)]), Skeleton(Cache("sys_read_prefix"), [Place(0), Place(2), Place(1), Place(3), Place(8), Place(7), Place(4), Place(5), Place(6)])], 0, NotImplemented))
add("sys_read_atom", 7, Clause(1, [Place(-1), Place(-2), Place(0), Place(-1), 0, Place(-2), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_prefix", 9])], -1))
add("sys_read_prefix", 9, Clause(3, [",", Place(-3), Place(1), Place(-1), Place(-1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, ","))
add("sys_read_prefix", 9, Clause(3, ["|", Place(-3), Place(1), Place(-1), Place(-1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, "|"))
add("sys_read_prefix", 9, Clause(3, [")", Place(-3), Place(1), Place(-1), Place(-1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, ")"))
add("sys_read_prefix", 9, Clause(3, ["]", Place(-3), Place(1), Place(-1), Place(-1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, "]"))
add("sys_read_prefix", 9, Clause(3, ["}", Place(-3), Place(1), Place(-1), Place(-1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, "}"))
add("sys_read_prefix", 9, Clause(3, [".", Place(-3), Place(1), Place(-1), Place(-1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, "."))
add("sys_read_prefix", 9, Clause(7, [Place(-1), Place(-2), Place(-3), Place(-4), Place(-5), Place(-6), Place(3), Place(-7), Place(-8)], [Skeleton(make_defined([Clause(5, [Place(-3), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("<"), [Place(1), Place(2)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_sync_throw"), [Skeleton("error", [Compound("syntax_error", ["operator_clash"]), Place(-1)]), Place(3), Place(4)])], 0, NotImplemented), Clause(2, [Place(-1), Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented)]), [Place(2), Place(3), Place(5), Place(-7)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(3), Place(4)]), Place(-6)]), Skeleton(Cache("sys_read_priority"), [Place(-5), Place(4), Place(5), Place(-7)]), Skeleton(Cache("=.."), [Place(0), Skeleton(".", [Place(1), Skeleton(".", [Place(3), "[]"])])]), Skeleton(Cache("="), [Place(5), Place(6)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_args", 4])], -1))
add("sys_read_args", 4, Clause(5, [",", Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(3), Place(-5)]), Skeleton(Cache("sys_read_priority"), [Place(1), 999, Place(3), Place(-5)]), Skeleton(Cache("sys_current_token"), [Place(-3), Place(3), Place(-5)]), Skeleton(Cache("sys_read_args"), [Place(1), Place(2), Place(3), Place(4)])], 0, ","))
add("sys_read_args", 4, Clause(1, [Place(-1), "[]", Place(-2), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_list", 6])], -1))
add("sys_read_list", 6, Clause(6, ["]", Place(-3), Place(-4), Place(-5), Place(-6), Place(-7)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_reach_code"), [Place(-2), Place(4), Place(-6)]), Skeleton(Cache("sys_next_token"), [Place(4), Place(-6)]), Skeleton(Cache("sys_read_atom"), [Place(0), "[]", Place(1), Place(2), Place(3), Place(4), Place(5)])], 0, "]"))
add("sys_read_list", 6, Clause(4, [Place(-1), Skeleton(".", [Place(-2), Place(-3)]), Place(-1), 0, Place(-4), Place(-5)], [Skeleton(Cache("sys_read_priority"), [Place(0), 999, Place(2), Place(-4)]), Skeleton(Cache("sys_current_token"), [Place(-2), Place(2), Place(-4)]), Skeleton(Cache("sys_read_rest"), [Place(0), Place(1), Place(2), Place(-4)]), Skeleton(Cache("sys_read_end"), ["]", Place(2), Place(-4)]), Skeleton(Cache("sys_next_token"), [Place(2), Place(3)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_rest", 4])], -1))
add("sys_read_rest", 4, Clause(5, [",", Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(3), Place(-5)]), Skeleton(Cache("sys_read_priority"), [Place(1), 999, Place(3), Place(-5)]), Skeleton(Cache("sys_current_token"), [Place(-3), Place(3), Place(-5)]), Skeleton(Cache("sys_read_rest"), [Place(1), Place(2), Place(3), Place(4)])], 0, ","))
add("sys_read_rest", 4, Clause(4, ["|", Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_next_token"), [Place(2), Place(-4)]), Skeleton(Cache("sys_read_priority"), [Place(1), 999, Place(2), Place(3)])], 0, "|"))
add("sys_read_rest", 4, Clause(1, [Place(-1), "[]", Place(-2), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_set", 6])], -1))
add("sys_read_set", 6, Clause(6, ["}", Place(-3), Place(-4), Place(-5), Place(-6), Place(-7)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_reach_code"), [Place(-2), Place(4), Place(-6)]), Skeleton(Cache("sys_next_token"), [Place(4), Place(-6)]), Skeleton(Cache("sys_read_atom"), [Place(0), "{}", Place(1), Place(2), Place(3), Place(4), Place(5)])], 0, "}"))
add("sys_read_set", 6, Clause(3, [Place(-1), Skeleton("{}", [Place(-2)]), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("sys_read_priority"), [Place(0), 1200, Place(1), Place(-3)]), Skeleton(Cache("sys_read_end"), ["}", Place(1), Place(-3)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_end", 3])], -1))
add("sys_read_end", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_current_token"), [Place(1), Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(3)])], 0, NotImplemented))
add("sys_read_end", 3, Clause(3, [".", Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_sync_throw"), [Skeleton("error", [Compound("syntax_error", ["end_of_clause_expected"]), Place(-1)]), Place(1), Place(2)])], 0, "."))
add("sys_read_end", 3, Clause(3, ["end_of_file", Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_sync_throw"), [Skeleton("error", [Compound("syntax_error", ["end_of_clause_expected"]), Place(-1)]), Place(1), Place(2)])], 0, "end_of_file"))
add("sys_read_end", 3, Clause(3, [")", Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_sync_throw"), [Skeleton("error", [Compound("syntax_error", ["parenthesis_balance"]), Place(-1)]), Place(1), Place(2)])], 0, ")"))
add("sys_read_end", 3, Clause(3, ["}", Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_sync_throw"), [Skeleton("error", [Compound("syntax_error", ["brace_balance"]), Place(-1)]), Place(1), Place(2)])], 0, "}"))
add("sys_read_end", 3, Clause(2, ["]", Place(-2), Place(-3)], [Skeleton(Cache("sys_sync_throw"), [Skeleton("error", [Compound("syntax_error", ["bracket_balance"]), Place(-1)]), Place(0), Place(1)])], -1, "]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_init_goal", 1])], -1))
run(Goal(0, [Compound(Cache("kb_pred_touch"), ["sys_init_goal", 1, 1])], -1))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["abort", 0])], -1))
add("abort", 0, Clause(0, [], [Skeleton(Cache("throw"), [Skeleton("error", [Compound("system_error", ["user_abort"]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["exit", 0])], -1))
add("exit", 0, Clause(0, [], [Skeleton(Cache("throw"), [Skeleton("error", [Compound("system_error", ["user_exit"]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_call_print", 1])], -1))
add("sys_call_print", 1, Clause(1, [Place(-2)], [Skeleton(Cache("sys_trap"), [Place(0), Place(-2), Skeleton("sys_ended_handler", [Place(0)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_ended_handler", 1])], -1))
add("sys_ended_handler", 1, Clause(1, [Place(-2)], [Skeleton(Cache("sys_chain_head"), [Place(0), Skeleton("error", [Compound("system_error", ["user_exit"]), Place(-1)])]), Skeleton(Cache("sys_raise"), [Place(0)])], -1, NotImplemented))
add("sys_ended_handler", 1, Clause(1, [Place(-2)], [Skeleton(Cache("sys_print_error"), [Place(0)]), Cache("fail")], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["initialization", 1])], -1))
add("initialization", 1, Clause(1, [Place(-2)], [Skeleton(Cache("assertz"), [Skeleton("sys_init_goal", [Place(0)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_init_goals", 0])], -1))
add("sys_init_goals", 0, Clause(1, [], [Skeleton(Cache("retract"), [Skeleton("sys_init_goal", [Place(-2)])]), Skeleton(Cache("sys_call_print"), [Skeleton("sys_must", [Place(0)])]), Cache("fail")], -1, NotImplemented))
add("sys_init_goals", 0, Clause(0, [], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_must", 1])], -1))
add("sys_must", 1, Clause(2, [Place(-3)], [Place(1), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
add("sys_must", 1, Clause(0, [Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Compound("syntax_error", ["directive_failed"]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_baseline", 0])], -1))
add("sys_baseline", 0, Clause(1, [], [Skeleton(Cache("current_prolog_flag"), ["argv", Place(-2)]), Skeleton(Cache("sys_baseline"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_baseline", 1])], -1))
add("sys_baseline", 1, Clause(2, [Skeleton(".", ["-h", Place(-3)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("current_output"), [Place(-2)]), Skeleton(Cache("sys_print_message"), [Compound("command", ["runtime"]), Place(0)]), Cache("nl"), Skeleton(Cache("set_prolog_flag"), ["argv", Skeleton(".", ["-h", Place(1)])])], 0, "."))
add("sys_baseline", 1, Clause(2, [Skeleton(".", [Place(-3), Place(-1)])], [Skeleton(Cache("sub_atom"), [Place(1), 0, Place(-1), Place(-1), "-"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("throw"), [Skeleton("error", [Compound("system_error", ["option_command"]), Place(-1)])])], 0, "."))
add("sys_baseline", 1, Clause(1, [Place(-2)], [Skeleton(Cache("set_prolog_flag"), ["argv", Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_launch", 0])], -1))
add("sys_launch", 0, Clause(1, [], [Skeleton(Cache("current_prolog_flag"), ["argv", Place(-2)]), Skeleton(Cache("sys_launch"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_launch", 1])], -1))
add("sys_launch", 1, Clause(1, [Skeleton(".", ["-h", Place(-1)])], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "."))
add("sys_launch", 1, Clause(0, ["[]"], [Cache("sys_banner"), Cache("sys_toplevel")], -1, "[]"))
add("sys_launch", 1, Clause(2, [Skeleton(".", [Place(-2), Place(-3)])], [Skeleton(Cache("set_prolog_flag"), ["argv", Place(1)]), Skeleton(Cache("ensure_loaded"), [Place(0)]), Cache("sys_init_goals")], -1, "."))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_banner", 0])], -1))
add("sys_banner", 0, Clause(6, [], [Skeleton(Cache("current_prolog_flag"), ["version_data", Place(-2)]), Skeleton(Cache("=.."), [Place(0), Skeleton(".", [Place(-1), Skeleton(".", [Place(-2), Skeleton(".", [Place(-3), Skeleton(".", [Place(-4), Skeleton(".", [Skeleton(".", [Skeleton("date", [Place(-5)]), Place(-1)]), Place(-1)])])])])])]), Skeleton(Cache("get_string"), ["format.date", Place(-6)]), Skeleton(Cache("atom_time"), [Place(-7), Place(4), Place(3)]), Skeleton(Cache("current_output"), [Place(-5)]), Skeleton(Cache("sys_print_message"), [Skeleton("banner", ["runtime", Place(0), Place(1), Place(2), Place(5)]), Place(3)]), Cache("nl"), Skeleton(Cache("sys_print_message"), [Compound("banner", ["copyright"]), Place(3)]), Cache("nl")], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_toplevel", 0])], -1))
add("sys_toplevel", 0, Clause(2, [], [Skeleton(Cache("current_input"), [Place(-2)]), Skeleton(Cache("os_task_current"), [Place(-3)]), Skeleton(Cache("setup_once_cleanup"), [Skeleton("asserta", [Skeleton("sys_including", ["user", Place(1), Place(0)])]), Skeleton("sys_toplevel_prompt", [Place(0)]), Skeleton("once", [Skeleton("retract", [Skeleton("sys_including", ["user", Place(1), Place(0)])])])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_toplevel_prompt", 1])], -1))
add("sys_toplevel_prompt", 1, Clause(3, [Place(-3)], [Cache("repeat"), Cache("sys_init_goals"), Compound(Cache("put_atom"), ["?- "]), Cache("flush_output"), Skeleton(Cache("sys_call_print"), [Skeleton("read_term", [Place(1), Place(-3), Skeleton(".", [Skeleton("variable_names", [Place(-4)]), "[]"])])]), Skeleton(make_defined([Clause(2, [Place(-3), Place(-1)], [Skeleton(Cache("=="), [Place(1), "end_of_file"]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented), Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("sys_call_print"), [Skeleton("sys_query_attended", [Place(0), Place(1)])]), Cache("fail")], -1, NotImplemented)]), [Place(1), Place(2)]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_query_attended", 2])], -1))
add("sys_query_attended", 2, Clause(4, [Place(-3), Place(-4)], [Skeleton(Cache("$MARK"), [Place(-5)]), Place(1), Skeleton(Cache("$MARK"), [Place(-3)]), Skeleton(Cache("sys_answer_show"), [Place(2)]), Skeleton(make_defined([Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("=="), [Place(1), Place(2)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$CUT"), [Place(3)]), Cache("sys_answer_period")], 0, NotImplemented), Clause(2, [Place(-1), Place(-1), Place(-3)], [Cache("sys_ask_abort"), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$CUT"), [Place(1)])], 0, NotImplemented)]), [Place(3), Place(1), Place(0)])], 0, NotImplemented))
add("sys_query_attended", 2, Clause(0, [Place(-1), Place(-1)], [Compound(Cache("put_atom"), ["fail"]), Cache("sys_answer_period")], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_ask_abort", 0])], -1))
add("sys_ask_abort", 0, Clause(1, [], [Cache("flush_output"), Skeleton(Cache("get_atom"), [Place(-2), "[]"]), Skeleton(Cache("\\=="), [Place(0), ";\n"])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_answer_show", 1])], -1))
add("sys_answer_show", 1, Clause(2, [Place(-2)], [Skeleton(Cache("sys_triage_names"), [Place(0), Place(-2), Place(-3)]), Skeleton(Cache("append"), [Place(1), Place(0), Place(-3)]), Skeleton(Cache("reverse"), [Place(1), Place(-3)]), Skeleton(Cache("sys_filter_names"), [Place(0), Place(1), Place(-2)]), Skeleton(Cache("sys_answer_map"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_triage_names", 3])], -1))
add("sys_triage_names", 3, Clause(5, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Skeleton(".", [Place(1), Place(-6)])], [Skeleton(Cache("="), [Place(1), Skeleton("=", [Place(-3), Place(-1)])]), Skeleton(Cache("sys_marked_at"), [Place(1), 0, Compound(".", [23, "[]"])]), Skeleton(Cache("sys_marked_at"), [Place(1), 1, Compound(".", [1, Compound(".", [3, Compound(".", [23, "[]"])])])]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_triage_names"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_triage_names", 3, Clause(3, [Skeleton(".", [Place(-2), Place(-3)]), Skeleton(".", [Place(0), Place(-2)]), Place(-4)], [Skeleton(Cache("sys_triage_names"), [Place(1), Place(0), Place(2)])], -1, "."))
add("sys_triage_names", 3, Clause(0, ["[]", "[]", "[]"], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_filter_names", 3])], -1))
add("sys_filter_names", 3, Clause(6, [Skeleton(".", [Skeleton("=", [Place(-3), Place(-4)]), Place(-5)]), Place(-6), Place(-7)], [Skeleton(Cache("var"), [Place(2)]), Skeleton(Cache("sys_find_var"), [Place(2), Place(4), Place(-4)]), Skeleton(Cache("="), [Place(2), Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_filter_names"), [Place(3), Place(4), Place(5)])], 0, "."))
add("sys_filter_names", 3, Clause(3, [Skeleton(".", [Place(-2), Place(-3)]), Place(-4), Skeleton(".", [Place(0), Place(-2)])], [Skeleton(Cache("sys_filter_names"), [Place(1), Place(2), Place(0)])], -1, "."))
add("sys_filter_names", 3, Clause(0, ["[]", Place(-1), "[]"], [], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_answer_map", 2])], -1))
add("sys_answer_map", 2, Clause(5, [Skeleton(".", [Place(-3), Skeleton(".", [Place(-4), Place(-5)])]), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_answer_eq"), [Place(1), Place(4)]), Compound(Cache("put_atom"), [", "]), Skeleton(Cache("sys_answer_map"), [Skeleton(".", [Place(2), Place(3)]), Place(4)])], 0, "."))
add("sys_answer_map", 2, Clause(2, [Skeleton(".", [Place(-2), "[]"]), Place(-3)], [Skeleton(Cache("sys_answer_eq"), [Place(0), Place(1)])], -1, "."))
add("sys_answer_map", 2, Clause(0, ["[]", Place(-1)], [Compound(Cache("put_atom"), ["true"])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_answer_eq", 2])], -1))
add("sys_answer_eq", 2, Clause(3, [Skeleton("=", [Place(-2), Place(-3)]), Place(-4)], [Skeleton(Cache("sys_var_quoted"), [Place(0), 1, Place(-2)]), Skeleton(Cache("put_atom"), [Place(0)]), Compound(Cache("put_atom"), [" = "]), Skeleton(Cache("sys_answer_term"), [Place(1), Place(2)])], -1, "="))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_answer_term", 2])], -1))
add("sys_answer_term", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("acyclic_term"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("write_term"), [Place(1), Skeleton(".", [Compound("priority", [699]), Skeleton(".", [Skeleton("variable_names", [Place(2)]), Compound(".", [Compound("numbervars", ["true"]), Compound(".", [Compound("quoted", ["true"]), "[]"])])])])])], 0, NotImplemented))
add("sys_answer_term", 2, Clause(1, [Place(-1), Place(-1)], [Skeleton(Cache("get_string"), ["answer.cyclic", Place(-2)]), Skeleton(Cache("put_atom"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_multifile_safe"), ["strings", 3])], -1))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["strings", 3])], -1))
add("strings", 3, Clause(0, ["answer.cyclic", "de", "<zyklischer Ausdruck>"], [], -1, "answer.cyclic"))
add("strings", 3, Clause(0, ["command.runtime", "de", "Benutzung: opt_1 .. opt_m [text arg_1 .. arg_n]\nFalls kein text spezifiziert ist, wird Banner gezeigt und dann\nTop-Level ausgeführt, andernfalls wird text ausgeführt.\n-h Diesen Hilfetext anzeigen und Vorgang beenden"], [], -1, "command.runtime"))
add("strings", 3, Clause(0, ["system_error.option_command", "de", "Ungültige Befehlzeilenoption, -h für weitere Informationen."], [], -1, "system_error.option_command"))
add("strings", 3, Clause(0, ["answer.cyclic", "", "<cyclic term>"], [], -1, "answer.cyclic"))
add("strings", 3, Clause(0, ["command.runtime", "", "Usage: opt_1 ... opt_m [text arg_1 ... arg_n]\nIf no text is specified, banner is shown and then top-level\nis executed, otherwise text is executed.\n-h Display this help and exit."], [], -1, "command.runtime"))
add("strings", 3, Clause(0, ["system_error.option_command", "", "Invalid command line option, -h for more information."], [], -1, "system_error.option_command"))
add("strings", 3, Clause(0, ["syntax_error.directive_failed", "de", "Direktive fehlgeschlagen."], [], -1, "syntax_error.directive_failed"))
add("strings", 3, Clause(0, ["system_error.user_abort", "de", "Ausführung auf Benutzerwunsch abgebrochen."], [], -1, "system_error.user_abort"))
add("strings", 3, Clause(0, ["system_error.user_exit", "de", "System auf Benutzerwunsch beendet."], [], -1, "system_error.user_exit"))
add("strings", 3, Clause(0, ["syntax_error.directive_failed", "", "Directive failed."], [], -1, "syntax_error.directive_failed"))
add("strings", 3, Clause(0, ["system_error.user_abort", "", "Execution aborted on user request."], [], -1, "system_error.user_abort"))
add("strings", 3, Clause(0, ["system_error.user_exit", "", "System ended on user request."], [], -1, "system_error.user_exit"))