Python "streams"

Admin User, created Apr 29. 2024
         
###
# Modern Albufeira Prolog Interpreter
#
# 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"), ["nl", 0])]))
add("nl", 0, Clause(1, [], [Skeleton(Cache("current_output"), [Place(-2)]), Skeleton(Cache("put_code"), [Place(0), 10]), Skeleton(Cache("flush_output"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["nl", 1])]))
add("nl", 1, Clause(1, [Place(-2)], [Skeleton(Cache("put_code"), [Place(0), 10]), Skeleton(Cache("flush_output"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["flush_output", 0])]))
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])]))
add("put_code", 1, Clause(2, [Place(-2)], [Skeleton(Cache("current_output"), [Place(-3)]), Skeleton(Cache("put_code"), [Place(1), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["get_code", 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"), ["get_code", 2])]))
add("get_code", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("os_get_code"), [Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, NotImplemented))
add("get_code", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("sys_read_buffer"), [Place(1)]), Skeleton(Cache("os_get_code"), [Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, NotImplemented))
add("get_code", 2, Clause(1, [Place(-1), Place(-2)], [Skeleton(Cache("="), [-1, Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["peek_code", 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"), ["peek_code", 2])]))
add("peek_code", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("os_peek_code"), [Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, NotImplemented))
add("peek_code", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("sys_read_buffer"), [Place(1)]), Skeleton(Cache("os_peek_code"), [Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(2)])], 0, NotImplemented))
add("peek_code", 2, Clause(1, [Place(-1), Place(-2)], [Skeleton(Cache("="), [-1, Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_buffer", 1])]))
add("sys_read_buffer", 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_read_promise"), [Place(1), Place(-3)]), Skeleton(Cache("$YIELD"), [Place(1)])], 0, NotImplemented))
add("sys_read_buffer", 1, Clause(1, [Place(-2)], [Skeleton(Cache("os_read_sync"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["get_atom", 2])]))
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])]))
add("get_atom", 3, Clause(4, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("get_compress"), [Place(0), Place(-5)]), Skeleton(Cache("sys_get_atom"), [Place(3), Place(1), Place(0), Place(-2)]), Skeleton(Cache("atom_codes"), [Place(2), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_atom", 4])]))
add("sys_get_atom", 4, Clause(2, [-1, Place(-1), Place(-1), Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), ["[]", Place(1)])], 0, -1))
add("sys_get_atom", 4, Clause(3, [Place(-3), Place(1), Place(-1), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Skeleton(".", [Place(1), "[]"]), Place(2)])], 0, NotImplemented))
add("sys_get_atom", 4, Clause(4, [Place(-2), Place(-3), Place(-4), Skeleton(".", [Place(0), Place(-2)])], [Skeleton(Cache("get_compress"), [Place(2), Place(-5)]), Skeleton(Cache("sys_get_atom"), [Place(3), Place(1), Place(2), Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["get_compress", 2])]))
add("get_compress", 2, Clause(4, [Place(-2), Place(-3)], [Skeleton(Cache("os_stream_flags"), [Place(0), Place(-4)]), Skeleton(Cache("get_code"), [Place(0), Place(-5)]), Skeleton(Cache("sys_get_compress"), [Place(3), Place(2), Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_compress", 4])]))
add("sys_get_compress", 4, Clause(2, [13, Place(-1), Place(-1), Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [10, Place(1)])], 0, 13))
add("sys_get_compress", 4, Clause(4, [10, Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(1), 1]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("get_compress"), [Place(2), Place(3)])], 0, 10))
add("sys_get_compress", 4, Clause(1, [Place(-2), Place(-1), Place(-1), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["put_atom", 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"), ["write", 1])]))
add("write", 1, Clause(2, [Place(-2)], [Skeleton(Cache("current_output"), [Place(-3)]), Skeleton(Cache("sys_write_term"), [Place(1), Place(0), "[]"])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["write", 2])]))
add("write", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("sys_write_term"), [Place(0), Place(1), "[]"])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["writeq", 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])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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])]))
add("file_property", 2, Clause(3, [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("member"), [Place(-2), Compound(".", ["last_modified", Compound(".", ["real_path", Compound(".", ["type", "[]"])])])]), Skeleton(Cache("ir_object_current"), [Place(1), Place(0), Place(-3)]), Skeleton(Cache("=.."), [Place(2), Skeleton(".", [Place(0), Skeleton(".", [Place(1), "[]"])])])], 0, NotImplemented))
add("file_property", 2, Clause(3, [Place(-2), Place(-3)], [Skeleton(Cache("=.."), [Place(1), Skeleton(".", [Place(-3), Skeleton(".", [Place(-4), "[]"])])]), Skeleton(Cache("sys_prop_map"), [Place(0), Place(-2)]), Skeleton(Cache("ir_object_current"), [Place(0), Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_prop_map", 2])]))
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_multifile_safe"), ["strings", 3])]))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["strings", 3])]))
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 Int-Ganzzahl (nicht zwischen - 2^31 und 2^31-1)."], [], -1, "representation_error.int"))
add("strings", 3, Clause(0, ["domain_error.prolog_flag", "de", "Argument sollte ein Flag sein, gefunden ~."], [], -1, "domain_error.prolog_flag"))
add("strings", 3, Clause(0, ["domain_error.flag_value", "de", "Argument sollte ein 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 ein Operatorlevel sein (kleiner oder gleich 1200), gefunden ~."], [], -1, "domain_error.operator_priority"))
add("strings", 3, Clause(0, ["domain_error.operator_specifier", "de", "Argument sollte ein Operatormode sein (fx, fy, xfx, yfx, xfy, xf, yf), gefunden ~."], [], -1, "domain_error.operator_specifier"))
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.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, ["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 int integer (not between - 2^31 and 2^31-1)."], [], -1, "representation_error.int"))
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, ["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.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"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_code_class", 2])]))
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_type"), [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])]))
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])]))
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])]))
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])]))
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("="), [Place(1), Place(-3)]), 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])]))
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])]))
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])]))
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("="), [Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), 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(2, ["[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_make_variable", 2])]))
add("sys_make_variable", 2, Clause(2, [Skeleton(".", [Place(-3), "[]"]), "anon"], [Skeleton(Cache("sys_code_class"), [Place(1), "is_score"]), 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])]))
add("sys_get_number", 4, Clause(4, [48, Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), 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])]))
add("sys_get_special", 4, Clause(4, [120, Skeleton("radix", [Place(-3), 16]), Place(-4), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_tolerant"), [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("="), [Place(2), Place(-4)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_tolerant"), [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("="), [Place(2), Place(-4)]), 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])]))
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("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), 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])]))
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("="), [Place(1), Place(-3)]), Skeleton(Cache("sys_next_code"), [Place(1), Place(2)])], 0, "."))
add("sys_get_double", 3, Clause(2, ["[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_tolerant", 3])]))
add("sys_get_tolerant", 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_digit"]), Skeleton(Cache("="), [Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_tolerant"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_get_tolerant", 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("sys_code_class"), [Place(4), "is_digit"]), Skeleton(Cache("="), [Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), Skeleton(Cache("sys_next_code"), [Place(2), Place(-4)]), Skeleton(Cache("sys_get_fraction"), [Place(1), Place(2), Place(3)])], 0, "."))
add("sys_get_tolerant", 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("="), [Place(3), Place(-5)]), Skeleton(Cache("sys_at_code"), [Place(-3), Place(3), Place(-5)]), Skeleton(Cache("sys_is_sign_digit"), [Place(1)]), Skeleton(Cache("="), [Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), Skeleton(Cache("sys_next_code"), [Place(3), Place(-5)]), Skeleton(Cache("sys_get_exponent"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_get_tolerant", 3, Clause(2, ["[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_decimal", 3])]))
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_code_class"), [Place(1), "is_digit"]), Skeleton(Cache("="), [Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), 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("sys_code_class"), [Place(4), "is_digit"]), Skeleton(Cache("="), [Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), 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(2, ["[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_fraction", 3])]))
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_code_class"), [Place(1), "is_digit"]), Skeleton(Cache("="), [Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), 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("="), [Place(3), Place(-5)]), Skeleton(Cache("sys_at_code"), [Place(-3), Place(3), Place(-5)]), Skeleton(Cache("sys_is_sign_digit"), [Place(1)]), Skeleton(Cache("="), [Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), 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(2, ["[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_exponent", 3])]))
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("="), [Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), 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])]))
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("sys_code_class"), [Place(1), "is_digit"]), Skeleton(Cache("="), [Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), 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(2, ["[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_expo", 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])]))
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("sys_code_class"), [Place(0), "is_digit"])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_sign", 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])]))
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("="), [Place(2), Place(-4)]), 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])]))
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("="), [Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), 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(2, ["[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_skip_block", 2])]))
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("="), [Place(1), Place(-3)]), 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])]))
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("="), [Place(1), Place(-3)]), 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])]))
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])]))
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("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), 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])]))
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])]))
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("="), [Place(3), Place(-5)]), 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("="), [Place(3), Place(-5)]), 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])]))
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("="), [Place(3), Place(-5)]), 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(2, ["[]", Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_char", 3])]))
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])]))
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])]))
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("="), [Place(3), Place(-5)]), 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("="), [Place(3), Place(-5)]), 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("="), [Place(4), Place(-6)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(4), Place(-6)]), 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])]))
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("="), [Place(1), Place(-3)]), Skeleton(Cache("sys_next_code"), [Place(1), Place(2)])], 0, "."))
add("sys_get_skip", 4, Clause(2, [Place(-2), Place(0), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_backslash", 4])]))
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("="), [Place(1), Place(-3)]), Skeleton(Cache("sys_next_code"), [Place(1), Place(2)])], 0, "."))
add("sys_get_backslash", 4, Clause(2, [Place(-2), Place(0), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_get_radix", 5])]))
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("="), [Place(5), Place(-7)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(5), Place(-7)]), 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(2, [Place(-2), Place(0), Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_radix", 2])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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])]))
add("sys_sync_throw", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_fill_stack"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(-3)]), 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])]))
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])]))
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])]))
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_code", 2])]))
add("sys_safe_code", 2, Clause(3, [Place(-2), Place(-3)], [Skeleton(Cache("current_lastcode"), [Place(0), Place(-4)]), Skeleton(Cache("sys_safe_space"), [Place(0), Place(2), Place(1)]), Skeleton(Cache("put_code"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_safe_atom", 2])]))
add("sys_safe_atom", 2, Clause(4, [Place(-3), Place(-4)], [Skeleton(Cache("atom_arg"), [0, Place(2), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("current_lastcode"), [Place(1), Place(-2)]), Skeleton(Cache("sys_safe_space"), [Place(1), Place(0), Place(3)]), Skeleton(Cache("put_atom"), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_safe_atom", 2, Clause(0, [Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_safe_space", 3])]))
add("sys_safe_space", 3, Clause(5, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_code_class"), [Place(2), Place(-6)]), Skeleton(Cache("sys_name_class"), [Place(4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_safe_name"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_safe_space", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_code_class"), [Place(2), "is_graphic"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_safe_symbol"), [Place(1), Place(3)])], 0, NotImplemented))
add("sys_safe_space", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("=:="), [Place(2), Place(3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_safe_quote"), [Place(1), Place(3)])], 0, NotImplemented))
add("sys_safe_space", 3, Clause(0, [Place(-1), Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_safe_name", 3])]))
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_code"), [Place(1), 32])], 0, NotImplemented))
add("sys_safe_name", 3, Clause(2, [Place(-3), 48, 39], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_code"), [Place(1), 32])], 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", 2])]))
add("sys_safe_symbol", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("sys_code_class"), [Place(2), "is_graphic"]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_code"), [Place(1), 32])], 0, NotImplemented))
add("sys_safe_symbol", 2, Clause(0, [Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_safe_quote", 2])]))
add("sys_safe_quote", 2, Clause(2, [Place(-3), 39], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_code"), [Place(1), 32])], 0, NotImplemented))
add("sys_safe_quote", 2, Clause(2, [Place(-3), 96], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_code"), [Place(1), 32])], 0, NotImplemented))
add("sys_safe_quote", 2, Clause(2, [Place(-3), 34], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_code"), [Place(1), 32])], 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])]))
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])]))
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])]))
add("sys_convert_quote", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("="), [Place(2), Skeleton(".", [92, Place(-4)])]), Skeleton(Cache("sys_convert_sep"), [Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), 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("="), [Place(3), Place(-5)]), Skeleton(Cache("sys_convert_quote"), [Place(2), Place(3), Place(4)])], 0, "."))
add("sys_convert_quote", 3, Clause(2, ["[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_sep", 2])]))
add("sys_convert_sep", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Skeleton(".", [13, Skeleton(".", [10, Place(1)])])])], -1, "."))
add("sys_convert_sep", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Skeleton(".", [10, Place(1)])])], -1, "."))
add("sys_convert_sep", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Skeleton(".", [13, Place(1)])])], -1, "."))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_char", 3])]))
add("sys_convert_char", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("="), [Place(2), Skeleton(".", [92, Place(-4)])]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), Skeleton(Cache("sys_convert_escape"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_convert_char", 3, Clause(3, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Skeleton(".", [Place(-2), 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(2), Place(1)])], -1, NotImplemented))
add("sys_convert_char", 3, Clause(3, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Skeleton(".", [Place(-2), 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(2), Place(1)])], -1, NotImplemented))
add("sys_convert_char", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("="), [Place(1), Skeleton(".", [Place(0), Place(2)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_convert_code", 3])]))
add("sys_convert_code", 3, Clause(3, [39, Place(-3), Place(-4)], [Skeleton(Cache("="), [Place(1), Skeleton(".", [39, Place(-3)])]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(-3)]), 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])]))
add("sys_convert_double", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("="), [Place(1), Skeleton(".", [39, Place(-3)])]), 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])]))
add("sys_convert_escape", 3, Clause(5, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("="), [Place(2), Skeleton(".", [Place(-4), Place(-6)])]), Skeleton(Cache("sys_is_escape"), [Place(2), Place(1)]), Skeleton(Cache("="), [Place(4), Place(-6)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(4), Place(3)])], 0, NotImplemented))
add("sys_convert_escape", 3, Clause(6, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("="), [Place(2), Skeleton(".", [Place(-4), Place(-6)])]), Skeleton(Cache("sys_is_radix"), [Place(2), 8]), Skeleton(Cache("="), [Place(4), Place(-6)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(4), Place(-6)]), Skeleton(Cache("sys_convert_radix"), [Place(-2), 8, Place(4), Place(-6)]), Skeleton(Cache("atom_codes"), [Place(-7), Skeleton(".", [Place(2), Place(0)])]), Skeleton(Cache("atom_integer"), [Place(5), 8, Place(1)]), Skeleton(Cache("="), [Place(4), Place(-6)]), Skeleton(Cache("sys_convert_backslash"), [Place(4), Place(3)])], 0, NotImplemented))
add("sys_convert_escape", 3, Clause(5, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("="), [Place(2), Skeleton(".", [120, Place(-4)])]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), Skeleton(Cache("sys_convert_backslash"), [Place(2), Place(3)])], 0, NotImplemented))
add("sys_convert_escape", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("="), [Place(2), Skeleton(".", [Place(1), Place(-4)])]), Skeleton(Cache("sys_is_meta"), [Place(1)]), Skeleton(Cache("="), [Place(2), Place(-4)]), 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])]))
add("sys_convert_backslash", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("="), [Place(1), Skeleton(".", [92, Place(-3)])]), 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])]))
add("sys_convert_radix", 4, Clause(6, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6), Place(-7)], [Skeleton(Cache("="), [Place(4), Skeleton(".", [Place(1), Place(-6)])]), Skeleton(Cache("sys_is_radix"), [Place(1), Place(3)]), Skeleton(Cache("="), [Place(4), Place(-6)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(4), Place(-6)]), Skeleton(Cache("sys_convert_radix"), [Place(2), Place(3), Place(4), Place(5)])], 0, "."))
add("sys_convert_radix", 4, Clause(2, ["[]", Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_opts", 3])]))
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])]))
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(5, [Skeleton("annotation", [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), 16, Place(3), Place(2)])], 0, "annotation"))
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("type_error", ["write_option", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_variable_names", 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])]))
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])]))
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])]))
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(4, [Skeleton("annotation", [Place(-3)]), Skeleton("z", [Place(-4), Place(-5)]), Skeleton("z", [Place(2), Place(-4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_opt_boolean"), [Place(1), 16, Place(3), Place(2)])], 0, "annotation"))
add("sys_read_opt", 3, Clause(1, [Place(-2), Place(-1), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["read_option", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_results", 2])]))
add("sys_read_results", 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_read_results", 2, Clause(4, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_read_result"), [Place(1), Place(3)]), Skeleton(Cache("sys_read_results"), [Place(2), Place(3)])], 0, "."))
add("sys_read_results", 2, Clause(1, ["[]", Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "[]"))
add("sys_read_results", 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_read_result", 2])]))
add("sys_read_result", 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_read_result", 2, Clause(3, [Skeleton("variable_names", [Place(-3)]), Skeleton("s", [Place(-4), Place(-1)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("reverse"), [Place(2), Place(1)])], 0, "variable_names"))
add("sys_read_result", 2, Clause(3, [Skeleton("singletons", [Place(-3)]), Skeleton("s", [Place(-1), Place(-4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("reverse"), [Place(2), Place(1)])], 0, "singletons"))
add("sys_read_result", 2, Clause(1, [Skeleton("priority", [Place(-1)]), Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "priority"))
add("sys_read_result", 2, Clause(1, [Skeleton("annotation", [Place(-1)]), Place(-1)], [Skeleton(Cache("$CUT"), [Place(0)])], 0, "annotation"))
add("sys_read_result", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["read_option", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_opt_boolean", 4])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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(2, ["[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_escape_code", 3])]))
add("sys_escape_code", 3, Clause(5, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_is_escape"), [Place(-6), Place(1)]), Skeleton(Cache("="), [Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), 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("="), [Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), Skeleton(Cache("sys_escape_code2"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_escape_code", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("="), [Place(1), Skeleton(".", [Place(0), Place(2)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_escape_code2", 3])]))
add("sys_escape_code2", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("=<"), [Place(1), 511]), Skeleton(Cache("="), [Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), Skeleton(Cache("atom_integer"), [Place(-2), 8, Place(1)]), Skeleton(Cache("atom_codes"), [Place(0), Place(-2)]), Skeleton(Cache("="), [Place(2), Place(-4)]), 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), Place(-3)]), 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])]))
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), Place(-5)]), 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(2, ["[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, "[]"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_make_negative", 2])]))
add("sys_make_negative", 2, Clause(4, [Skeleton("$RDX", [Place(-3), Place(-4)]), Skeleton("$RDX", [Place(-5), Place(2)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(1)]), Place(3)])], 0, "$RDX"))
add("sys_make_negative", 2, Clause(3, [Skeleton("$CHR", [Place(-3)]), Skeleton("$CHR", [Place(-4)])], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(1)]), Place(2)])], 0, "$CHR"))
add("sys_make_negative", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(0)]), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_multifile_safe"), ["strings", 3])]))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["strings", 3])]))
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_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) ~, anonyme Variable(n) (_) benutzen."], [], -1, "syntax_error.singleton_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, ["existence_error.source_sink", "de", "Datei ~ nicht gefunden."], [], -1, "existence_error.source_sink"))
add("strings", 3, Clause(0, ["permission_error.open.source_sink", "de", "Kann Datei ~ nicht öffnen."], [], -1, "permission_error.open.source_sink"))
add("strings", 3, Clause(0, ["resource_error.io_exception", "de", "Datei nicht erstellt oder nicht zugreifbar."], [], -1, "resource_error.io_exception"))
add("strings", 3, Clause(0, ["resource_error.remote_error", "de", "Fehler von Entfernt erhalten."], [], -1, "resource_error.remote_error"))
add("strings", 3, Clause(0, ["resource_error.socket_timeout", "de", "Ein-/Ausgabeauszeit."], [], -1, "resource_error.socket_timeout"))
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_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) ~, use anonymous variable(s) (_)."], [], -1, "syntax_error.singleton_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"))
add("strings", 3, Clause(0, ["existence_error.source_sink", "", "File ~ not found."], [], -1, "existence_error.source_sink"))
add("strings", 3, Clause(0, ["permission_error.open.source_sink", "", "Cannot open file ~."], [], -1, "permission_error.open.source_sink"))
add("strings", 3, Clause(0, ["resource_error.io_exception", "", "File not created or not accessible."], [], -1, "resource_error.io_exception"))
add("strings", 3, Clause(0, ["resource_error.remote_error", "", "Got error from remote."], [], -1, "resource_error.remote_error"))
add("strings", 3, Clause(0, ["resource_error.socket_timeout", "", "Input/output timeout."], [], -1, "resource_error.socket_timeout"))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_is_infix", 3])]))
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])]))
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])]))
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])]))
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("set_lastcode"), [Place(0), -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])]))
add("sys_write_priority", 3, Clause(3, [Place(-3), Place(-1), Place(-4)], [Skeleton(Cache("var"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_write_var"), [Place(1), Place(2)])], 0, NotImplemented))
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(3, [Place(-3), Place(-1), Place(-4)], [Skeleton(Cache("reference"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_put_symbol"), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_write_priority", 3, Clause(6, [Skeleton("$RDX", [Place(-3), Place(-4)]), Skeleton("w", [Place(-5), Place(-1), Place(-1)]), Place(-6)], [Skeleton(Cache("sys_current_flags"), [Place(4), Place(-7)]), Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(5), 16]), 0]), Skeleton(Cache("integer"), [Place(1)]), Skeleton(Cache("integer"), [Place(2)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_atom_radix"), [Place(-2), Place(2), Place(1)]), Skeleton(Cache("sys_current_stream"), [Place(4), Place(-6)]), Skeleton(Cache("sys_put_nspace"), [Place(4), Place(3)]), Skeleton(Cache("sys_safe_atom"), [Place(4), Place(0)])], 0, "$RDX"))
add("sys_write_priority", 3, Clause(4, [Skeleton("$STR", [Place(-3)]), Place(-1), Place(-4)], [Skeleton(Cache("sys_current_flags"), [Place(2), Place(-5)]), Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(3), 16]), 0]), Skeleton(Cache("atom"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_atom_string"), [Place(-2), Place(1)]), Skeleton(Cache("sys_current_stream"), [Place(2), Place(-4)]), Skeleton(Cache("sys_safe_atom"), [Place(2), Place(0)])], 0, "$STR"))
add("sys_write_priority", 3, Clause(5, [Skeleton("$CHR", [Place(-3)]), Skeleton("w", [Place(-4), Place(-1), Place(-1)]), Place(-5)], [Skeleton(Cache("sys_current_flags"), [Place(3), Place(-6)]), Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(4), 16]), 0]), Skeleton(Cache("integer"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_atom_char"), [Place(-2), Place(1)]), Skeleton(Cache("sys_current_stream"), [Place(3), Place(-5)]), Skeleton(Cache("sys_put_nspace"), [Place(3), Place(2)]), Skeleton(Cache("sys_safe_atom"), [Place(3), Place(0)])], 0, "$CHR"))
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_code"), [Place(0), 91]), 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_code"), [Place(0), 93])], 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_code"), [Place(0), 123]), Skeleton(Cache("sys_write_priority"), [Place(1), Skeleton("w", [1, 1200, Place(2)]), Place(3)]), Skeleton(Cache("put_code"), [Place(0), 125])], 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])]))
add("sys_write_number", 3, Clause(4, [Place(-3), Skeleton("w", [Place(-4), Place(-1), Place(-1)]), Place(-5)], [Skeleton(Cache("number"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("atom_number"), [Place(-2), Place(1)]), Skeleton(Cache("sys_current_stream"), [Place(3), Place(-5)]), Skeleton(Cache("sys_put_nspace"), [Place(3), Place(2)]), Skeleton(Cache("sys_safe_atom"), [Place(3), Place(0)])], 0, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_atom", 3])]))
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_symbol"), [Place(1), Place(3)]), Skeleton(Cache("put_code"), [Place(0), 41])], 0, NotImplemented))
add("sys_write_atom", 3, Clause(2, [Place(-2), Place(-1), Place(-3)], [Skeleton(Cache("sys_put_symbol"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_prefix", 6])]))
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(-13)]), Skeleton(Cache("sys_put_symbol"), [Place(0), Place(4)]), Skeleton(Cache("sys_put_rspace"), [Place(9), Place(6), Place(11), Place(-13)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(5), Place(7)]), Place(-8)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("/\\"), [Place(11), Compound(Cache("\\"), [8])]), Place(-13)]), Skeleton(Cache("sys_write_priority"), [Place(8), Skeleton("w", [Place(11), 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])]))
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])]))
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_write_list", 3])]))
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_code"), [Place(0), 124]), 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_code"), [Place(3), 124]), 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])]))
add("sys_write_compound", 3, Clause(6, [Place(-2), Skeleton("w", [Place(-1), Place(-1), Place(-3)]), Place(-4)], [Skeleton(Cache("=.."), [Place(0), Skeleton(".", [Place(-2), Skeleton(".", [Place(-5), Place(-6)])])]), Skeleton(Cache("sys_current_stream"), [Place(2), Place(-7)]), Skeleton(Cache("sys_put_symbol"), [Place(0), Place(2)]), Skeleton(Cache("put_code"), [Place(5), 40]), Skeleton(Cache("sys_write_priority"), [Place(3), Skeleton("w", [1, 999, Place(1)]), Place(2)]), Skeleton(Cache("sys_write_args"), [Place(4), Place(1), Place(2)]), Skeleton(Cache("put_code"), [Place(5), 41])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_write_args", 3])]))
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_radix", 3])]))
add("sys_atom_radix", 3, Clause(3, [Place(-3), 16, Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_atom_radix2"), [Place(1), 16, "0x", Place(2)])], 0, NotImplemented))
add("sys_atom_radix", 3, Clause(3, [Place(-3), 8, Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_atom_radix2"), [Place(1), 8, "0o", Place(2)])], 0, NotImplemented))
add("sys_atom_radix", 3, Clause(3, [Place(-3), 2, Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_atom_radix2"), [Place(1), 2, "0b", Place(2)])], 0, NotImplemented))
add("sys_atom_radix", 3, Clause(2, [Place(-2), Place(-1), Place(-3)], [Skeleton(Cache("atom_integer"), [Place(0), 10, Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_atom_radix2", 4])]))
add("sys_atom_radix2", 4, Clause(5, [Place(-3), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("=<"), [0, Place(4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("atom_integer"), [Place(-2), Place(2), Place(4)]), Skeleton(Cache("atom_split"), [Place(1), "", Skeleton(".", [Place(3), Skeleton(".", [Place(0), "[]"])])])], 0, NotImplemented))
add("sys_atom_radix2", 4, Clause(5, [Place(-3), Place(-4), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("-"), [Place(4)]), Place(-6)]), Skeleton(Cache("atom_integer"), [Place(-2), Place(2), Place(4)]), Skeleton(Cache("atom_split"), [Place(1), "", Skeleton(".", ["-", Skeleton(".", [Place(3), Skeleton(".", [Place(0), "[]"])])])])], 0, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_atom_string", 2])]))
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])]))
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", 2])]))
add("sys_write_var", 2, Clause(4, [Place(-3), Place(-4)], [Skeleton(Cache("sys_current_vars"), [Place(2), Place(-5)]), Skeleton(Cache("sys_find_var"), [Place(1), Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_current_flags"), [Place(2), Place(-2)]), Skeleton(Cache("sys_var_quoted"), [Place(3), Place(0), Place(-2)]), Skeleton(Cache("sys_current_stream"), [Place(2), Place(-4)]), Skeleton(Cache("sys_safe_atom"), [Place(2), Place(0)])], 0, NotImplemented))
add("sys_write_var", 2, Clause(3, [Place(-2), Place(-3)], [Skeleton(Cache("sys_current_stream"), [Place(1), Place(-3)]), Skeleton(Cache("sys_safe_code"), [Place(1), 95]), 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])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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_code"), [Place(1), 32]), Skeleton(Cache("put_code"), [Place(1), 40]), 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_code"), [Place(0), 40]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("\\/"), [Place(1), 1]), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_rparen", 5])]))
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_code"), [Place(1), 41])], 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])]))
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])]))
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])]))
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])]))
add("sys_put_spaces", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache(">"), [Place(2), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_code"), [Place(1), 32]), 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])]))
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_code"), [Place(1), 32])], 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])]))
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_code"), [Place(1), 32]), 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])]))
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])]))
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_put_nspace", 2])]))
add("sys_put_nspace", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(2), 4]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("put_code"), [Place(1), 32])], 0, NotImplemented))
add("sys_put_nspace", 2, Clause(0, [Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_oper_escape", 3])]))
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])]))
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])]))
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])]))
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_oper", 3])]))
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_code"), [Place(1), 44])], 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_code"), [Place(1), 124])], 0, "|"))
add("sys_put_oper", 3, Clause(4, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_current_flags"), [Place(1), Place(-5)]), Skeleton(Cache("sys_symbol_quoted"), [Place(0), Place(3), Place(2)]), Skeleton(Cache("sys_current_stream"), [Place(1), Place(-3)]), Skeleton(Cache("sys_safe_atom"), [Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_put_symbol", 2])]))
add("sys_put_symbol", 2, Clause(3, [Place(-2), Place(-3)], [Skeleton(Cache("sys_current_flags"), [Place(1), Place(-4)]), Skeleton(Cache("sys_symbol_quoted"), [Place(0), Place(2), Place(-4)]), Skeleton(Cache("sys_current_stream"), [Place(1), Place(-3)]), Skeleton(Cache("sys_safe_atom"), [Place(1), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_symbol_quoted", 3])]))
add("sys_symbol_quoted", 3, Clause(4, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("reference"), [Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_reference_quoted"), [Place(1), Place(2), Place(3)])], 0, NotImplemented))
add("sys_symbol_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_symbol_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_symbol_quoted", 3, Clause(1, [Place(-2), Place(-1), Place(0)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_reference_quoted", 3])]))
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])]))
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])]))
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"), [".", Place(2), Place(3)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_priority", 4])]))
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])]))
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("="), [Place(6), Place(-8)]), 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("="), [Place(6), Place(-8)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(6), Place(-8)]), 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("="), [Place(6), Place(-8)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(6), Place(-8)]), 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(2, [Place(-1), Place(-2), Place(0), Place(-1), Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_infix", 7])]))
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("="), [Place(6), Place(-8)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(6), Place(-8)]), 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("="), [Place(4), Place(-6)]), 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("="), [Place(6), Place(-8)]), 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("="), [Place(6), Place(-8)]), 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("="), [Place(6), Place(-8)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(6), Place(-8)]), 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("="), [Place(4), Place(-6)]), 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("="), [Place(6), Place(-8)]), 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(2, [Place(-1), Place(-2), Place(0), Place(-1), Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_lookup_var", 4])]))
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("="), [Place(3), Place(-5)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), 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])]))
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("="), [Place(2), Place(-4)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), Skeleton(Cache("sys_set_anon"), [Place(4), Place(2), Place(3)])], 0, NotImplemented))
add("sys_remove_anon", 3, Clause(2, [Place(-1), Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_current_token", 3])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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])]))
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("="), [Place(5), Place(-7)]), 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("="), [Place(1), Place(-3)]), 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("="), [Place(3), Place(-5)]), 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("="), [Place(4), Place(-6)]), 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("="), [Place(4), Place(-6)]), 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("="), [Place(2), Place(-4)]), 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("="), [Place(1), Place(-3)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], 0, "number"))
add("sys_read_factor", 6, Clause(4, [Skeleton("radix", [Place(-3), Place(-1)]), Place(1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("sys_current_options"), [Place(-5), Place(1), Place(-3)]), Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(3), 16]), 0]), Skeleton(Cache("="), [Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(-3)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], 0, "radix"))
add("sys_read_factor", 6, Clause(3, [Skeleton("radix", [Place(-3), Place(-4)]), Skeleton("$RDX", [Place(1), Place(2)]), Place(-1), 0, Place(-4), Place(-3)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(2), Place(-4)]), Skeleton(Cache("sys_next_token"), [Place(2), Place(1)])], 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("="), [Place(1), Place(-3)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], 0, "reference"))
add("sys_read_factor", 6, Clause(4, [Skeleton("codes", [Place(-3)]), Place(1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("sys_current_options"), [Place(-5), Place(1), Place(-3)]), Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(3), 16]), 0]), Skeleton(Cache("="), [Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(-3)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], 0, "codes"))
add("sys_read_factor", 6, Clause(5, [Skeleton("codes", [Place(-3)]), Skeleton("$STR", [Place(-4)]), Place(-1), 0, Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), Skeleton(Cache("atom_codes"), [Place(2), Place(1)]), Skeleton(Cache("="), [Place(3), Place(-5)]), Skeleton(Cache("sys_next_token"), [Place(3), Place(4)])], 0, "codes"))
add("sys_read_factor", 6, Clause(4, [Skeleton("code", [Place(-3)]), Place(1), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("sys_current_options"), [Place(-5), Place(1), Place(-3)]), Skeleton(Cache("=:="), [Skeleton(Cache("/\\"), [Place(3), 16]), 0]), Skeleton(Cache("="), [Place(1), Place(-3)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(-3)]), Skeleton(Cache("sys_next_token"), [Place(1), Place(2)])], 0, "code"))
add("sys_read_factor", 6, Clause(3, [Skeleton("code", [Place(-3)]), Skeleton("$CHR", [Place(1)]), Place(-1), 0, Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(-3)]), 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])]))
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("="), [Place(3), Place(-5)]), 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("="), [Place(3), 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("="), [Place(5), Place(-7)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(5), Place(-7)]), 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("sys_make_negative"), [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("="), [Place(5), Place(-7)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(5), Place(-7)]), 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(2, [Place(-1), Place(-2), Place(0), Place(-1), 0, Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_prefix", 9])]))
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("="), [Place(3), Place(-5)]), 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("="), [Place(5), Place(-7)]), 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])]))
add("sys_read_args", 4, Clause(5, [",", Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), 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(2, [Place(-1), "[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_list", 6])]))
add("sys_read_list", 6, Clause(6, ["]", Place(-3), Place(-4), Place(-5), Place(-6), Place(-7)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(4), Place(-6)]), 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])]))
add("sys_read_rest", 4, Clause(5, [",", Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(3), Place(-5)]), 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("="), [Place(2), Place(-4)]), 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(2, [Place(-1), "[]", Place(-2), Place(-3)], [Skeleton(Cache("="), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_read_set", 6])]))
add("sys_read_set", 6, Clause(6, ["}", Place(-3), Place(-4), Place(-5), Place(-6), Place(-7)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(4), Place(-6)]), 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])]))
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("="), [Place(1), Place(-3)]), 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, [")", Place(-3), Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("="), [Place(1), Place(-3)]), 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("="), [Place(1), Place(-3)]), 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"), ["initialization", 1])]))
add("initialization", 1, Clause(1, [Place(-2)], [Place(0)], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_launch", 0])]))
add("sys_launch", 0, Clause(1, [], [Skeleton(Cache("current_prolog_flag"), ["argv", Place(-2)]), Skeleton(Cache("sys_trap"), [Skeleton("sys_launch", [Place(0)]), Place(-2), Skeleton("sys_print_error", [Place(0)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_launch", 1])]))
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)])], -1, "."))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_banner", 0])]))
add("sys_banner", 0, Clause(5, [], [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("sys_time_atom"), [Place(4), Place(3), Place(-5)]), Skeleton(Cache("current_output"), [Place(-6)]), Skeleton(Cache("sys_print_message"), [Skeleton("banner", ["player", Place(0), Place(1), Place(2), Place(3)]), Place(4)]), Cache("nl"), Skeleton(Cache("sys_print_message"), [Compound("banner", ["copyright"]), Place(4)]), Cache("nl")], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_toplevel", 0])]))
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])]))
add("sys_toplevel_prompt", 1, Clause(4, [Place(-3)], [Cache("repeat"), Compound(Cache("put_atom"), ["?- "]), Cache("flush_output"), Skeleton(Cache("sys_trap"), [Skeleton("read_term", [Place(1), Place(-3), Skeleton(".", [Skeleton("variable_names", [Place(-4)]), "[]"])]), Place(-5), Skeleton(",", [Skeleton("sys_print_error", [Place(3)]), "fail"])]), Skeleton(make_defined([Clause(2, [Place(-3), Place(-1), Place(-1)], [Skeleton(Cache("=="), [Place(1), "end_of_file"]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented), Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_trap"), [Skeleton("sys_query_attended", [Place(0), Place(1)]), Place(2), Skeleton("sys_print_error", [Place(2)])]), Cache("fail")], -1, NotImplemented)]), [Place(1), Place(2), Place(3)]), Skeleton(Cache("$CUT"), [Place(0)])], 0, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_query_attended", 2])]))
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_listing_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_listing_period")], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_ask_abort", 0])]))
add("sys_ask_abort", 0, Clause(1, [], [Cache("flush_output"), Skeleton(Cache("get_atom"), [10, Place(-2)]), Skeleton(Cache("\\=="), [Place(0), ";\n"])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_answer_show", 1])]))
add("sys_answer_show", 1, Clause(2, [Place(-2)], [Skeleton(Cache("reverse"), [Place(0), 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_filter_names", 3])]))
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])]))
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])]))
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])]))
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("quoted", ["true"]), "[]"])])])])], 0, NotImplemented))
add("sys_answer_term", 2, Clause(0, [Place(-1), Place(-1)], [Compound(Cache("put_atom"), ["<cyclic term>"])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["listing", 0])]))
add("listing", 0, Clause(0, [], [Skeleton(Cache("listing"), [Place(-1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["listing", 1])]))
add("listing", 1, Clause(2, [Place(-2)], [Skeleton(Cache("current_output"), [Place(-3)]), Skeleton(Cache("listing"), [Place(0), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["listing", 2])]))
add("listing", 2, Clause(3, [Place(-3), Place(-4)], [Skeleton(Cache("\\+"), [Skeleton("ground", [Place(1)])]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_listing_pattern"), [Place(1), Place(2)])], 0, NotImplemented))
add("listing", 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_integer"), [Place(2)]), Skeleton(Cache("sys_listing_user"), [Skeleton("/", [Place(1), Place(2)]), Place(3)])], 0, "/"))
add("listing", 2, Clause(1, [Place(-2), Place(-1)], [Skeleton(Cache("throw"), [Skeleton("error", [Skeleton("type_error", ["predicate_indicator", Place(0)]), Place(-1)])])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_pattern", 2])]))
add("sys_listing_pattern", 2, Clause(2, [Place(-2), Place(-3)], [Skeleton(Cache("current_predicate"), [Place(0)]), Skeleton(Cache("sys_listing_user"), [Place(0), Place(1)]), Cache("fail")], -1, NotImplemented))
add("sys_listing_pattern", 2, Clause(0, [Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_user", 2])]))
add("sys_listing_user", 2, Clause(4, [Skeleton("/", [Place(-2), Place(-3)]), Place(-4)], [Skeleton(Cache("\\+"), [Skeleton("sys_listing_stop", [Place(0), Place(1)])]), Skeleton(Cache("sys_listing_multifile"), [Place(0), Place(1), Place(2)]), Skeleton(Cache("sys_listing_dynamic"), [Place(0), Place(1), Place(2)]), Skeleton(Cache("functor"), [Place(-5), Place(0), Place(1)]), Skeleton(Cache("kb_clause_ref"), [Place(3), 0, Place(-3)]), Skeleton(Cache("kb_clause_shard"), [Place(1), Place(-2)]), Skeleton(Cache("\\+"), [Skeleton("sys_listing_stop", [Place(0)])]), Skeleton(Cache("kb_clause_data"), [Place(1), Place(3), Place(-3), Place(-2)]), Skeleton(Cache("sys_decode_body"), [Place(0), Place(-2)]), Skeleton(Cache("sys_untrans_body"), [Place(0), Place(1), Place(-3)]), Skeleton(Cache("sys_listing_show"), [Place(3), Place(1), Place(2)]), Cache("fail")], -1, "/"))
add("sys_listing_user", 2, Clause(0, [Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_multifile", 3])]))
add("sys_listing_multifile", 3, Clause(5, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("sys_predprop"), [Place(1), Place(2), Skeleton("sys_multifile", [Place(-6)])]), Skeleton(Cache("\\+"), [Skeleton("sys_listing_stop", [Place(4)])]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_listing_write"), [Skeleton(":-", [Skeleton("multifile", [Skeleton("/", [Place(1), Place(2)])])]), Place(3)])], 0, NotImplemented))
add("sys_listing_multifile", 3, Clause(0, [Place(-1), Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_dynamic", 3])]))
add("sys_listing_dynamic", 3, Clause(5, [Place(-3), Place(-4), Place(-5)], [Skeleton(Cache("kb_pred_link"), [Place(1), Place(2), Place(-6)]), Skeleton(Cache("kb_link_flags"), [Place(4), Place(-6)]), Skeleton(Cache("=\\="), [Skeleton(Cache("/\\"), [Place(4), 1]), 0]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_listing_write"), [Skeleton(":-", [Skeleton("dynamic", [Skeleton("/", [Place(1), Place(2)])])]), Place(3)])], 0, NotImplemented))
add("sys_listing_dynamic", 3, Clause(0, [Place(-1), Place(-1), Place(-1)], [], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_show", 3])]))
add("sys_listing_show", 3, Clause(3, [Place(-3), "true", Place(-4)], [Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_listing_write"), [Place(1), Place(2)])], 0, NotImplemented))
add("sys_listing_show", 3, Clause(3, [Place(-2), Place(-3), Place(-4)], [Skeleton(Cache("sys_listing_write"), [Skeleton(":-", [Place(0), Place(1)]), Place(2)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_write", 2])]))
add("sys_listing_write", 2, Clause(4, [Place(-2), Place(-3)], [Skeleton(Cache("term_variables"), [Place(0), Place(-4)]), Skeleton(Cache("term_singletons"), [Place(0), Place(-5)]), Skeleton(Cache("sys_listing_names"), [Place(2), Place(3), 0, Place(-5)]), Skeleton(Cache("write_term"), [Place(1), Place(0), Skeleton(".", [Compound("quoted", ["true"]), Skeleton(".", [Skeleton("variable_names", [Place(3)]), Compound(".", [Compound("format", ["true"]), "[]"])])])]), Skeleton(Cache("sys_listing_period"), [Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_names", 4])]))
add("sys_listing_names", 4, Clause(0, ["[]", Place(-1), Place(-1), "[]"], [], -1, "[]"))
add("sys_listing_names", 4, Clause(7, [Skeleton(".", [Place(-3), Place(-4)]), Place(-5), Place(-6), Skeleton(".", [Skeleton("=", ["_", Place(1)]), Place(-7)])], [Skeleton(Cache("member"), [Place(-8), Place(3)]), Skeleton(Cache("=="), [Place(6), Place(1)]), Skeleton(Cache("$CUT"), [Place(0)]), Skeleton(Cache("sys_listing_names"), [Place(2), Place(3), Place(4), Place(5)])], 0, "."))
add("sys_listing_names", 4, Clause(5, [Skeleton(".", [Place(-2), Place(-3)]), Place(-4), Place(-5), Skeleton(".", [Skeleton("=", [Place(-6), Place(0)]), Place(-2)])], [Skeleton(Cache("sys_listing_name"), [Place(3), Place(4)]), Skeleton(Cache("$EVAL"), [Skeleton(Cache("+"), [Place(3), 1]), Place(-5)]), Skeleton(Cache("sys_listing_names"), [Place(1), Place(2), Place(3), Place(0)])], -1, "."))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_name", 2])]))
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_usage_predicate"), ["sys_listing_period", 0])]))
add("sys_listing_period", 0, Clause(1, [], [Skeleton(Cache("current_output"), [Place(-2)]), Skeleton(Cache("sys_listing_period"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_period", 1])]))
add("sys_listing_period", 1, Clause(1, [Place(-2)], [Skeleton(Cache("sys_safe_code"), [Place(0), 46]), Skeleton(Cache("nl"), [Place(0)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_stop", 1])]))
add("sys_listing_stop", 1, Clause(0, ["system"], [], -1, "system"))
add("sys_listing_stop", 1, Clause(2, [Place(-2)], [Skeleton(Cache("current_prolog_flag"), ["system_url", Place(-3)]), Skeleton(Cache("file_directory_name"), [Place(1), Place(-3)]), Skeleton(Cache("sub_atom"), [Place(0), 0, Place(-1), Place(-1), Place(1)])], -1, NotImplemented))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["sys_listing_stop", 2])]))
add("sys_listing_stop", 2, Clause(0, ["sys_op", 5], [], -1, "sys_op"))
add("sys_listing_stop", 2, Clause(0, ["sys_source", 3], [], -1, "sys_source"))
add("sys_listing_stop", 2, Clause(0, ["sys_srcprop", 2], [], -1, "sys_srcprop"))
add("sys_listing_stop", 2, Clause(0, ["sys_predprop", 3], [], -1, "sys_predprop"))
add("sys_listing_stop", 2, Clause(0, ["sys_lastpred", 3], [], -1, "sys_lastpred"))
add("sys_listing_stop", 2, Clause(0, ["sys_including", 3], [], -1, "sys_including"))
add("sys_listing_stop", 2, Clause(0, ["sys_emulated", 2], [], -1, "sys_emulated"))
run(Goal(0, [Compound(Cache("sys_multifile_safe"), ["strings", 3])]))
run(Goal(0, [Compound(Cache("sys_usage_predicate"), ["strings", 3])]))
add("strings", 3, Clause(0, ["banner.player", "de", "Dogelog Spieler, Prolog zum Mond, ~.~.~ (~~)"], [], -1, "banner.player"))
add("strings", 3, Clause(0, ["banner.copyright", "de", "(c) 1985-2024, XLOG Technologies AG, Schweiz"], [], -1, "banner.copyright"))
add("strings", 3, Clause(0, ["banner.player", "", "Dogelog Player, Prolog to the Moon, ~.~.~ (~~)"], [], -1, "banner.player"))
add("strings", 3, Clause(0, ["banner.copyright", "", "(c) 1985-2024, XLOG Technologies AG, Switzerland"], [], -1, "banner.copyright"))