diff --git a/README.md b/README.md index 4da8c0769..969885fc0 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Inform 7 -v10.1.0-alpha.1+6R59 'Krypton' (23 March 2021) +v10.1.0-alpha.1+6R60 'Krypton' (24 March 2021) ## About Inform 7 diff --git a/build.txt b/build.txt index 9b1f1867b..d98bd8401 100644 --- a/build.txt +++ b/build.txt @@ -1,3 +1,3 @@ Prerelease: alpha.1 -Build Date: 23 March 2021 -Build Number: 6R59 +Build Date: 24 March 2021 +Build Number: 6R60 diff --git a/docs/assertions-module/2-ar.html b/docs/assertions-module/2-ar.html index 9a8fbbd1d..d148bc38f 100644 --- a/docs/assertions-module/2-ar.html +++ b/docs/assertions-module/2-ar.html @@ -234,7 +234,7 @@ conclusion we would have reached. } diff --git a/docs/assertions-module/2-bv.html b/docs/assertions-module/2-bv.html index 57615fde0..abb65b312 100644 --- a/docs/assertions-module/2-bv.html +++ b/docs/assertions-module/2-bv.html @@ -297,7 +297,7 @@ other languages may as well drop the hyphens. diff --git a/docs/assertions-module/2-cs.html b/docs/assertions-module/2-cs.html index 828a0d698..c37948b08 100644 --- a/docs/assertions-module/2-cs.html +++ b/docs/assertions-module/2-cs.html @@ -438,7 +438,7 @@ property of something. } diff --git a/docs/imperative-module/3-rs.html b/docs/assertions-module/2-is.html similarity index 75% rename from docs/imperative-module/3-rs.html rename to docs/assertions-module/2-is.html index 9bc6ed8a6..faf5fbc9c 100644 --- a/docs/imperative-module/3-rs.html +++ b/docs/assertions-module/2-is.html @@ -1,7 +1,7 @@ - Rule Subtrees + Imperative Subtrees @@ -41,10 +41,10 @@ function togglePopup(material_id) {
  • supervisor
  • Inform7 Modules

    - + -

    To tidy up invocation nodes into a list of children under the relevant rule node, and so turn each rule definition into a single subtree.

    + +

    To tidy up blocks of rule and phrase definition in the syntax tree.

    -
    - -

    §1. Initially, the invocations (parsed as just UNKNOWN_NT) defining a -rule (RULE_NT) are simply listed after it in the parse tree, but we -want them to become its children, and we give them the node type -INVOCATION_LIST_NT. -

    - -

    This function is used whenever new material is added. Whenever it finds a -childless RULE_NT followed by a sequence of UNKNOWN_NT nodes, it -joins these in sequence as children of the RULE_NT. Since it always -acts so as to leave a non-zero number of children, and since it acts only -on childless nodes, it cannot ever act on the same node twice. +

    §1. Blocks of imperative code in Inform 7 source text enter the syntax tree +at IMPERATIVE_NT nodes: some define phrases, some define rules. Those nodes +are initially followed by a run of UNKNOWN_NT nodes for the actual code. +The process of "acceptance" turns such definitions into a subtree, as +follows:

    -void RuleSubtrees::register_recently_lexed_phrases(void) {
    +IMPERATIVE_NT 'every turn'                IMPERATIVE_NT 'every turn
    +UNKNOWN_NT 'say "Hello!"'            -->      INVOCATION_LIST_NT 'say "Hello!"'
    +UNKNOWN_NT 'now the guard is alert'           INVOCATION_LIST_NT 'now the guard is alert'
    +
    +

    ImperativeSubtrees::accept needs to be called on every IMPERATIVE_NT node in order +for this to work; note that it does nothing further, but also causes no harm, +if called multiple times on the same node. ImperativeSubtrees::accept_all can +therefore safely be used to sweep up any IMPERATIVE_NT nodes not already processed. +

    + +
    +void ImperativeSubtrees::accept_all(void) {
         if (problem_count > 0) return;  for then the tree is perhaps broken anyway
    -    SyntaxTree::traverse(Task::syntax_tree(), RuleSubtrees::demote_command_nodes);
    +    SyntaxTree::traverse(Task::syntax_tree(), ImperativeSubtrees::accept);
     }
     
    -void RuleSubtrees::demote_command_nodes(parse_node *p) {
    -    if ((Node::get_type(p) == RULE_NT) && (p->down == NULL)) {
    +void ImperativeSubtrees::accept(parse_node *p) {
    +    if ((Node::get_type(p) == IMPERATIVE_NT) && (p->down == NULL)) {
             parse_node *end_def = p;
             while ((end_def->next) && (Node::get_type(end_def->next) == UNKNOWN_NT))
                 end_def = end_def->next;
    -        if (p == end_def) return;  RULE_NT not followed by any UNKNOWN_NTs
    +        if (p == end_def) return;  IMPERATIVE_NT not followed by any UNKNOWN_NTs
              splice so that p->next to end_def become the children of p:
             p->down = p->next;
             p->next = end_def->next;
             end_def->next = NULL;
             for (parse_node *inv_p = p->down; inv_p; inv_p = inv_p->next)
                 Node::set_type(inv_p, INVOCATION_LIST_NT);
    -        RuleSubtrees::parse_routine_structure(p);
    +        Parse the structure of the code block1.1;
         }
     }
     
    -

    §2. Parsing Routine Structure. There are now two possible syntaxes to express the structural makeup of a -routine. Traditional I7 syntax for blocks is to place them within begin/end -markers: the "begin" occurring at the end of the conditional or loop header, -and the "end if", "end while", etc., as a phrase of its own at the end of -the block. Newer I7 syntax (March 2008) is to use Python-style colons and -indentation. Both are allowed, but not in the same routine. +

    §1.1. After acceptance, and therefore exactly once, the structure of the code in +the definition is parsed and checked for sanity.

    -

    This routine opens with the routine's parse tree consisting of a simple -linked list of code-point nodes, one for each phrase. We must work out -which syntax is used, decipher it, and turn the list into a proper tree -structure in a single unified format. +

    Though it is now a historical relic, Inform has two different syntaxes for +blocks of code: "colon syntax", introduced in March 2008, which uses Python-like +colons and indentation to show structural subdivision; and "begin/end syntax", +which uses explicit marker phrases like "end if" and "end while". The compiler +continues to support both though they cannot be mixed in a single IMPERATIVE_NT +subtree.

    -

    How much simpler this would all be if we could abolish the old format, but -it's kept for the benefit of partially sighted users, who find tabbed -indentation difficult to manage with screen-readers. +

    The old syntax is retained not for compatibility with old code — very little +remains from the pre-2008 era which has not been modernised — but because +some partially sighted users find tabbed indentation difficult to manage +with screen-readers. +

    + +

    Here, then, we must work out which syntax is used, decipher it, and turn the +list into a proper tree structure in a single unified format. We will also +try to find and report as many problems as we can which are due to code blocks +being improperly opened or closed, because punctuation errors in rules are +one of the biggest sources of beginners' difficulties with Inform, and we want +to catch and report these problems early. +

    + +

    This means looking out for control structures such as "if" and "while": see +Control Structures (in supervisor) for where these are defined. +

    + +

    Parse the structure of the code block1.1 =

    -void RuleSubtrees::parse_routine_structure(parse_node *routine_node) {
         int initial_problem_count = problem_count;
     
    +    parse_node *imperative_node = p;
    +
         parse_node *uses_colon_syntax = NULL;
         parse_node *uses_begin_end_syntax = NULL;
         parse_node *mispunctuates_begin_end_syntax = NULL;
         parse_node *requires_colon_syntax = NULL;
     
    -    (a.1) See which block syntax is used by conditionals and loops2.1;
    -    (a.2) Report problems if the two syntaxes are mixed up with each other2.2;
    +    (a.1) See which block syntax is used by conditionals and loops1.1.1;
    +    (a.2) Report problems if the two syntaxes are mixed up with each other1.1.2;
         if (problem_count > initial_problem_count) return;
     
    -    if (uses_colon_syntax) (b.1) Annotate the parse tree with indentation levels2.3;
    -    (b.2) Annotate the parse tree with control structure usage2.4;
    +    if (uses_colon_syntax) (b.1) Annotate the parse tree with indentation levels1.1.3;
    +    (b.2) Annotate the parse tree with control structure usage1.1.4;
     
    -    (c) Expand comma notation for blocks2.5;
    +    (c) Expand comma notation for blocks1.1.5;
         if (problem_count > initial_problem_count) return;
     
    -    if (uses_colon_syntax) (d) Insert end nodes and check the indentation2.6;
    +    if (uses_colon_syntax) (d) Insert end nodes and check the indentation1.1.6;
         if (problem_count > initial_problem_count) return;
     
    -    (e) Structure the parse tree to match the use of control structures2.7;
    +    (e) Structure the parse tree to match the use of control structures1.1.7;
         if (problem_count > initial_problem_count) return;
     
    -    (f) Police the structure of the parse tree2.8;
    +    (f) Police the structure of the parse tree1.1.8;
         if (problem_count > initial_problem_count) return;
     
    -    (g) Optimise out the otherwise if nodes2.9;
    +    (g) Optimise out the otherwise if nodes1.1.9;
         if (problem_count > initial_problem_count) return;
     
    -    (h) Remove any end markers as no longer necessary2.11;
    +    (h) Remove any end markers as no longer necessary1.1.11;
         if (problem_count > initial_problem_count) return;
     
         if (uses_colon_syntax == FALSE)
    -        (i) Remove any begin markers as no longer necessary2.13;
    +        (i) Remove any begin markers as no longer necessary1.1.13;
     
    -    (j) Insert code block nodes so that nodes needing to be parsed are childless2.15;
    -    (k) Insert instead marker nodes2.17;
    -    (l) Break up say phrases2.19;
    -}
    +    (j) Insert code block nodes so that nodes needing to be parsed are childless1.1.15;
    +    (k) Insert instead marker nodes1.1.17;
    +    (l) Break up say phrases1.1.19;
     
    -

    §2.1. (a.1) See which block syntax is used by conditionals and loops2.1 = +

    +

    §1.1.1. (a.1) See which block syntax is used by conditionals and loops1.1.1 =

         parse_node *p;
    -    for (p = routine_node->down; p; p = p->next) {
    +    for (p = imperative_node->down; p; p = p->next) {
             control_structure_phrase *csp =
                 ControlStructures::detect(Node::get_text(p));
             if (csp) {
    @@ -191,7 +209,7 @@ indentation difficult to manage with screen-readers.
                     if (syntax_used) {
                         if (uses_colon_syntax == NULL) uses_colon_syntax = p;
                     } else {
    -                    Note what looks like a begin-end piece of syntax2.1.1;
    +                    Note what looks like a begin-end piece of syntax1.1.1.1;
                     }
                 }
                 if ((csp->requires_new_syntax) && (requires_colon_syntax == NULL))
    @@ -203,11 +221,11 @@ indentation difficult to manage with screen-readers.
             }
         }
     
    - -

    §2.1.1. It's possible in oddball cases to mis-punctuate such as to fool us, so: +

    +

    §1.1.1.1. It's possible in oddball cases to mis-punctuate such as to fool us, so:

    -

    Note what looks like a begin-end piece of syntax2.1.1 = +

    Note what looks like a begin-end piece of syntax1.1.1.1 =

    @@ -218,94 +236,90 @@ indentation difficult to manage with screen-readers.
                 mispunctuates_begin_end_syntax = p;
         }
     
    - -

    §2.2. (a.2) Report problems if the two syntaxes are mixed up with each other2.2 = +

    +

    §1.1.2. (a.2) Report problems if the two syntaxes are mixed up with each other1.1.2 =

         if ((uses_colon_syntax) && (mispunctuates_begin_end_syntax)) {
    -        current_sentence = routine_node;
    +        current_sentence = imperative_node;
             Problems::quote_source(1, current_sentence);
             Problems::quote_source(2, mispunctuates_begin_end_syntax);
             StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_BadOldSyntax));
             Problems::issue_problem_segment(
    -            "The rule or phrase definition %1 seems to use indentation and "
    -            "colons to group phrases together into 'if', 'repeat' or 'while' "
    -            "blocks. That's fine, but then this phrase seems to be missing "
    -            "some punctuation - %2. Perhaps a colon is missing?");
    +            "The rule or phrase definition %1 seems to use indentation and colons to group "
    +            "phrases together into 'if', 'repeat' or 'while' blocks. That's fine, but then "
    +            "this phrase seems to be missing some punctuation - %2. Perhaps a colon is missing?");
             Problems::issue_problem_end();
             return;
         }
     
         if ((uses_colon_syntax) && (uses_begin_end_syntax)) {
    -        current_sentence = routine_node;
    +        current_sentence = imperative_node;
             Problems::quote_source(1, current_sentence);
             Problems::quote_source(2, uses_colon_syntax);
             Problems::quote_source(3, uses_begin_end_syntax);
             StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_BothBlockSyntaxes));
             Problems::issue_problem_segment(
    -            "The rule or phrase definition %1 seems to use both ways of grouping "
    -            "phrases together into 'if', 'repeat' and 'while' blocks at once. "
    -            "Inform allows two alternative forms, but they cannot be mixed in "
    -            "the same definition. %POne way is to end the 'if', 'repeat' or "
    -            "'while' phrases with a 'begin', and then to match that with an "
    -            "'end if' or similar. ('Otherwise' or 'otherwise if' clauses are "
    -            "phrases like any other, and end with semicolons in this case.) "
    +            "The rule or phrase definition %1 seems to use both ways of grouping phrases "
    +            "together into 'if', 'repeat' and 'while' blocks at once. Inform allows two "
    +            "alternative forms, but they cannot be mixed in the same definition. %P"
    +            "One way is to end the 'if', 'repeat' or 'while' phrases with a 'begin', and "
    +            "then to match that with an 'end if' or similar. ('Otherwise' or 'otherwise if' "
    +            "clauses are phrases like any other, and end with semicolons in this case.) "
                 "You use this begin/end form here, for instance - %3. %P"
    -            "The other way is to end with a colon ':' and then indent the "
    -            "subsequent phrases underneath, using tabs. (Note that any "
    -            "'otherwise' or 'otherwise if' clauses also have to end with "
    -            "colons in this case.) You use this indented form here - %2.");
    +            "The other way is to end with a colon ':' and then indent the subsequent phrases "
    +            "underneath, using tabs. (Note that any 'otherwise' or 'otherwise if' clauses "
    +            "also have to end with colons in this case.) You use this indented form here - %2.");
             Problems::issue_problem_end();
             return;
         }
     
         if ((requires_colon_syntax) && (uses_begin_end_syntax)) {
    -        current_sentence = routine_node;
    +        current_sentence = imperative_node;
             Problems::quote_source(1, current_sentence);
             Problems::quote_source(2, requires_colon_syntax);
             StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_NotInOldSyntax));
             Problems::issue_problem_segment(
    -            "The construction %2, in the rule or phrase definition %1, "
    -            "is only allowed if the rule is written in the 'new' format, "
    -            "that is, with the phrases written one to a line with "
    -            "indentation showing how they are grouped together, and "
    -            "with colons indicating the start of such a group.");
    +            "The construction %2, in the rule or phrase definition %1, is only allowed if the "
    +            "rule is written in the 'new' format, that is, with the phrases written one to a "
    +            "line with indentation showing how they are grouped together, and with colons "
    +            "indicating the start of such a group.");
             Problems::issue_problem_end();
             return;
         }
     
    - -

    §2.3. If we're using Pythonesque notation, then the number of tab stops of +

    +

    §1.1.3. If we're using Pythonesque notation, then the number of tab stops of indentation of a phrase tells us where it belongs in the structure, so we mark up the tree with that information.

    -

    (b.1) Annotate the parse tree with indentation levels2.3 = +

    (b.1) Annotate the parse tree with indentation levels1.1.3 =

    -    Annotations::write_int(routine_node, indentation_level_ANNOT,
    -        Lexer::indentation_level(Wordings::first_wn(Node::get_text(routine_node))));
    +    Annotations::write_int(imperative_node, indentation_level_ANNOT,
    +        Lexer::indentation_level(Wordings::first_wn(Node::get_text(imperative_node))));
         parse_node *p;
    -    for (p = routine_node->down; p; p = p->next) {
    +    for (p = imperative_node->down; p; p = p->next) {
             int I = Lexer::indentation_level(Wordings::first_wn(Node::get_text(p)));
             Annotations::write_int(p, indentation_level_ANNOT, I);
         }
     
    - -

    §2.4. Note that we are a little cautious about recognising phrases which will +

    +

    §1.1.4. Note that we are a little cautious about recognising phrases which will open blocks, such as "repeat...", because of the dangers of false positives; so we look for the "begin" keyword, or the colon. We're less cautious with subordinate phrases (such as "otherwise") because we know their wonding more certainly, and similarly for "end X" phrases.

    -

    (b.2) Annotate the parse tree with control structure usage2.4 = +

    (b.2) Annotate the parse tree with control structure usage1.1.4 =

    -    for (parse_node *p = routine_node->down; p; p = p->next) {
    +    for (parse_node *p = imperative_node->down; p; p = p->next) {
             control_structure_phrase *csp;
             csp = ControlStructures::detect(Node::get_text(p));
             if (csp) {
    @@ -313,26 +327,26 @@ more certainly, and similarly for "end X" phrases.
                     (<phrase-beginning-block>(Node::get_text(p))) ||
                     (csp->subordinate_to)) {
                     Node::set_control_structure_used(p, csp);
    -                if (csp == case_CSP) Trim a switch case to just the case value2.4.1;
    +                if (csp == case_CSP) Trim a switch case to just the case value1.1.4.1;
                 }
             }
             csp = ControlStructures::detect_end(Node::get_text(p));
             if (csp) Node::set_end_control_structure_used(p, csp);
         }
     
    - -

    §2.4.1. At this point anything at all can be a case value: it won't be parsed +

    +

    §1.1.4.1. At this point anything at all can be a case value: it won't be parsed or type-checked until compilation.

    -

    Trim a switch case to just the case value2.4.1 = +

    Trim a switch case to just the case value1.1.4.1 =

         Node::set_text(p, GET_RW(<control-structure-phrase>, 1));
     
    - -

    §2.5. "Comma notation" is when a comma is used in an "if" statement to divide +

    +

    §1.1.5. "Comma notation" is when a comma is used in an "if" statement to divide off only a single consequential phrase, as in

    @@ -344,20 +358,20 @@ off only a single consequential phrase, as in to break this up.

    -

    (c) Expand comma notation for blocks2.5 = +

    (c) Expand comma notation for blocks1.1.5 =

    -    for (parse_node *p = routine_node->down; p; p = p->next)
    +    for (parse_node *p = imperative_node->down; p; p = p->next)
             if (Node::get_control_structure_used(p) == NULL) {
                 control_structure_phrase *csp;
                 csp = ControlStructures::detect(Node::get_text(p));
                 if ((csp == if_CSP) && (<phrase-with-comma-notation>(Node::get_text(p))))
    -                Effect a comma expansion2.5.1;
    +                Effect a comma expansion1.1.5.1;
             }
     
    - -

    §2.5.1. Effect a comma expansion2.5.1 = +

    +

    §1.1.5.1. Effect a comma expansion1.1.5.1 =

    @@ -376,49 +390,49 @@ to break this up.
             Annotations::read_int(p, indentation_level_ANNOT) + 1);
         Node::set_text(then_node, ACW);
     
    -    parse_node *last_node_of_if_construction = then_node, *rest_of_routine = p->next;
    +    parse_node *last_node_of_if_construction = then_node, *rest_of_defn = p->next;
     
          Attach the "then" node after the "if" node:
         p->next = then_node;
     
    -    Deal with an immediately following otherwise node, if there is one2.5.1.1;
    +    Deal with an immediately following otherwise node, if there is one1.1.5.1.1;
     
         if (uses_colon_syntax == FALSE) {
    -        last_node_of_if_construction->next = RuleSubtrees::end_node(p);
    -        last_node_of_if_construction->next->next = rest_of_routine;
    +        last_node_of_if_construction->next = ImperativeSubtrees::end_node(p);
    +        last_node_of_if_construction->next->next = rest_of_defn;
         } else {
    -        last_node_of_if_construction->next = rest_of_routine;
    +        last_node_of_if_construction->next = rest_of_defn;
         }
     
    - -

    §2.5.1.1. Deal with an immediately following otherwise node, if there is one2.5.1.1 = +

    +

    §1.1.5.1.1. Deal with an immediately following otherwise node, if there is one1.1.5.1.1 =

    -    if (rest_of_routine)
    +    if (rest_of_defn)
             if ((uses_colon_syntax == FALSE) ||
                 (Annotations::read_int(p, indentation_level_ANNOT) ==
    -                Annotations::read_int(rest_of_routine, indentation_level_ANNOT))) {
    -            if (Node::get_control_structure_used(rest_of_routine) == otherwise_CSP)
    -                Deal with an immediately following otherwise2.5.1.1.1
    -            else if (ControlStructures::abbreviated_otherwise(Node::get_text(rest_of_routine)))
    -                Deal with an abbreviated otherwise node2.5.1.1.2;
    +                Annotations::read_int(rest_of_defn, indentation_level_ANNOT))) {
    +            if (Node::get_control_structure_used(rest_of_defn) == otherwise_CSP)
    +                Deal with an immediately following otherwise1.1.5.1.1.1
    +            else if (ControlStructures::abbreviated_otherwise(Node::get_text(rest_of_defn)))
    +                Deal with an abbreviated otherwise node1.1.5.1.1.2;
             }
     
    - -

    §2.5.1.1.1. We string a plain "otherwise" node onto the "if" construction. +

    +

    §1.1.5.1.1.1. We string a plain "otherwise" node onto the "if" construction.

    -

    Deal with an immediately following otherwise2.5.1.1.1 = +

    Deal with an immediately following otherwise1.1.5.1.1.1 =

    -    then_node->next = rest_of_routine;
    +    then_node->next = rest_of_defn;
         last_node_of_if_construction = last_node_of_if_construction->next;
    -    rest_of_routine = rest_of_routine->next;
    +    rest_of_defn = rest_of_defn->next;
     
    - -

    §2.5.1.1.2. An abbreviated otherwise clause looks like this: +

    +

    §1.1.5.1.1.2. An abbreviated otherwise clause looks like this:

    @@ -428,7 +442,7 @@ to break this up.

    and we want to split this, too, into distinct nodes.

    -

    Deal with an abbreviated otherwise node2.5.1.1.2 = +

    Deal with an abbreviated otherwise node1.1.5.1.1.2 =

    @@ -437,23 +451,23 @@ to break this up.
         Annotations::write_int(otherwise_node, indentation_level_ANNOT,
             Annotations::read_int(p, indentation_level_ANNOT));
         Node::set_text(otherwise_node,
    -        Wordings::one_word(Wordings::first_wn(Node::get_text(rest_of_routine))));  extract just the word "otherwise"
    +        Wordings::one_word(Wordings::first_wn(Node::get_text(rest_of_defn))));  extract just the word "otherwise"
         Node::set_control_structure_used(otherwise_node, otherwise_CSP);
     
         then_node->next = otherwise_node;
    -    otherwise_node->next = rest_of_routine;
    +    otherwise_node->next = rest_of_defn;
     
    -    Node::set_text(rest_of_routine,
    -        Wordings::trim_first_word(Node::get_text(rest_of_routine)));  to remove the "otherwise"
    +    Node::set_text(rest_of_defn,
    +        Wordings::trim_first_word(Node::get_text(rest_of_defn)));  to remove the "otherwise"
     
    -    Annotations::write_int(rest_of_routine, indentation_level_ANNOT,
    -        Annotations::read_int(rest_of_routine, indentation_level_ANNOT) + 1);
    +    Annotations::write_int(rest_of_defn, indentation_level_ANNOT,
    +        Annotations::read_int(rest_of_defn, indentation_level_ANNOT) + 1);
     
    -    last_node_of_if_construction = rest_of_routine;
    -    rest_of_routine = rest_of_routine->next;
    +    last_node_of_if_construction = rest_of_defn;
    +    rest_of_defn = rest_of_defn->next;
     
    - -

    §2.6. If the old-style syntax is used, there are explicit "end if", "end repeat" +

    +

    §1.1.6. If the old-style syntax is used, there are explicit "end if", "end repeat" and "end while" nodes in the list already. But if the Pythonesque syntax is used then we need to create these nodes and insert them into the list; we do these by reading off the structure from the pattern of indentation. It's @@ -461,7 +475,7 @@ quite a long task, since this pattern may contain errors, which we have to report more or less helpfully.

    -

    (d) Insert end nodes and check the indentation2.6 = +

    (d) Insert end nodes and check the indentation1.1.6 =

    @@ -476,32 +490,32 @@ report more or less helpfully.
         int blstack_stage[GROSS_AMOUNT_OF_INDENTATION+1];
         int blo_sp = 0, suppress_further_problems = FALSE;
     
    -    if (Annotations::read_int(routine_node, indentation_level_ANNOT) != 0)
    -        Issue problem message for failing to start flush on the left margin2.6.1;
    +    if (Annotations::read_int(imperative_node, indentation_level_ANNOT) != 0)
    +        Issue problem message for failing to start flush on the left margin1.1.6.1;
     
    -    for (prev = NULL, p = routine_node->down, k=1; p; prev = p, p = p->next, k++) {
    +    for (prev = NULL, p = imperative_node->down, k=1; p; prev = p, p = p->next, k++) {
             control_structure_phrase *csp = Node::get_control_structure_used(p);
    -        Determine actual indentation of this phrase2.6.2;
    -        Compare actual indentation to what we expect from structure so far2.6.3;
    -        Insert begin marker and increase expected indentation if a block begins here2.6.4;
    +        Determine actual indentation of this phrase1.1.6.2;
    +        Compare actual indentation to what we expect from structure so far1.1.6.3;
    +        Insert begin marker and increase expected indentation if a block begins here1.1.6.4;
         }
     
         indent = 1;
    -    Try closing blocks to bring expected indentation down to match2.6.5;
    +    Try closing blocks to bring expected indentation down to match1.1.6.5;
     
    -    if (indent_overmuch) Issue problem message for an excess of indentation2.6.7
    -    else if (run_on_at) Issue problem message for run-ons within phrase definition2.6.8
    -    else if (indent_misalign) Issue problem message for misaligned indentation2.6.6;
    +    if (indent_overmuch) Issue problem message for an excess of indentation1.1.6.7
    +    else if (run_on_at) Issue problem message for run-ons within phrase definition1.1.6.8
    +    else if (indent_misalign) Issue problem message for misaligned indentation1.1.6.6;
     
    - -

    §2.6.1. Controversially: +

    +

    §1.1.6.1. Controversially:

    -

    Issue problem message for failing to start flush on the left margin2.6.1 = +

    Issue problem message for failing to start flush on the left margin1.1.6.1 =

    -    current_sentence = routine_node;
    +    current_sentence = imperative_node;
         Problems::quote_source_eliding_begin(1, current_sentence);
         StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_NonflushRule));
         Problems::issue_problem_segment(
    @@ -511,8 +525,8 @@ report more or less helpfully.
         Problems::issue_problem_end();
         suppress_further_problems = TRUE;
     
    - -

    §2.6.2. Here we set indent to the number of tab-stops in from the margin, or to +

    +

    §1.1.6.2. Here we set indent to the number of tab-stops in from the margin, or to expected_indent if the text does not appear to be at the start of its own line in the source (because it runs on from a previous phrase, in which case we set the run_on_at flag: except for following on from cases @@ -520,7 +534,7 @@ in switches with a non-control-structure, which is allowed, because otherwise the lines often look silly and short).

    -

    Determine actual indentation of this phrase2.6.2 = +

    Determine actual indentation of this phrase1.1.6.2 =

    @@ -541,10 +555,10 @@ the lines often look silly and short).
                     break;
             }
         }
    -    if (indent >= GROSS_AMOUNT_OF_INDENTATION) Record an excess of indentation2.6.2.1;
    +    if (indent >= GROSS_AMOUNT_OF_INDENTATION) Record an excess of indentation1.1.6.2.1;
     
    - -

    §2.6.3. We now know the indent level of the line as read, and also the +

    +

    §1.1.6.3. We now know the indent level of the line as read, and also the expected_indent given the definition so far. If they agree, fine. If they don't agree, it isn't necessarily bad news — if each line's indentation were a function of the last, there would be no information in it, after all. @@ -556,29 +570,29 @@ current block(s) has or have been closed, because blocks are indeed closed implicitly just by moving the indentation back in.

    -

    Compare actual indentation to what we expect from structure so far2.6.3 = +

    Compare actual indentation to what we expect from structure so far1.1.6.3 =

         if (indent == 0) {
    -        Record a misalignment of indentation2.6.3.3;
    -        Record a phrase within current block2.6.3.2;
    +        Record a misalignment of indentation1.1.6.3.3;
    +        Record a phrase within current block1.1.6.3.2;
         } else {
             if ((csp) && (csp->subordinate_to)) {
    -            Compare actual indentation to what we expect for an intermediate phrase2.6.3.1;
    +            Compare actual indentation to what we expect for an intermediate phrase1.1.6.3.1;
                 just_opened_block = TRUE;
             } else {
    -            if (expected_indent < indent) Record a misalignment of indentation2.6.3.3;
    +            if (expected_indent < indent) Record a misalignment of indentation1.1.6.3.3;
                 if (expected_indent > indent)
    -                Try closing blocks to bring expected indentation down to match2.6.5;
    +                Try closing blocks to bring expected indentation down to match1.1.6.5;
                 expected_indent = indent;
    -            Record a phrase within current block2.6.3.2;
    +            Record a phrase within current block1.1.6.3.2;
             }
         }
         if (expected_indent < 1) expected_indent = 1;
     
    - -

    §2.6.3.1. This is a small variation used for an intermediate phrase like "otherwise". +

    +

    §1.1.6.3.1. This is a small variation used for an intermediate phrase like "otherwise". These are required to be at the same indentation as the line which opened the block, rather than being one tab step in from there: in other words they are not deemed part of the block itself. They can also occur in "stages", which @@ -587,28 +601,28 @@ one — for instance, "otherwise if..." is not allowed after an "otherwise" within an "if".

    -

    Compare actual indentation to what we expect for an intermediate phrase2.6.3.1 = +

    Compare actual indentation to what we expect for an intermediate phrase1.1.6.3.1 =

         expected_indent--;
         if (expected_indent < indent) {
    -        Issue problem for an intermediate phrase not matching2.6.3.1.1;
    +        Issue problem for an intermediate phrase not matching1.1.6.3.1.1;
         } else {
    -        Try closing blocks to bring expected indentation down to match2.6.5;
    +        Try closing blocks to bring expected indentation down to match1.1.6.5;
             if ((blo_sp == 0) ||
                 (csp->subordinate_to != blstack_construct[blo_sp-1])) {
    -            Issue problem for an intermediate phrase not matching2.6.3.1.1;
    +            Issue problem for an intermediate phrase not matching1.1.6.3.1.1;
             } else {
                 if (blstack_stage[blo_sp-1] > csp->used_at_stage)
    -                Issue problem for an intermediate phrase out of sequence2.6.3.1.2;
    +                Issue problem for an intermediate phrase out of sequence1.1.6.3.1.2;
                 blstack_stage[blo_sp-1] = csp->used_at_stage;
             }
         }
         expected_indent++;
     
    - -

    §2.6.4. In colon syntax, blocks are explicitly opened; they are only implicitly +

    +

    §1.1.6.4. In colon syntax, blocks are explicitly opened; they are only implicitly closed. Here is the opening:

    @@ -617,11 +631,12 @@ colon syntax, then it is followed by a word which is the colon: thus if -

    Insert begin marker and increase expected indentation if a block begins here2.6.4 = +

    Insert begin marker and increase expected indentation if a block begins here1.1.6.4 =

    -    if ((csp) && (csp->subordinate_to == NULL) && (Annotations::read_int(p, colon_block_command_ANNOT))) {
    +    if ((csp) && (csp->subordinate_to == NULL) &&
    +        (Annotations::read_int(p, colon_block_command_ANNOT))) {
             expected_indent++;
             if (csp->indent_subblocks) expected_indent++;
             blstack_construct[blo_sp] = csp;
    @@ -630,25 +645,25 @@ reads "if x is 2" then the word following the "2" will be ":".
             just_opened_block = TRUE;
         }
     
    -
    • This code is used in §2.6.
    -

    §2.6.5. Now for the closing of colon-syntax blocks. We know that blocks must be +

    +

    §1.1.6.5. Now for the closing of colon-syntax blocks. We know that blocks must be being closed if the indentation has jumped backwards: but it may be that many blocks are being closed at once. (It may also be that the indentation has gone awry.)

    -

    Try closing blocks to bring expected indentation down to match2.6.5 = +

    Try closing blocks to bring expected indentation down to match1.1.6.5 =

         if ((just_opened_block) &&
             (blo_sp > 0) &&
             (!(blstack_construct[blo_sp-1]->body_empty_except_for_subordinates)) && (p))
    -        Issue problem for an empty block2.6.5.2;
    +        Issue problem for an empty block1.1.6.5.2;
         while (indent < expected_indent) {
             parse_node *opening;
             if (blo_sp == 0) {
    -            Record a misalignment of indentation2.6.3.3;
    +            Record a misalignment of indentation1.1.6.3.3;
                 indent = expected_indent;
                 break;
             }
    @@ -660,199 +675,194 @@ gone awry.)
             expected_indent--;
             if (blstack_construct[blo_sp-1]->indent_subblocks) expected_indent--;
             opening = blstack_opening_phrase[--blo_sp];
    -        Insert end marker to match the opening of the block phrase2.6.5.1;
    +        Insert end marker to match the opening of the block phrase1.1.6.5.1;
         }
     
    - -

    §2.6.3.2. Record a phrase within current block2.6.3.2 = +

    +

    §1.1.6.3.2. Record a phrase within current block1.1.6.3.2 =

         if ((blo_sp > 0) &&
             (blstack_stage[blo_sp-1] == 0) &&
             (blstack_construct[blo_sp-1]->body_empty_except_for_subordinates)) {
    -        Issue problem for non-case in a switch2.6.3.2.1;
    +        Issue problem for non-case in a switch1.1.6.3.2.1;
         }
         just_opened_block = FALSE;
     
    -
    • This code is used in §2.6.3 (twice).
    -

    §2.6.5.1. An end marker is a phrase like "end if" which matches the "if... begin" +

    +

    §1.1.6.5.1. An end marker is a phrase like "end if" which matches the "if... begin" above it: here we insert such a marker at a place where the source text indentation implicitly requires it.

    -

    Insert end marker to match the opening of the block phrase2.6.5.1 = +

    Insert end marker to match the opening of the block phrase1.1.6.5.1 =

    -    parse_node *implicit_end = RuleSubtrees::end_node(opening);
    +    parse_node *implicit_end = ImperativeSubtrees::end_node(opening);
         implicit_end->next = prev->next; prev->next = implicit_end;
         prev = implicit_end;
     
    - -

    §2.6.3.3. Here we throw what amounts to an exception... +

    +

    §1.1.6.3.3. Here we throw what amounts to an exception...

    -

    Record a misalignment of indentation2.6.3.3 = +

    Record a misalignment of indentation1.1.6.3.3 =

         indent_misalign = TRUE;
         if (first_misaligned_phrase == NULL) first_misaligned_phrase = p;
     
    - -

    §2.6.6. ...and catch it with something of a catch-all message: +

    +

    §1.1.6.6. ...and catch it with something of a catch-all message:

    -

    Issue problem message for misaligned indentation2.6.6 = +

    Issue problem message for misaligned indentation1.1.6.6 =

         if (suppress_further_problems == FALSE) {
    -        LOG("$T\n", routine_node);
    -        current_sentence = routine_node;
    +        LOG("$T\n", imperative_node);
    +        current_sentence = imperative_node;
             Problems::quote_source_eliding_begin(1, current_sentence);
             Problems::quote_source_eliding_begin(2, first_misaligned_phrase);
    -        StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_MisalignedIndentation));
    +        StandardProblems::handmade_problem(Task::syntax_tree(),
    +            _p_(PM_MisalignedIndentation));
             Problems::issue_problem_segment(
    -            "The phrase or rule definition %1 is written using the 'colon "
    -            "and indentation' syntax for its 'if's, 'repeat's and 'while's, "
    -            "where blocks of phrases grouped together are indented one "
    -            "tab step inward from the 'if ...:' or similar phrase to which "
    -            "they belong. But the tabs here seem to be misaligned, and I can't "
    -            "determine the structure. The first phrase going awry in the "
    -            "definition seems to be %2, in case that helps. %PThis sometimes "
    -            "happens even when the code looks about right, to the eye, if rows "
    +            "The phrase or rule definition %1 is written using the 'colon and indentation' "
    +            "syntax for its 'if's, 'repeat's and 'while's, where blocks of phrases grouped "
    +            "together are indented one tab step inward from the 'if ...:' or similar phrase "
    +            "to which they belong. But the tabs here seem to be misaligned, and I can't "
    +            "determine the structure. The first phrase going awry in the definition seems "
    +            "to be %2, in case that helps. %P"
    +            "This sometimes happens even when the code looks about right, to the eye, if rows "
                 "of spaces have been used to indent phrases instead of tabs.");
             Problems::Using::diagnose_further();
             Problems::issue_problem_end();
         }
     
    -
    • This code is used in §2.6.
    -

    §2.6.2.1. And another... +

    +

    §1.1.6.2.1. And another...

    -

    Record an excess of indentation2.6.2.1 = +

    Record an excess of indentation1.1.6.2.1 =

         indent_overmuch = TRUE;
         if (first_overindented_phrase == NULL) first_overindented_phrase = p;
     
    - -

    §2.6.7. ...caught here: +

    +

    §1.1.6.7. ...caught here:

    -

    Issue problem message for an excess of indentation2.6.7 = +

    Issue problem message for an excess of indentation1.1.6.7 =

         if (suppress_further_problems == FALSE) {
    -        current_sentence = routine_node;
    +        current_sentence = imperative_node;
             Problems::quote_source_eliding_begin(1, current_sentence);
             Problems::quote_source_eliding_begin(2, first_overindented_phrase);
             StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_TooMuchIndentation));
             Problems::issue_problem_segment(
    -            "The phrase or rule definition %1 is written using tab indentations "
    -            "to show how its phrases are to be grouped together. But the level "
    -            "of indentation goes far too deep, reaching more than 25 tab stops "
    -            "from the left margin.");
    +            "The phrase or rule definition %1 is written using tab indentations to show how "
    +            "its phrases are to be grouped together. But the level of indentation goes far "
    +            "too deep, reaching more than 25 tab stops from the left margin.");
             Problems::issue_problem_end();
         }
     
    -
    • This code is used in §2.6.
    -

    §2.6.8. Issue problem message for run-ons within phrase definition2.6.8 = +

    +

    §1.1.6.8. Issue problem message for run-ons within phrase definition1.1.6.8 =

         if (suppress_further_problems == FALSE) {
    -        current_sentence = routine_node;
    +        current_sentence = imperative_node;
             Problems::quote_source_eliding_begin(1, current_sentence);
             Problems::quote_source_eliding_begin(2, run_on_at);
    -        StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_RunOnsInTabbedRoutine));
    +        StandardProblems::handmade_problem(Task::syntax_tree(),
    +            _p_(PM_RunOnsInTabbedRoutine));
             Problems::issue_problem_segment(
    -            "The phrase or rule definition %1 is written using the 'colon "
    -            "and indentation' syntax for its 'if's, 'repeat's and 'while's, "
    -            "but that's only allowed if each phrase in the definition "
    -            "occurs on its own line. So phrases like %2, which follow "
    +            "The phrase or rule definition %1 is written using the 'colon and indentation' "
    +            "syntax for its 'if's, 'repeat's and 'while's, but that's only allowed if each "
    +            "phrase in the definition occurs on its own line. So phrases like %2, which follow "
                 "directly on from the previous phrase, aren't allowed.");
             Problems::issue_problem_end();
         }
     
    -
    • This code is used in §2.6.
    -

    §2.6.5.2. It's a moot point whether the following should be incorrect syntax, but it +

    +

    §1.1.6.5.2. It's a moot point whether the following should be incorrect syntax, but it far more often happens as an accident than anything else, and it's hard to think of a sensible use.

    -

    Issue problem for an empty block2.6.5.2 = +

    Issue problem for an empty block1.1.6.5.2 =

         if (suppress_further_problems == FALSE) {
    -        LOG("$T\n", routine_node);
    -        current_sentence = routine_node;
    +        LOG("$T\n", imperative_node);
    +        current_sentence = imperative_node;
             Problems::quote_source_eliding_begin(1, current_sentence);
             Problems::quote_source_eliding_begin(2, prev);
             Problems::quote_source_eliding_begin(3, p);
             StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_EmptyIndentedBlock));
             Problems::issue_problem_segment(
    -            "The phrase or rule definition %1 is written using the 'colon "
    -            "and indentation' syntax for its 'if's, 'repeat's and 'while's, "
    -            "where blocks of phrases grouped together are indented one "
    -            "tab step inward from the 'if ...:' or similar phrase to which "
    -            "they belong. But the phrase %2, which ought to begin a block, "
    -            "is immediately followed by %3 at the same or a lower indentation, "
    -            "so the block seems to be empty - this must mean there has been "
    -            "a mistake in indenting the phrases.");
    +            "The phrase or rule definition %1 is written using the 'colon and indentation' "
    +            "syntax for its 'if's, 'repeat's and 'while's, where blocks of phrases grouped "
    +            "together are indented one tab step inward from the 'if ...:' or similar phrase "
    +            "to which they belong. But the phrase %2, which ought to begin a block, is "
    +            "immediately followed by %3 at the same or a lower indentation, so the block "
    +            "seems to be empty - this must mean there has been a mistake in indenting the "
    +            "phrases.");
             Problems::issue_problem_end();
         }
     
    - -

    §2.6.3.2.1. Issue problem for non-case in a switch2.6.3.2.1 = +

    +

    §1.1.6.3.2.1. Issue problem for non-case in a switch1.1.6.3.2.1 =

         if (suppress_further_problems == FALSE) {
    -        current_sentence = routine_node;
    +        current_sentence = imperative_node;
             Problems::quote_source_eliding_begin(1, current_sentence);
             Problems::quote_source_eliding_begin(2, p);
             StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_NonCaseInIf));
             Problems::issue_problem_segment(
    -            "In the phrase or rule definition %1, the phrase %2 came as a "
    -            "surprise since it was not a case in an 'if X is...' but was "
    -            "instead some other miscellaneous instruction.");
    +            "In the phrase or rule definition %1, the phrase %2 came as a surprise since "
    +            "it was not a case in an 'if X is...' but was instead some other miscellaneous "
    +            "instruction.");
             Problems::issue_problem_end();
         }
     
    - -

    §2.6.3.1.1. Issue problem for an intermediate phrase not matching2.6.3.1.1 = +

    +

    §1.1.6.3.1.1. Issue problem for an intermediate phrase not matching1.1.6.3.1.1 =

         if ((indent_misalign == FALSE) && (suppress_further_problems == FALSE)) {
             current_sentence = p;
             if (csp->subordinate_to == if_CSP) {
    -            LOG("$T\n", routine_node);
    +            LOG("$T\n", imperative_node);
                 StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_MisalignedOtherwise),
                     "this doesn't match a corresponding 'if'",
    -                "as it must. An 'otherwise' must be vertically underneath the "
    -                "'if' to which it corresponds, at the same indentation, and "
    -                "if the 'otherwise' uses a colon to begin a block then the "
    -                "'if' must do the same.");
    +                "as it must. An 'otherwise' must be vertically underneath the 'if' to which "
    +                "it corresponds, at the same indentation, and if the 'otherwise' uses a colon "
    +                "to begin a block then the 'if' must do the same.");
             }
             if (csp->subordinate_to == switch_CSP)
                 StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_MisalignedCase),
    -                "this seems to be misplaced since it is not a case within an "
    -                "'if X is...'",
    -                "as it must be. Each case must be placed one tab stop in from "
    -                "the 'if X is...' to which it belongs, and the instructions "
    -                "for what to do in that case should be one tab stop further in "
    -                "still.");
    +                "this seems to be misplaced since it is not a case within an 'if X is...'",
    +                "as it must be. Each case must be placed one tab stop in from the 'if X "
    +                "is...' to which it belongs, and the instructions for what to do in that "
    +                "case should be one tab stop further in still.");
         }
     
    - -

    §2.6.3.1.2. Issue problem for an intermediate phrase out of sequence2.6.3.1.2 = +

    +

    §1.1.6.3.1.2. Issue problem for an intermediate phrase out of sequence1.1.6.3.1.2 =

    @@ -861,35 +871,33 @@ think of a sensible use.
             if ((csp == default_case_CSP) || (csp == case_CSP))
                 StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_DefaultCaseNotLast),
                     "'otherwise' must be the last clause if an 'if ... is:'",
    -                "and in particular it has to come after all the '-- V:' "
    -                "case values supplied.");
    +                "and in particular it has to come after all the '-- V:' case values supplied.");
             else
                 StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_MisarrangedOtherwise),
                     "this seems to be misplaced since it is out of sequence within its 'if'",
    -                "with an 'otherwise if...' coming after the more general 'otherwise' "
    -                "rather than before. (Note that an 'otherwise' or 'otherwise if' must "
    -                "be vertically underneath the 'if' to which it corresponds, at the "
    -                "same indentation.");
    +                "with an 'otherwise if...' coming after the more general 'otherwise' rather "
    +                "than before. (Note that an 'otherwise' or 'otherwise if' must be vertically "
    +                "underneath the 'if' to which it corresponds, at the same indentation.");
         }
     
    - -

    §2.7. And after all that work, the routine's parse tree still consists only of a +

    +

    §1.1.7. And after all that work, the routine's parse tree still consists only of a linked list of nodes; but at least it now contains the same pattern of nodes whichever syntax is used. We finally make a meaningful tree out of it.

    -

    (e) Structure the parse tree to match the use of control structures2.7 = +

    (e) Structure the parse tree to match the use of control structures1.1.7 =

    -    parse_node *routine_list = routine_node->down;
    +    parse_node *routine_list = imperative_node->down;
         parse_node *top_level = Node::new(CODE_BLOCK_NT);
     
    -    routine_node->down = top_level;
    +    imperative_node->down = top_level;
     
    -    parse_node *attach_owners[MAX_BLOCK_NESTING+1];
    -    parse_node *attach_points[MAX_BLOCK_NESTING+1];
    -    control_structure_phrase *attach_csps[MAX_BLOCK_NESTING+1];
    +    parse_node *attach_owners[MAX_BLOCK_NESTING+1];
    +    parse_node *attach_points[MAX_BLOCK_NESTING+1];
    +    control_structure_phrase *attach_csps[MAX_BLOCK_NESTING+1];
         int attach_point_sp = 0;
     
          push the top level code block onto the stack
    @@ -901,7 +909,7 @@ whichever syntax is used. We finally make a meaningful tree out of it.
         for (parse_node *pn = routine_list, *pn_prev = NULL; pn; pn_prev = pn, pn = pn->next) {
              unstring this node from the old list
             if (pn_prev) pn_prev->next = NULL;
    -        Attach the node to the routine's growing parse tree2.7.1;
    +        Attach the node to the routine's growing parse tree1.1.7.1;
         }
         if (overflow_point) {
             current_sentence = overflow_point;
    @@ -910,8 +918,8 @@ whichever syntax is used. We finally make a meaningful tree out of it.
                 "perhaps because many have begun but not been properly ended?");
         }
     
    -
    • This code is used in §2.
    -

    §2.7.1. Attach the node to the routine's growing parse tree2.7.1 = +

    • This code is used in §1.1.
    +

    §1.1.7.1. Attach the node to the routine's growing parse tree1.1.7.1 =

    @@ -928,21 +936,21 @@ whichever syntax is used. We finally make a meaningful tree out of it.
                 }
             }
         }
    -    if (go_up) Move the attachment point up in the tree2.7.1.1;
    -    Attach this latest node2.7.1.2;
    -    if (go_down) Move the attachment point down in the tree2.7.1.3;
    +    if (go_up) Move the attachment point up in the tree1.1.7.1.1;
    +    Attach this latest node1.1.7.1.2;
    +    if (go_down) Move the attachment point down in the tree1.1.7.1.3;
     
    -
    • This code is used in §2.7.
    -

    §2.7.1.1. Move the attachment point up in the tree2.7.1.1 = +

    +

    §1.1.7.1.1. Move the attachment point up in the tree1.1.7.1.1 =

         control_structure_phrase *superior_csp = attach_csps[attach_point_sp-1];
    -    if ((superior_csp) && (superior_csp->subordinate_to)) Pop the CSP stack2.7.1.1.1;
    -    if (go_down == FALSE) Pop the CSP stack2.7.1.1.1;
    +    if ((superior_csp) && (superior_csp->subordinate_to)) Pop the CSP stack1.1.7.1.1.1;
    +    if (go_down == FALSE) Pop the CSP stack1.1.7.1.1.1;
     
    - -

    §2.7.1.2. Attach this latest node2.7.1.2 = +

    +

    §1.1.7.1.2. Attach this latest node1.1.7.1.2 =

    @@ -951,8 +959,8 @@ whichever syntax is used. We finally make a meaningful tree out of it.
             to = attach_owners[attach_point_sp-1];
         SyntaxTree::graft(Task::syntax_tree(), pn, to);
     
    - -

    §2.7.1.3. Move the attachment point down in the tree2.7.1.3 = +

    +

    §1.1.7.1.3. Move the attachment point down in the tree1.1.7.1.3 =

    @@ -961,27 +969,27 @@ whichever syntax is used. We finally make a meaningful tree out of it.
             pn->down = Node::new(CODE_BLOCK_NT);
             next_attach_point = pn->down;
         }
    -    Push the CSP stack2.7.1.3.1;
    +    Push the CSP stack1.1.7.1.3.1;
     
    - -

    §2.7.1.1.1. It's an error to let this underflow, but we'll catch that problem later. +

    +

    §1.1.7.1.1.1. It's an error to let this underflow, but we'll catch that problem later.

    -

    Pop the CSP stack2.7.1.1.1 = +

    Pop the CSP stack1.1.7.1.1.1 =

         if (attach_point_sp != 1) attach_point_sp--;
     
    - -

    §2.7.1.3.1. An overflow, however, we must catch right here. +

    +

    §1.1.7.1.3.1. An overflow, however, we must catch right here.

    -

    Push the CSP stack2.7.1.3.1 = +

    Push the CSP stack1.1.7.1.3.1 =

    -    if (attach_point_sp <= MAX_BLOCK_NESTING) {
    +    if (attach_point_sp <= MAX_BLOCK_NESTING) {
             attach_owners[attach_point_sp] = pn;
             attach_csps[attach_point_sp] = csp;
             attach_points[attach_point_sp++] = next_attach_point;
    @@ -989,8 +997,8 @@ whichever syntax is used. We finally make a meaningful tree out of it.
             if (overflow_point == NULL) overflow_point = pn;
         }
     
    - -

    §2.8. We now have a neatly structured tree, so from here on anything we do will +

    +

    §1.1.8. We now have a neatly structured tree, so from here on anything we do will need a recursive procedure.

    @@ -999,20 +1007,20 @@ of nonsense: "if" blocks with multiple "otherwise"s, for example. This is where we look for such mistakes.

    -

    (f) Police the structure of the parse tree2.8 = +

    (f) Police the structure of the parse tree1.1.8 =

         int n = problem_count;
    -    RuleSubtrees::police_code_block(routine_node->down, NULL);
    -    if (problem_count > n) LOG("Local parse tree: $T\n", routine_node);
    +    ImperativeSubtrees::police_code_block(imperative_node->down, NULL);
    +    if (problem_count > n) LOG("Local parse tree: $T\n", imperative_node);
     
    -
    • This code is used in §2.
    -

    §3. Which recursively uses the following: +

    • This code is used in §1.1.
    +

    §2. Which recursively uses the following:

    -void RuleSubtrees::police_code_block(parse_node *block, control_structure_phrase *context) {
    +void ImperativeSubtrees::police_code_block(parse_node *block, control_structure_phrase *context) {
         for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) {
             current_sentence = p;
     
    @@ -1020,8 +1028,8 @@ where we look for such mistakes.
                 (prev_p)?Node::get_control_structure_used(prev_p):NULL;
             control_structure_phrase *csp = Node::get_end_control_structure_used(p);
             if ((csp) && (csp != prior)) {
    -            if (prior == NULL) Issue problem for end without begin3.1
    -            else Issue problem for wrong sort of end3.2;
    +            if (prior == NULL) Issue problem for end without begin2.1
    +            else Issue problem for wrong sort of end2.2;
             }
     
             csp = Node::get_control_structure_used(p);
    @@ -1029,45 +1037,44 @@ where we look for such mistakes.
                 if (ControlStructures::opens_block(csp)) {
                     if ((p->next == NULL) ||
                         (Node::get_end_control_structure_used(p->next) == NULL))
    -                    Issue problem for begin without end3.3;
    +                    Issue problem for begin without end2.3;
                 } else {
                     if (context == NULL)
    -                    Choose a problem for a loose clause3.4
    +                    Choose a problem for a loose clause2.4
                     else if (context != csp->subordinate_to)
    -                    Choose a problem for the wrong clause3.5
    +                    Choose a problem for the wrong clause2.5
                     else if ((csp == otherwise_CSP) && (p->next))
    -                    Choose a problem for otherwise not occurring last3.6
    +                    Choose a problem for otherwise not occurring last2.6
                     else if ((csp == default_case_CSP) && (p->next))
    -                    Issue a problem for the default case not occurring last3.7;
    +                    Issue a problem for the default case not occurring last2.7;
                 }
             }
     
    -        if (p->down) RuleSubtrees::police_code_block(p, csp);
    +        if (p->down) ImperativeSubtrees::police_code_block(p, csp);
         }
     }
     
    -

    §3.1. These used to be much-seen problem messages, until Inform moved to Pythonesque +

    §2.1. These used to be much-seen problem messages, until Inform moved to Pythonesque structure-by-indentation. Nowadays "end if", "end while" and such are automatically inserted into the stream of commands, always in the right place, and always passing these checks. But the problem messages are kept for the sake of old-format source text, and for refuseniks.

    -

    Issue problem for end without begin3.1 = +

    Issue problem for end without begin2.1 =

         StandardProblems::sentence_problem_with_note(Task::syntax_tree(), _p_(PM_EndWithoutBegin),
             "this is an 'end' with no matching 'begin'",
    -        "which should not happen: every phrase like 'if ... begin;' "
    -        "should eventually be followed by its bookend 'end if'. "
    -        "It makes no sense to have an 'end ...' on its own.",
    -        "Perhaps the problem is actually that you opened several "
    -        "such begin... end 'blocks' and accidentally closed them "
    -        "once too many? This is very easily done.");
    +        "which should not happen: every phrase like 'if ... begin;' should eventually be "
    +        "followed by its bookend 'end if'. It makes no sense to have an 'end ...' on its "
    +        "own.",
    +        "Perhaps the problem is actually that you opened several such begin... end "
    +        "'blocks' and accidentally closed them once too many? This is very easily done.");
     
    -
    • This code is used in §3.
    -

    §3.2. Issue problem for wrong sort of end3.2 = +

    • This code is used in §2.
    +

    §2.2. Issue problem for wrong sort of end2.2 =

    @@ -1080,20 +1087,19 @@ of old-format source text, and for refuseniks.
             "finishing the block you began with %3.");
         Problems::issue_problem_end();
     
    -
    • This code is used in §3.
    -

    §3.3. Issue problem for begin without end3.3 = +

    • This code is used in §2.
    +

    §2.3. Issue problem for begin without end2.3 =

         StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_BeginWithoutEnd),
    -        "the definition of the phrase ended with no matching 'end' for "
    -        "this 'begin'",
    -        "bearing in mind that every begin must have a matching end, and "
    -        "that the one most recently begun must be the one first to end. For "
    -        "instance, 'if ... begin' must have a matching 'end if'.");
    +        "the definition of the phrase ended with no matching 'end' for this 'begin'",
    +        "bearing in mind that every begin must have a matching end, and that the one "
    +        "most recently begun must be the one first to end. For instance, 'if ... begin' "
    +        "must have a matching 'end if'.");
     
    -
    • This code is used in §3.
    -

    §3.4. Choose a problem for a loose clause3.4 = +

    • This code is used in §2.
    +

    §2.4. Choose a problem for a loose clause2.4 =

    @@ -1103,19 +1109,18 @@ of old-format source text, and for refuseniks.
                 "which must be wrong.");
         else if (csp == otherwise_if_CSP)
             StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_OtherwiseIfMisplaced),
    -            "the 'otherwise if' clause here seems not to be occurring inside "
    -            "a large 'if'",
    -            "and seems to be freestanding instead. (Though 'otherwise ...' can "
    -            "usually be used after simple one-line 'if's to provide an alternative "
    -            "course of action, 'otherwise if...' is a different matter, and is "
    -            "used to divide up larger-scale instructions.)");
    +            "the 'otherwise if' clause here seems not to be occurring inside a large 'if'",
    +            "and seems to be freestanding instead. (Though 'otherwise ...' can usually "
    +            "be used after simple one-line 'if's to provide an alternative course of action, "
    +            "'otherwise if...' is a different matter, and is used to divide up larger-scale "
    +            "instructions.)");
         else
             StandardProblems::sentence_problem(Task::syntax_tree(), _p_(BelievedImpossible),
                 "this clause can't occur outside of a control phrase",
                 "which suggests that the structure of this routine is wrong.");
     
    -
    • This code is used in §3.
    -

    §3.5. Choose a problem for the wrong clause3.5 = +

    • This code is used in §2.
    +

    §2.5. Choose a problem for the wrong clause2.5 =

    @@ -1124,16 +1129,16 @@ of old-format source text, and for refuseniks.
             Problems::quote_wide_text(2, context->keyword);
             StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_OtherwiseInNonIf));
             Problems::issue_problem_segment(
    -            "The %1 here did not make sense inside a "
    -            "'%2' structure: it's provided for 'if' (or 'unless').");
    +            "The %1 here did not make sense inside a '%2' structure: it's provided for 'if' "
    +            "(or 'unless').");
             Problems::issue_problem_end();
         } else
             StandardProblems::sentence_problem(Task::syntax_tree(), _p_(BelievedImpossible),
                 "this clause is wrong for the phrase containing it",
                 "which suggests that the structure of this routine is wrong.");
     
    -
    • This code is used in §3.
    -

    §3.6. Choose a problem for otherwise not occurring last3.6 = +

    • This code is used in §2.
    +

    §2.6. Choose a problem for otherwise not occurring last2.6 =

    @@ -1148,27 +1153,26 @@ of old-format source text, and for refuseniks.
         }
         if (doubled)
             StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_DoubleOtherwise),
    -            "that makes two unconditional 'otherwise' or 'else' clauses "
    -            "for this 'if'",
    -            "which is forbidden since 'otherwise' is meant to be a single "
    -            "(optional) catch-all clause at the end.");
    +            "that makes two unconditional 'otherwise' or 'else' clauses for this 'if'",
    +            "which is forbidden since 'otherwise' is meant to be a single (optional) "
    +            "catch-all clause at the end.");
         else if (oi)
             StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_OtherwiseIfAfterOtherwise),
                 "this seems to be misplaced since it is out of sequence within its 'if'",
    -            "with an 'otherwise if...' coming after the more general 'otherwise' "
    -            "rather than before. (If there's an 'otherwise' clause, it has to be "
    -            "the last clause of the 'if'.)");
    +            "with an 'otherwise if...' coming after the more general 'otherwise' rather "
    +            "than before. (If there's an 'otherwise' clause, it has to be the last clause "
    +            "of the 'if'.)");
         else
             StandardProblems::sentence_problem(Task::syntax_tree(), _p_(BelievedImpossible),
                 "'otherwise' must be the last clause",
                 "but it seems not to be.");
     
    -
    • This code is used in §3.
    -

    §3.7. This shouldn't happen because the switch construct requires Python syntax +

    • This code is used in §2.
    +

    §2.7. This shouldn't happen because the switch construct requires Python syntax and the structure of that was checked at indentation time, but just in case.

    -

    Issue a problem for the default case not occurring last3.7 = +

    Issue a problem for the default case not occurring last2.7 =

    @@ -1176,30 +1180,30 @@ and the structure of that was checked at indentation time, but just in case.
             "'otherwise' must be the last clause",
             "which must be wrong.");
     
    -
    • This code is used in §3.
    -

    §2.9. The tree is now known to be correctly structured, and there are no possible +

    • This code is used in §2.
    +

    §1.1.9. The tree is now known to be correctly structured, and there are no possible problem messages left to issue. It's therefore safe to begin rearranging it. We'll first eliminate one whole construction: "otherwise if whatever: ..." can now become "otherwise: if whatever: ...".

    -

    (g) Optimise out the otherwise if nodes2.9 = +

    (g) Optimise out the otherwise if nodes1.1.9 =

         int n = problem_count;
    -    RuleSubtrees::purge_otherwise_if(routine_node->down);
    -    if (problem_count > n) LOG("Local parse tree: $T\n", routine_node);
    +    ImperativeSubtrees::purge_otherwise_if(imperative_node->down);
    +    if (problem_count > n) LOG("Local parse tree: $T\n", imperative_node);
     
    -
    • This code is used in §2.
    -

    §2.10. We made a similar manoeuvre above, but for one-line "otherwise do something" +

    • This code is used in §1.1.
    +

    §1.1.10. We made a similar manoeuvre above, but for one-line "otherwise do something" phrases following one-line "if", not for the wider case of "otherwise if". We didn't handle this back then because to do so would have made it impossible to issue good problem messages for failures to use "otherwise if" correctly.

    -void RuleSubtrees::purge_otherwise_if(parse_node *block) {
    +void ImperativeSubtrees::purge_otherwise_if(parse_node *block) {
         for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) {
             if (Node::get_control_structure_used(p) == otherwise_if_CSP) {
                 parse_node *former_contents = p->down;
    @@ -1226,59 +1230,59 @@ to issue good problem messages for failures to use "otherwise if" correctly.
                  any further "otherwise if" or "otherwise" nodes after p follow
                 p->down->next = former_successors;
             }
    -        if (p->down) RuleSubtrees::purge_otherwise_if(p);
    +        if (p->down) ImperativeSubtrees::purge_otherwise_if(p);
         }
     }
     
    -

    §2.11. End nodes are now redundant: maybe they got here as explicit "end if" phrases +

    §1.1.11. End nodes are now redundant: maybe they got here as explicit "end if" phrases in the source text, or maybe they were auto-inserted by the indentation reader, but now that the structure is known to be correct they serve no further purpose. We remove them.

    -

    (h) Remove any end markers as no longer necessary2.11 = +

    (h) Remove any end markers as no longer necessary1.1.11 =

    -    RuleSubtrees::purge_end_markers(routine_node->down);
    +    ImperativeSubtrees::purge_end_markers(imperative_node->down);
     
    -
    • This code is used in §2.
    -

    §2.12.

    +
    • This code is used in §1.1.
    +

    §1.1.12.

    -void RuleSubtrees::purge_end_markers(parse_node *block) {
    +void ImperativeSubtrees::purge_end_markers(parse_node *block) {
         for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) {
             if (Node::get_end_control_structure_used(p)) {
                 if (prev_p) prev_p->next = p->next; else block->down = p->next;
             }
    -        if (p->down) RuleSubtrees::purge_end_markers(p);
    +        if (p->down) ImperativeSubtrees::purge_end_markers(p);
         }
     }
     
    -

    §2.13. The "begin" keyword at the end of control constructs in the old-style syntax +

    §1.1.13. The "begin" keyword at the end of control constructs in the old-style syntax can now be removed, too.

    -

    (i) Remove any begin markers as no longer necessary2.13 = +

    (i) Remove any begin markers as no longer necessary1.1.13 =

    -    RuleSubtrees::purge_begin_markers(routine_node->down);
    +    ImperativeSubtrees::purge_begin_markers(imperative_node->down);
     
    -
    • This code is used in §2.
    -

    §2.14.

    +
    • This code is used in §1.1.
    +

    §1.1.14.

    -void RuleSubtrees::purge_begin_markers(parse_node *block) {
    +void ImperativeSubtrees::purge_begin_markers(parse_node *block) {
         for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) {
             if (Node::get_control_structure_used(p))
                 if (<phrase-beginning-block>(Node::get_text(p)))
                     Node::set_text(p, GET_RW(<phrase-beginning-block>, 1));
    -        if (p->down) RuleSubtrees::purge_begin_markers(p);
    +        if (p->down) ImperativeSubtrees::purge_begin_markers(p);
         }
     }
     
    -

    §2.15. This all makes a nice tree, but it has the defect that the statements heading +

    §1.1.15. This all makes a nice tree, but it has the defect that the statements heading block-opening phrases (the ifs, whiles, repeats) have child nodes (the blocks of code consequent on them). We want them to be leaves for now, so that we can append statement-parsing data underneath them later. So we insert blank @@ -1286,17 +1290,17 @@ code block nodes to mark these phrases, and transfer the control structure annotations to them.

    -

    (j) Insert code block nodes so that nodes needing to be parsed are childless2.15 = +

    (j) Insert code block nodes so that nodes needing to be parsed are childless1.1.15 =

    -    RuleSubtrees::insert_cb_nodes(routine_node->down);
    +    ImperativeSubtrees::insert_cb_nodes(imperative_node->down);
     
    -
    • This code is used in §2.
    -

    §2.16.

    +
    • This code is used in §1.1.
    +

    §1.1.16.

    -void RuleSubtrees::insert_cb_nodes(parse_node *block) {
    +void ImperativeSubtrees::insert_cb_nodes(parse_node *block) {
         for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) {
             if (ControlStructures::opens_block(Node::get_control_structure_used(p))) {
                 parse_node *blank_cb_node = Node::new(CODE_BLOCK_NT);
    @@ -1310,24 +1314,24 @@ annotations to them.
                 if (prev_p) prev_p->next = blank_cb_node; else block->down = blank_cb_node;
                 p = blank_cb_node;
             }
    -        if (p->down) RuleSubtrees::insert_cb_nodes(p);
    +        if (p->down) ImperativeSubtrees::insert_cb_nodes(p);
         }
     }
     
    -

    §2.17. Now: +

    §1.1.17. Now:

    -

    (k) Insert instead marker nodes2.17 = +

    (k) Insert instead marker nodes1.1.17 =

    -    RuleSubtrees::read_instead_markers(routine_node->down);
    +    ImperativeSubtrees::read_instead_markers(imperative_node->down);
     
    -
    • This code is used in §2.
    -

    §2.18.

    +
    • This code is used in §1.1.
    +

    §1.1.18.

    -void RuleSubtrees::read_instead_markers(parse_node *block) {
    +void ImperativeSubtrees::read_instead_markers(parse_node *block) {
         for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) {
             if (<instead-keyword>(Node::get_text(p))) {
                 Node::set_text(p, GET_RW(<instead-keyword>, 1));
    @@ -1336,24 +1340,24 @@ annotations to them.
                 instead_node->next = p->next;
                 p->next = instead_node;
             }
    -        if (p->down) RuleSubtrees::read_instead_markers(p);
    +        if (p->down) ImperativeSubtrees::read_instead_markers(p);
         }
     }
     
    -

    §2.19. Now: +

    §1.1.19. Now:

    -

    (l) Break up say phrases2.19 = +

    (l) Break up say phrases1.1.19 =

    -    RuleSubtrees::break_up_says(routine_node->down);
    +    ImperativeSubtrees::break_up_says(imperative_node->down);
     
    -
    • This code is used in §2.
    -

    §4.

    +
    • This code is used in §1.1.
    +

    §3.

    -void RuleSubtrees::break_up_says(parse_node *block) {
    +void ImperativeSubtrees::break_up_says(parse_node *block) {
         for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) {
             int sf = NO_SIGF;
             wording W = Node::get_text(p);
    @@ -1371,7 +1375,7 @@ annotations to them.
                     if (prev_p) prev_p->next = blank_cb_node; else block->down = blank_cb_node;
     
                     current_sentence = p;
    -                RuleSubtrees::unroll_says(blank_cb_node, W, 0);
    +                ImperativeSubtrees::unroll_says(blank_cb_node, W, 0);
                     p = blank_cb_node;
                     break;
                 }
    @@ -1383,32 +1387,34 @@ annotations to them.
                     break;
                 }
             }
    -        if (p->down) RuleSubtrees::break_up_says(p);
    +        if (p->down) ImperativeSubtrees::break_up_says(p);
         }
     }
     
    -void RuleSubtrees::unroll_says(parse_node *cb_node, wording W, int depth) {
    +void ImperativeSubtrees::unroll_says(parse_node *cb_node, wording W, int depth) {
         while (<phrase-with-comma-notation>(W)) {
             wording AW = GET_RW(<phrase-with-comma-notation>, 1);
             wording BW = GET_RW(<phrase-with-comma-notation>, 2);
             W = AW;
    -        Bite off a say term4.1;
    +        Bite off a say term3.1;
             W = BW;
         }
    -    Bite off a say term4.1;
    +    Bite off a say term3.1;
     }
     
    -

    §4.1. Bite off a say term4.1 = +

    §3.1. Bite off a say term3.1 =

    -    if ((Wordings::length(W) > 1) || (Wide::cmp(Lexer::word_text(Wordings::first_wn(W)), L"\"\"") != 0)) {
    -        if ((Wordings::length(W) == 1) && (Vocabulary::test_flags(Wordings::first_wn(W), TEXTWITHSUBS_MC)) && (depth == 0)) {
    +    if ((Wordings::length(W) > 1) ||
    +        (Wide::cmp(Lexer::word_text(Wordings::first_wn(W)), L"\"\"") != 0)) {
    +        if ((Wordings::length(W) == 1) &&
    +            (Vocabulary::test_flags(Wordings::first_wn(W), TEXTWITHSUBS_MC)) && (depth == 0)) {
                 wchar_t *p = Lexer::word_raw_text(Wordings::first_wn(W));
    -            Check that substitution does not contain suspicious punctuation4.1.1;
    +            Check that substitution does not contain suspicious punctuation3.1.1;
                 wording A = Feeds::feed_C_string_expanding_strings(p);
                 if (<verify-expanded-text-substitution>(A))
    -                RuleSubtrees::unroll_says(cb_node, A, depth+1);
    +                ImperativeSubtrees::unroll_says(cb_node, A, depth+1);
             } else {
                 parse_node *say_term_node = Node::new(INVOCATION_LIST_SAY_NT);
                 Node::set_text(say_term_node, W);
    @@ -1416,42 +1422,41 @@ annotations to them.
             }
         }
     
    -
    • This code is used in §4 (twice).
    -

    §4.1.1. Check that substitution does not contain suspicious punctuation4.1.1 = +

    • This code is used in §3 (twice).
    +

    §3.1.1. Check that substitution does not contain suspicious punctuation3.1.1 =

         int k, sqb = 0;
         for (k=0; p[k]; k++) {
             switch (p[k]) {
    -            case '[': sqb++; if (sqb > 1) Issue problem message for nested substitution4.1.1.2; break;
    -            case ']': sqb--; if (sqb < 0) Issue problem message for unopened substitution4.1.1.4; break;
    +            case '[': sqb++; if (sqb > 1) Issue problem message for nested substitution3.1.1.2; break;
    +            case ']': sqb--; if (sqb < 0) Issue problem message for unopened substitution3.1.1.4; break;
                 case ':': if ((k>0) && (Characters::isdigit(p[k-1])) && (Characters::isdigit(p[k+1]))) break;
                 case ';':
    -                if (sqb > 0) Issue PM_TSWithPunctuation problem4.1.1.6;
    +                if (sqb > 0) Issue PM_TSWithPunctuation problem3.1.1.6;
                     break;
                 case ',':
    -                if (sqb > 0) Issue problem message for comma in a substitution4.1.1.1;
    +                if (sqb > 0) Issue problem message for comma in a substitution3.1.1.1;
                     break;
             }
         }
    -    if (sqb != 0) Issue problem message for unclosed substitution4.1.1.3;
    +    if (sqb != 0) Issue problem message for unclosed substitution3.1.1.3;
     
    -
    • This code is used in §4.1.
    -

    §4.1.1.1. And the more specialised: +

    • This code is used in §3.1.
    +

    §3.1.1.1. And the more specialised:

    -

    Issue problem message for comma in a substitution4.1.1.1 = +

    Issue problem message for comma in a substitution3.1.1.1 =

         Strings::TextSubstitutions::it_is_not_worth_adding();
         StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_TSWithComma),
             "a substitution contains a comma ','",
    -        "which is against the rules, because 'say' is a special phrase in "
    -        "which the comma divides items in a list of things to say, and so it "
    -        "loses its ordinary meanings. Because of this, no text substitution "
    -        "can contain a comma. "
    +        "which is against the rules, because 'say' is a special phrase in which the comma "
    +        "divides items in a list of things to say, and so it loses its ordinary meanings. "
    +        "Because of this, no text substitution can contain a comma. "
             "(If you're trying to use a value produced by a phrase with a phrase "
             "option - say 'the best route from A to B, using even locked doors' - "
             "you'll need to put this in a 'let' variable first and then say that, "
    @@ -1459,8 +1464,8 @@ annotations to them.
         Strings::TextSubstitutions::it_is_worth_adding();
         return;
     
    - -

    §4.1.1.2. Issue problem message for nested substitution4.1.1.2 = +

    +

    §3.1.1.2. Issue problem message for nested substitution3.1.1.2 =

    @@ -1469,22 +1474,21 @@ annotations to them.
             (p[k+5] == 'o') && (p[k+6] == 'd') && (p[k+7] == 'e') && (p[k+8] == ' ')) {
             StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_NestedUSubstitution),
                 "the text here contains one substitution '[...]' inside another",
    -            "which is not allowed. Actually, it looks as if you might have got "
    -            "into this by typing an exotic character as part of the name of a "
    -            "text substitution - those get rewritten automatically as '[unicode N]' "
    -            "for the appropriate Unicode character code number N. Either way - "
    -            "this isn't allowed.");
    +            "which is not allowed. Actually, it looks as if you might have got into this "
    +            "by typing an exotic character as part of the name of a text substitution - "
    +            "those get rewritten automatically as '[unicode N]' for the appropriate Unicode "
    +            "character code number N. Either way - this isn't allowed.");
         } else {
             StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_NestedSubstitution),
                 "the text here contains one substitution '[...]' inside another",
    -            "which is not allowed. (If you just wanted a literal open and closed "
    -            "square bracket, use '[bracket]' and '[close bracket]'.)");
    +            "which is not allowed. (If you just wanted a literal open and closed square "
    +            "bracket, use '[bracket]' and '[close bracket]'.)");
         }
         Strings::TextSubstitutions::it_is_worth_adding();
         return;
     
    - -

    §4.1.1.3. Issue problem message for unclosed substitution4.1.1.3 = +

    +

    §3.1.1.3. Issue problem message for unclosed substitution3.1.1.3 =

    @@ -1492,61 +1496,60 @@ annotations to them.
         StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_UnclosedSubstitution),
             "the text here uses an open square bracket '[', which opens a substitution "
             "in the text, but doesn't close it again",
    -        "so that the result is malformed. (If you just wanted a literal open "
    -        "square bracket, use '[bracket]'.)");
    +        "so that the result is malformed. (If you just wanted a literal open square "
    +        "bracket, use '[bracket]'.)");
         Strings::TextSubstitutions::it_is_worth_adding();
         return;
     
    - -

    §4.1.1.4. Issue problem message for unopened substitution4.1.1.4 = +

    +

    §3.1.1.4. Issue problem message for unopened substitution3.1.1.4 =

         Strings::TextSubstitutions::it_is_not_worth_adding();
         StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_UnopenedSubstitution),
    -        "the text here uses a close square bracket ']', which closes a substitution "
    -        "in the text, but never actually opened it",
    -        "with a matching '['. (If you just wanted a literal close square bracket, "
    -        "use '[close bracket]'.)");
    +        "the text here uses a close square bracket ']', which closes a substitution in the "
    +        "text, but never actually opened it",
    +        "with a matching '['. (If you just wanted a literal close square bracket, use "
    +        "'[close bracket]'.)");
         Strings::TextSubstitutions::it_is_worth_adding();
         return;
     
    - -

    §4.1.1.5. Something devious happens when production (b) of <s-say-phrase> is matched. -Double-quoted text is literal if it contains no square brackets, but is -expanded if it includes text substitutions in squares. When (b) matches, -Inform expands a text such as +

    +

    §3.1.1.5. Something devious happens when text following a "say" is found. Double-quoted text +is literal if it contains no square brackets, but is expanded if it includes text +substitutions in squares. Thus:

    "Look, [the noun] said."

    -

    into: +

    becomes:

    "Look, ", the noun, " said."

    -

    and then re-parses the result with the following nonterminal; note that we -make sure commas are used correctly before handing back to <s-say-phrase> -to parse the list. +

    This is then re-parsed with the following nonterminal; note that we report any +problem with misuse of commas — really, of square brackets — before handing back +to <s-say-phrase> to parse the list.

     <verify-expanded-text-substitution> ::=
    -    *** . *** |    ==> Issue PM_TSWithPunctuation problem4.1.1.6; ==> { fail }
    -    , *** |        ==> Issue PM_EmptySubstitution problem4.1.1.5.1; ==> { fail }
    -    *** , |        ==> Issue PM_EmptySubstitution problem4.1.1.5.1; ==> { fail }
    -    *** , , *** |  ==> Issue PM_EmptySubstitution problem4.1.1.5.1; ==> { fail }
    -    ...
    +    *** . *** |    ==> Issue PM_TSWithPunctuation problem3.1.1.6; ==> { fail };
    +    , *** |        ==> Issue PM_EmptySubstitution problem3.1.1.5.1; ==> { fail };
    +    *** , |        ==> Issue PM_EmptySubstitution problem3.1.1.5.1; ==> { fail };
    +    *** , , *** |  ==> Issue PM_EmptySubstitution problem3.1.1.5.1; ==> { fail };
    +    ...            ==> { -, - }
     
    -

    §4.1.1.6. So now just the problem messages: +

    §3.1.1.6. So now just the problem messages:

    -

    Issue PM_TSWithPunctuation problem4.1.1.6 = +

    Issue PM_TSWithPunctuation problem3.1.1.6 =

    @@ -1556,11 +1559,11 @@ to parse the list.
             "which suggests that a close square bracket ']' may have gone astray.");
         Strings::TextSubstitutions::it_is_worth_adding();
     
    - -

    §4.1.1.5.1. And: +

    +

    §3.1.1.5.1. And:

    -

    Issue PM_EmptySubstitution problem4.1.1.5.1 = +

    Issue PM_EmptySubstitution problem3.1.1.5.1 =

    @@ -1570,13 +1573,12 @@ to parse the list.
             "which is not allowed. To say nothing - well, say nothing.");
         Strings::TextSubstitutions::it_is_worth_adding();
     
    -
    • This code is used in §4.1.1.5 (three times).
    -

    §5. That just leaves one utility routine, for manufacturing end nodes which -match a given begin node. +

    • This code is used in §3.1.1.5 (three times).
    +

    §4. The following manufactures end nodes to match a given begin node.

    -parse_node *RuleSubtrees::end_node(parse_node *opening) {
    +parse_node *ImperativeSubtrees::end_node(parse_node *opening) {
         parse_node *implicit_end = Node::new(INVOCATION_LIST_NT);
         Node::set_end_control_structure_used(implicit_end,
             Node::get_control_structure_used(opening));
    @@ -1586,7 +1588,7 @@ match a given begin node.
     }
     
    diff --git a/docs/assertions-module/2-ps.html b/docs/assertions-module/2-ps.html index 7a4400485..a5e6f69de 100644 --- a/docs/assertions-module/2-ps.html +++ b/docs/assertions-module/2-ps.html @@ -228,7 +228,7 @@ production of <has-property-name>. diff --git a/docs/assertions-module/2-ptmn.html b/docs/assertions-module/2-ptmn.html index 00fceb8f4..c206b3620 100644 --- a/docs/assertions-module/2-ptmn.html +++ b/docs/assertions-module/2-ptmn.html @@ -208,7 +208,7 @@ organisation, and are not directly functional in themselves. case ENDHERE_NT: Anaphora::new_discussion(); global_pass_state.near_start_of_extension = 0; break; - case RULE_NT: Pass through a RULE node3.1.1; break; + case IMPERATIVE_NT: Pass through an IMPERATIVE node3.1.1; break; case SENTENCE_NT: Pass through a SENTENCE node3.1.2; break; case TRACE_NT: Pass through a TRACE node3.1.5; break; @@ -234,19 +234,19 @@ organisation, and are not directly functional in themselves. } -

    §3.1.1. This is a little convoluted. The linguistics module turns sentences in -rule form into a RULE_NT node followed by subsequent INVOCATION_NT nodes, -and the first call here makes them into a neat subtree. After that, we look -out for adjectives defined by phrases, and for phrases with names, since -both will affect how we read sentences in passes 1 and 2. +

    §3.1.1. This is a little convoluted: see Imperative Subtrees for how +"acceptance" tidies up the nodes in the syntax tree corresponding to a block +of imperative code. After that, we look out for adjectives defined by phrases, +and for phrases with names, since both will affect how we read sentences in +passes 1 and 2.

    -

    Pass through a RULE node3.1.1 = +

    Pass through an IMPERATIVE node3.1.1 =

         if (global_pass_state.pass == 0) {
    -        SyntaxTree::traverse_run(p, RuleSubtrees::demote_command_nodes, RULE_NT);
    +        SyntaxTree::traverse_run(p, ImperativeSubtrees::accept, IMPERATIVE_NT);
             Phrases::Adjectives::look_for_headers(p);
             Phrases::Usage::predeclare_name_in(p);
         }
    @@ -390,7 +390,7 @@ followed by double-quoted text is a note for the telemetry file.
     }
     
    diff --git a/docs/assertions-module/3-dlr.html b/docs/assertions-module/3-dlr.html index 1279e1e4a..635c03131 100644 --- a/docs/assertions-module/3-dlr.html +++ b/docs/assertions-module/3-dlr.html @@ -184,7 +184,7 @@ modifiers and a pointer to a Preform nonterminal if one has been named. } diff --git a/docs/assertions-module/4-ass2.html b/docs/assertions-module/4-ass2.html index f92700f6a..1af0738a3 100644 --- a/docs/assertions-module/4-ass2.html +++ b/docs/assertions-module/4-ass2.html @@ -128,7 +128,7 @@ generalisations which apply to it. CLASS_DEFINITION } generalisation; - +

    §3. For reasons to do with timing, each object needs to keep track of which generalisations have and have not yet applied to it. In practice, this is a list of pairs \((K, g)\) where \(K\) is a kind and \(g\) is the most recent one @@ -142,7 +142,7 @@ applied from \(K\)'s list. struct application *next; } application; -

    +

    §4. These structures are combined in the following packet of data attached to each inference subject:

    diff --git a/docs/assertions-module/5-eqt.html b/docs/assertions-module/5-eqt.html index 26fd8db91..3358ff31e 100644 --- a/docs/assertions-module/5-eqt.html +++ b/docs/assertions-module/5-eqt.html @@ -135,7 +135,7 @@ instance has its own equation CLASS_DEFINITION } equation_symbol; - +

    §3. In addition, there are some standing symbols used by all equations: the constant "pi", for example. They're stored in this linked list:

    diff --git a/docs/assertions-module/5-tbl.html b/docs/assertions-module/5-tbl.html index 84d17dcb6..e96b20044 100644 --- a/docs/assertions-module/5-tbl.html +++ b/docs/assertions-module/5-tbl.html @@ -120,7 +120,7 @@ column ID numbers: see struct table_contribution *next; } table_contribution; -
    • The structure table_contribution is accessed in 2/ptmn, 2/cs, 2/ps, 3/dlr, 3/pr, 3/tr, 3/nuor, 3/uor, 3/tr2, 3/dbtr, 3/rpr, 3/nar, 3/nlpr, 3/nrr, 3/npr, 3/nvr, 3/nar2, 4/rpt, 4/tc, 4/ass, 4/npa, 4/rk, 4/ass2, 4/imp, 5/eqt, 6/tcp, 6/cu and here.
    +
    • The structure table_contribution is accessed in 2/ptmn, 2/cs, 2/ps, 2/is, 3/dlr, 3/pr, 3/tr, 3/nuor, 3/uor, 3/tr2, 3/dbtr, 3/rpr, 3/nar, 3/nlpr, 3/nrr, 3/npr, 3/nvr, 3/nar2, 4/rpt, 4/tc, 4/ass, 4/npa, 4/rk, 4/ass2, 4/imp, 5/eqt, 6/tcp, 6/cu and here.

    §3. These are convenient during parsing.

    diff --git a/docs/assertions-module/index.html b/docs/assertions-module/index.html index 6c50ff057..af5c5b091 100644 --- a/docs/assertions-module/index.html +++ b/docs/assertions-module/index.html @@ -114,6 +114,11 @@ Property Sentences
    - To examine assertion sentences for property creation.

    +
  • +

    + Imperative Subtrees - + To tidy up blocks of rule and phrase definition in the syntax tree.

    +
  • diff --git a/docs/core-module/1-htc.html b/docs/core-module/1-htc.html index 626df2246..de6f6b2de 100644 --- a/docs/core-module/1-htc.html +++ b/docs/core-module/1-htc.html @@ -271,11 +271,7 @@ so on. Those absolute basics are made here. Task::advance_stage_to(PHRASES_CSEQ, I"Phrases and rules", 3, debugging, sequence_timer); BENCH(LiteralPatterns::define_named_phrases) - BENCH(Phrases::Manager::traverse) - BENCH(Phrases::Manager::register_meanings) - BENCH(Phrases::Manager::parse_rule_parameters) - BENCH(Phrases::Manager::add_rules_to_rulebooks) - BENCH(Phrases::Manager::parse_rule_placements) + BENCH(ImperativeDefinitions::find_phrases_and_rules) BENCH(Equations::traverse_to_stock) BENCH(Tables::traverse_to_stock) BENCH(RTProperties::annotate_attributes) @@ -313,14 +309,14 @@ so on. Those absolute basics are made here. BENCH(Tables::complete) BENCH(RTTables::compile) BENCH(RTEquations::compile_identifiers) - BENCH(Phrases::Manager::compile_first_block) - BENCH(Phrases::Manager::compile_rulebooks) - BENCH(Phrases::Manager::rulebooks_array) + BENCH(ImperativeDefinitions::compile_first_block) + BENCH(RTRules::compile_rulebooks) + BENCH(RTRules::rulebooks_array_array) BENCH(RTRules::rulebook_var_creators) BENCH(RTActivities::activity_var_creators) BENCH(RTRelations::IterateRelations) - BENCH(Phrases::Manager::RulebookNames_array) - BENCH(Phrases::Manager::RulePrintingRule_routine) + BENCH(RTRules::RulebookNames_array) + BENCH(RTRules::RulePrintingRule_routine) BENCH(RTVerbs::ConjugateVerb) BENCH(RTAdjectives::agreements) if (debugging) { @@ -337,12 +333,12 @@ so on. Those absolute basics are made here. BENCH(Lists::check) BENCH(ConstantLists::compile) BENCH(Phrases::invoke_to_begin) - BENCH(Phrases::Manager::compile_as_needed) + BENCH(ImperativeDefinitions::compile_as_needed) BENCH(Strings::compile_responses) BENCH(Lists::check) BENCH(ConstantLists::compile) BENCH(RTRelations::compile_defined_relations) - BENCH(Phrases::Manager::compile_as_needed) + BENCH(ImperativeDefinitions::compile_as_needed) BENCH(Strings::TextSubstitutions::allow_no_further_text_subs) diff --git a/docs/core-module/1-inaa.html b/docs/core-module/1-inaa.html index 745d42b28..e81a977e6 100644 --- a/docs/core-module/1-inaa.html +++ b/docs/core-module/1-inaa.html @@ -104,7 +104,7 @@ declarations and assertion sentences.
  • ● Code nodes, category CODE_NCAT, are defined only below. They occur only inside imperative code (i.e. rules and phrase definitions), in subtrees headed -by a level-2 RULE_NT node, and they organise what is to be compiled. +by a level-2 IMPERATIVE_NT node, and they organise what is to be compiled.
  • ● Specification nodes represent values or descriptions of values, and are defined only below. These occur frequently in the parse tree as children of code nodes, but can also be used in detached form as a way to represent, say, @@ -268,7 +268,7 @@ also makes it easier for us to manipulate the results. NodeType::new(TEST_VALUE_NT, I"TEST_VALUE_NT", 1, 1, COND_NCAT, 0); -

    §4. Level 4 structural nodes can only be children of RULE_NT nodes (level 2) +

    §4. Level 4 structural nodes can only be children of IMPERATIVE_NT nodes (level 2) or of each other, and their children are otherwise specifications.

    @@ -469,7 +469,7 @@ are made in Building Mod Annotations::allow_for_category(L2_NCAT, clears_pronouns_ANNOT); Annotations::allow_for_category(L2_NCAT, interpretation_of_subject_ANNOT); Annotations::allow_for_category(L2_NCAT, verb_problem_issued_ANNOT); - Annotations::allow(RULE_NT, indentation_level_ANNOT); + Annotations::allow(IMPERATIVE_NT, indentation_level_ANNOT); Annotations::allow(SENTENCE_NT, implicit_in_creation_of_ANNOT); Annotations::allow(SENTENCE_NT, implicitness_count_ANNOT); Annotations::allow(SENTENCE_NT, you_can_ignore_ANNOT); diff --git a/docs/if-module/3-scn.html b/docs/if-module/3-scn.html index 787ae0a61..f60ae1432 100644 --- a/docs/if-module/3-scn.html +++ b/docs/if-module/3-scn.html @@ -422,7 +422,7 @@ ends merrily" and "when the Banquet Entertainment ends merrily". sc->allocation_id, end); Feeds::feed_text_expanding_strings(i6_code); Sentences::make_node(Task::syntax_tree(), Feeds::end(id), '.'); - RuleSubtrees::register_recently_lexed_phrases(); + ImperativeSubtrees::accept_all(); DISCARD_TEXT(i6_code) diff --git a/docs/imperative-module/2-rb.html b/docs/imperative-module/2-rb.html index b4c9626db..fac022264 100644 --- a/docs/imperative-module/2-rb.html +++ b/docs/imperative-module/2-rb.html @@ -167,7 +167,7 @@ the rulebook; instead, the booking is marked for automatic placement later on.

    -void RuleBookings::make_automatic_placements(void) {
    +void RuleBookings::make_automatic_placements(void) {
         booking *br;
         LOOP_OVER(br, booking)
             if (br->place_automatically) {
    @@ -189,6 +189,7 @@ the rulebook; instead, the booking is marked for automatic placement later on.
                     internal_error("Inter-defined rules cannot be automatically placed");
                 }
             }
    +    RTRules::compile_NUMBER_RULEBOOKS_CREATED();
     }
     

    §7. Specificity of bookings. This strcmp-like function is intended to be used in sorting algorithms, diff --git a/docs/imperative-module/3-cs.html b/docs/imperative-module/3-cs.html index 135c4038b..977c4744a 100644 --- a/docs/imperative-module/3-cs.html +++ b/docs/imperative-module/3-cs.html @@ -70,198 +70,22 @@ function togglePopup(material_id) {

    -

    To deal with all the |.i6t| interpreted commands which bring about the compilation of phrases, and to ensure that they are used in the correct order.

    +

    Managing the timing of dealing with defined phrases and rules.

    -
    - -

    §1. A day in the life. Suppose we compare the run of Inform to a single day. At dawn the program -starts up. In the morning it finds out the names of all the constant values -defined in the source text: names like "Mrs Blenkinsop", "hatstand", and -so on. By noon it has also found out the wording used for phrases, such as -"award prize (N - a number) to (gardener - a woman)". This means that in -the afternoon it knows every name it ever will, and so it can work through -the definitions of phrases like "award prize...". In the evening, it does -some book-keeping, and at nightfall it shuts down. -

    - -

    We will use the story of our single day throughout this section on timing, -because everything has to happen in just the right order. -

    - -
    define DAWN_PHT 0
    -define EARLY_MORNING_PHT 1
    -define LATE_MORNING_PHT 2
    -define PRE_NOON_PHT 3
    -define EARLY_AFTERNOON_PHT 4
    -define MID_AFTERNOON_PHT 5
    -define LATE_AFTERNOON_PHT 6
    -define EVENING_PHT 7
    -
    -
    -int phrase_time_now = DAWN_PHT;
    -
    -void Phrases::Manager::advance_phrase_time_to(int advance_to) {
    -    if (advance_to < phrase_time_now) {
    -        LOG("Advance from %d to %d\n", phrase_time_now, advance_to);
    -        internal_error(
    -            "The necessary phrase construction events are out of sequence");
    -    }
    -    phrase_time_now = advance_to;
    -}
    -
    -

    §2. Early morning. We run through the phrase preambles to look for named rules like this: -

    - -
    -

    Instead of pushing the red button (this is the fire alarm rule): ...

    -
    - -

    This looking-for-names is done by parsing the preamble text to a PHUD in -what is called "coarse mode", which can only get an approximate idea at -best: at this stage the "Instead" rulebook and the "red button" don't -exist, so most of the words here are meaningless. The PHUD which coarse -mode parsing produces is far too sketchy to use, and is thrown away. -But at least it does pick out the name "fire alarm rule", and Inform -creates an empty "rule" structure called this, registering this as the -name of a new constant. -

    - -

    §3. Mid-morning. This is when Inform is making its main traverses through assertions. -Something very useful is happening, but it's happening somewhere else. -Assertions such as -

    - -
    -

    Instead is a rulebook.

    -
    - -

    are being read, and rulebooks are therefore being created. -

    - -

    §4. Late morning. With the assertions read, all the values have their names, and that means -we can go back to phrases like: -

    - -
    -

    Instead of pushing the red button (this is the fire alarm rule): ...

    -
    - -

    and read them properly. So Inform now runs through the preambles again and -parses them for a second time to PHUDs, but this time in "fine mode" rather -than "coarse mode", and this time the result is not thrown away. If the -phrase is a "To..." phrase declaration, then the PHUD is pretty sketchy and -we parse more substantial PHTD and PHOD structures to accompany it. But if -it is a rule, the PHUD contains a great deal of useful information, and we -accompany it with essentially blank PHTD and PHOD structures. Either way, we -end up with a triplet of PHUD, PHTD and PHOD, and these are combined into a -new phrase structure. The PHSF structure is initially created as a -function of the PHTD: for example, if the phrase reads -

    - -
    -

    To award (points - a number): ...

    -
    - -

    then the PHTD notes that "points" is the name of a parameter whose kind is -to be "number". The stack frame, PHSF, deduces that "points" will be a -local variable of kind "number" within the phrase when it's running. -Lastly, a blank PHRCD structure is created, filling out the set of five -substructures. -

    - -

    As they are created, the "To..." phrases are insertion-sorted into a list of -phrases in logical precedence order. This can be done now because it relies -only on the kinds listed in the PHTD, all of which have existed since -mid-morning. -

    - -

    For reasons discussed below, rules are not yet sorted. But the names created -in mid-morning, such as "fire alarm rule", are associated with their -phrases, and they are marked for what's called "automatic placement". For -example, the fire alarm rule will automatically be placed into the Instead -rulebook, because its preamble begins "Instead". The reason rules are only -marked to be placed later is that placement has to occur in logical -precedence order, but rules are harder to sort than phrases. They have to be -sorted by their PHRCDs, not their PHTDs, and a PHRCD cannot even be parsed -until afternoon because the conditions for a rule often mention phrases — -for instance, "Instead of waiting when in darkness", making use of an "in -darkness" phrase. So for now we just make a mental note to do automatic -placement later on. -

    +

    §1.

    -void Phrases::Manager::traverse(void) {
    -    Phrases::Manager::advance_phrase_time_to(LATE_MORNING_PHT);
    -
    +void ImperativeDefinitions::find_phrases_and_rules(void) {
    +    int initial_problem_count = problem_count;
         int progress_target = 0, progress_made = 0;
    -    SyntaxTree::traverse_intp(Task::syntax_tree(), Phrases::Manager::visit_to_count, &progress_target);
    -    SyntaxTree::traverse_intp_intp(Task::syntax_tree(), Phrases::Manager::visit_to_create, &progress_target, &progress_made);
    -}
    -
    -void Phrases::Manager::visit_to_count(parse_node *p, int *progress_target) {
    -    (*progress_target)++;
    -}
    -
    -void Phrases::Manager::visit_to_create(parse_node *p, int *progress_target, int *progress_made) {
    -    (*progress_made)++;
    -    if ((*progress_made) % 10 == 0)
    -        ProgressBar::update(3,
    -            ((float) (*progress_made))/((float) (*progress_target)));
    -
    -    if (Node::get_type(p) == RULE_NT) {
    -        Phrases::create_from_preamble(p);
    -    }
    -}
    -
    -

    §5. Just before noon. It is now nearly noon, and things appear to be a little untidy. Why -are the "To..." phrases not yet registered with the excerpt parser? -The answer is that we needed to wait until all of the "To..." phrases -had been created as structures before we could safely proceed. The first -phrase couldn't be registered until we knew the complete logical order -of them all. Well: at last, we do know that, and can make the registration. -Phrases are the very last things to get their names in Inform (well, not -counting local variables, whose names only exist fleetingly). -

    - -
    -void Phrases::Manager::register_meanings(void) {
    -    Phrases::Manager::advance_phrase_time_to(PRE_NOON_PHT);
    +    SyntaxTree::traverse_intp(Task::syntax_tree(), ImperativeDefinitions::visit_to_count,
    +        &progress_target);
    +    SyntaxTree::traverse_intp_intp(Task::syntax_tree(), ImperativeDefinitions::visit_to_create,
    +        &progress_target, &progress_made);
    +    if (initial_problem_count < problem_count) return;
     
         Routines::ToPhrases::register_all();
    -}
    -
    -

    §6. Noon. When the final phrase is registered, the hour chimes. From this point -onwards, there's no longer any text which can't be parsed because some -of the names don't exist yet: everything exists. -

    - -

    §7. Early afternoon. In the afternoon, we begin by binding up the rulebooks. First, we go through -the phrases destined to be rules, and for each we translate the PHUD (which -contains mainly textual representations of the usage information, e.g. -"taking something (called the thingummy) which is in a lighted room during -Scene Two when the marble slab is open") to a PHRCD (which contains fully -parsed Inform data structures, e.g., an action pattern and a pointer to a -scene structure). As noted above, this often means parsing conditions -which involve phrases, and that's why we're doing it in the afternoon. -

    - -

    During this PHUD-to-PHRCD parsing process, we make sure that the relevant -phrase's PHSF is the current stack frame, because it's here that the names -of any callings (e.g. "thingummy") are created as local variables to be -valid throughout the phrase. -

    - -

    Once we're done with this, the PHUD will never be used again. -

    - -

    Note that the PHRCDs have to be parsed in source text appearance order (the -order which LOOP_OVER follows) so that the back reference "doing it" can -correctly refer to the most recently mentioned action. -

    - -
    -void Phrases::Manager::parse_rule_parameters(void) {
    -    Phrases::Manager::advance_phrase_time_to(EARLY_AFTERNOON_PHT);
    +    if (initial_problem_count < problem_count) return;
     
         phrase *ph;
         LOOP_OVER(ph, phrase) {
    @@ -271,79 +95,63 @@ correctly refer to the most recently mentioned action.
                 Phrases::Usage::to_runtime_context_data(&(ph->usage_data));
             Frames::remove_current();
         }
    -}
    -
    -

    §8. We can finally make the automatic placements of rules into rulebooks: so -our "fire alarm rule" will at last be placed in the "Instead" rulebook. The -PHRCDs are used to make sure it appears in the right position. -

    + if (initial_problem_count < problem_count) return; -
    -void Phrases::Manager::add_rules_to_rulebooks(void) {
    -    Phrases::Manager::advance_phrase_time_to(EARLY_AFTERNOON_PHT);
         RuleBookings::make_automatic_placements();
    -    inter_name *iname = Hierarchy::find(NUMBER_RULEBOOKS_CREATED_HL);
    -    Emit::named_numeric_constant(iname, (inter_ti) NUMBER_CREATED(rulebook));
    -    Hierarchy::make_available(Emit::tree(), iname);
    +    if (initial_problem_count < problem_count) return;
    +
    +    SyntaxTree::traverse(Task::syntax_tree(), ImperativeDefinitions::visit_to_parse_placements);
    +}
    +
    +void ImperativeDefinitions::visit_to_count(parse_node *p, int *progress_target) {
    +    (*progress_target)++;
    +}
    +
    +void ImperativeDefinitions::visit_to_create(parse_node *p, int *progress_target, int *progress_made) {
    +    (*progress_made)++;
    +    if ((*progress_made) % 10 == 0)
    +        ProgressBar::update(3,
    +            ((float) (*progress_made))/((float) (*progress_target)));
    +
    +    if (Node::get_type(p) == IMPERATIVE_NT) {
    +        Phrases::create_from_preamble(p);
    +    }
     }
     
    -

    §9. It might seem as if the rulebooks are now complete, but this is not true, -because we still have to take care of manual placements like: -

    - -
    -

    The fire alarm rule is listed in the safety procedures rulebook.

    -
    - -

    This is where we get on with that, traversing the parse tree for sentences -of this general sort. Rules can also be unlisted, or constrained to happen -only conditionally, or substituted by other rules. -

    - -
    -void Phrases::Manager::parse_rule_placements(void) {
    -    Phrases::Manager::advance_phrase_time_to(EARLY_AFTERNOON_PHT);
    -    SyntaxTree::traverse(Task::syntax_tree(), Phrases::Manager::visit_to_parse_placements);
    -}
    -
    -

    §10.

    +

    §2.

    enum TRAVERSE_FOR_RULE_FILING_SMFT
     
    -void Phrases::Manager::visit_to_parse_placements(parse_node *p) {
    +void ImperativeDefinitions::visit_to_parse_placements(parse_node *p) {
         if ((Node::get_type(p) == SENTENCE_NT) &&
             (p->down) &&
             (Node::get_type(p->down) == VERB_NT)) {
    -        prevailing_mood =
    -            Annotations::read_int(p->down, verbal_certainty_ANNOT);
    +        prevailing_mood = Annotations::read_int(p->down, verbal_certainty_ANNOT);
             MajorNodes::try_special_meaning(TRAVERSE_FOR_RULE_FILING_SMFT, p->down);
         }
     }
     
    -

    §11. Mid-afternoon. It is now mid-afternoon, and the rulebooks are complete. It is time to -compile the I6 routines which will provide the run-time definitions of all -these phrases. This will be a long task, and much of it will be left until -the evening. But we do get rid of some easy cases now: the rules and -adjective definitions. +

    §3. The rulebooks are now complete and final. It is time to +compile the Inter code which will provide the run-time definitions of all +these phrases. This will be a long task, and we can only do most of it now, +because more phrases will appear later.

     int total_phrases_to_compile = 0;
     int total_phrases_compiled = 0;
    -void Phrases::Manager::compile_first_block(void) {
    -    Phrases::Manager::advance_phrase_time_to(MID_AFTERNOON_PHT);
    -
    -    Count up the scale of the task11.1;
    -    Compile definitions of rules in rulebooks11.2;
    -    Compile definitions of rules left out of rulebooks11.3;
    -    Compile phrases which define adjectives11.4;
    -    Mark To... phrases which have definite kinds for future compilation11.5;
    -    Throw problems for phrases with return kinds too vaguely defined11.6;
    -    Throw problems for inline phrases named as constants11.7;
    +void ImperativeDefinitions::compile_first_block(void) {
    +    Count up the scale of the task3.1;
    +    Compile definitions of rules in rulebooks3.2;
    +    Compile definitions of rules left out of rulebooks3.3;
    +    Compile phrases which define adjectives3.4;
    +    Mark To... phrases which have definite kinds for future compilation3.5;
    +    Throw problems for phrases with return kinds too vaguely defined3.6;
    +    Throw problems for inline phrases named as constants3.7;
     }
     
    -

    §11.1. Count up the scale of the task11.1 = +

    §3.1. Count up the scale of the task3.1 =

    @@ -353,8 +161,8 @@ adjective definitions.
             if (ph->at_least_one_compiled_form_needed)
                 total_phrases_to_compile++;
     
    - -

    §11.2. Compile definitions of rules in rulebooks11.2 = +

    +

    §3.2. Compile definitions of rules in rulebooks3.2 =

    @@ -363,8 +171,8 @@ adjective definitions.
             RTRules::compile_rule_phrases(rb,
                 &total_phrases_compiled, total_phrases_to_compile);
     
    - -

    §11.3. Compile definitions of rules left out of rulebooks11.3 = +

    +

    §3.3. Compile definitions of rules left out of rulebooks3.3 =

    @@ -373,13 +181,13 @@ adjective definitions.
             RTRules::compile_definition(R,
                 &total_phrases_compiled, total_phrases_to_compile);
     
    - -

    §11.4. This doesn't compile all adjective definitions, only the ones which supply +

    +

    §3.4. This doesn't compile all adjective definitions, only the ones which supply a whole multi-step phrase to define them — a relatively little-used feature of Inform.

    -

    Compile phrases which define adjectives11.4 = +

    Compile phrases which define adjectives3.4 =

    @@ -391,8 +199,8 @@ of Inform.
                     total_phrases_to_compile, NULL, NULL, NULL);
         RTAdjectives::compile_support_code();
     
    - -

    §11.5. As we'll see, it's legal in Inform to define "To..." phrases with vague +

    +

    §3.5. As we'll see, it's legal in Inform to define "To..." phrases with vague kinds: "To expose (X - a value)", for example. This can't be compiled as vaguely as the definition implies, since there would be no way to know how to store X. Instead, for each different kind of X which is actually needed, @@ -406,7 +214,7 @@ request the boring ones with straightforward kinds ("To award (N - a number) points", say). This is where we do it:

    -

    Mark To... phrases which have definite kinds for future compilation11.5 = +

    Mark To... phrases which have definite kinds for future compilation3.5 =

    @@ -419,8 +227,8 @@ points", say). This is where we do it:
             }
         }
     
    - -

    §11.6. Throw problems for phrases with return kinds too vaguely defined11.6 = +

    +

    §3.6. Throw problems for phrases with return kinds too vaguely defined3.6 =

    @@ -459,8 +267,8 @@ points", say). This is where we do it:
             }
         }
     
    - -

    §11.7. Throw problems for inline phrases named as constants11.7 = +

    +

    §3.7. Throw problems for inline phrases named as constants3.7 =

    @@ -480,59 +288,8 @@ points", say). This is where we do it:
                 Problems::issue_problem_end();
             }
     
    - -

    §12. Late Afternoon. Rules are pretty well sorted out now, but we still need to compile some I6 -to show how they fit together. These miscellaneous function calls can happen -in any order, so long as they all occur in the late afternoon. -

    - -

    First, rules set to go off at a particular time need to have their timings -noted down: -

    - -
    -void Phrases::Manager::TimedEventsTable(void) {
    -    Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT);
    -    Phrases::Timed::TimedEventsTable();
    -}
    -
    -void Phrases::Manager::TimedEventTimesTable(void) {
    -    Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT);
    -    Phrases::Timed::TimedEventTimesTable();
    -}
    -
    -

    §13. Second, the rulebooks need to be compiled into I6 arrays: -

    - -
    -void Phrases::Manager::rulebooks_array(void) {
    -    Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT);
    -    RTRules::rulebooks_array_array();
    -}
    -
    -void Phrases::Manager::compile_rulebooks(void) {
    -    Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT);
    -    RTRules::compile_rulebooks();
    -}
    -
    -void Phrases::Manager::RulebookNames_array(void) {
    -    Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT);
    -    RTRules::RulebookNames_array();
    -}
    -
    -

    §14. And finally, just as the sun slips below the horizon, we compile the code -which prints out values of the kind "rule" at run-time — for example, taking -the address of the routine which our example rule was compiled to and then -printing out "fire alarm rule". -

    - -
    -void Phrases::Manager::RulePrintingRule_routine(void) {
    -    Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT);
    -    RTRules::RulePrintingRule_routine();
    -}
    -
    -

    §15. Evening. The twilight gathers, but our work is far from done. Recall that we have +

    +

    §4. The twilight gathers, but our work is far from done. Recall that we have accumulated compilation requests for "To..." phrases, but haven't actually acted on them yet.

    @@ -567,13 +324,11 @@ phrases alone: we must compile phrases, then things arising from them, then phrases arising from those, then things arising from the phrases arising from those, and so on, until we're done. The process is therefore structured as a set of "coroutines" which each carry out as much as they can and then -hand over to the others to generate more work. (Indeed, the routine below -can be called multiple times in the course of the evening.) +hand over to the others to generate more work.

    -void Phrases::Manager::compile_as_needed(void) {
    -    Phrases::Manager::advance_phrase_time_to(EVENING_PHT);
    +void ImperativeDefinitions::compile_as_needed(void) {
         rule *R;
         LOOP_OVER(R, rule)
             RTRules::compile_definition(R,
    @@ -598,7 +353,7 @@ can be called multiple times in the course of the evening.)
     }
     
    diff --git a/docs/imperative-module/3-dptd.html b/docs/imperative-module/3-dptd.html index dfd911c46..1171b492d 100644 --- a/docs/imperative-module/3-dptd.html +++ b/docs/imperative-module/3-dptd.html @@ -326,7 +326,7 @@ match is shown.

    -void Phrases::TypeData::Textual::write_index_representation(OUTPUT_STREAM, ph_type_data *phtd, phrase *ph) {
    +void Phrases::TypeData::Textual::write_index_representation(OUTPUT_STREAM, ph_type_data *phtd, phrase *ph) {
         if (phtd->manner_of_return == DECIDES_CONDITION_MOR)
             WRITE("<i>if</i> ");
         Phrases::write_HTML_representation(OUT, ph, INDEX_PHRASE_FORMAT);
    @@ -350,7 +350,7 @@ This is the routine which prints those details.
     

    -void Phrases::TypeData::Textual::write_reveal_box(OUTPUT_STREAM, ph_type_data *phtd, phrase *ph) {
    +void Phrases::TypeData::Textual::write_reveal_box(OUTPUT_STREAM, ph_type_data *phtd, phrase *ph) {
         HTML_OPEN("p");
         Present a paste button containing the text of the phrase6.1;
         Phrases::TypeData::Textual::write_index_representation(OUT, phtd, ph);
    @@ -490,7 +490,7 @@ correctly set.
     

    -void Phrases::TypeData::Textual::parse(ph_type_data *phtd, wording XW, wording *OW) {
    +void Phrases::TypeData::Textual::parse(ph_type_data *phtd, wording XW, wording *OW) {
         int say_flag = FALSE;  is this going to be a "say" phrase?
     
         if (Wordings::nonempty(XW)) XW = Phrases::TypeData::Textual::phtd_parse_return_data(phtd, XW);              trim return data from the front
    @@ -716,7 +716,7 @@ haven't yet been parsed, so that we don't yet know it will be meaningful.
     
     
     int no_truth_state_returns = 0;
    -wording Phrases::TypeData::Textual::phtd_parse_return_data(ph_type_data *phtd, wording XW) {
    +wording Phrases::TypeData::Textual::phtd_parse_return_data(ph_type_data *phtd, wording XW) {
         phtd->return_kind = NULL;
         if (<to-return-data>(XW)) {
             XW = GET_RW(<to-return-data>, 1);
    @@ -746,7 +746,7 @@ preamble word range backwards — it returns the current last word number.
     

    -wording Phrases::TypeData::Textual::phtd_parse_doodads(ph_type_data *phtd, wording W, int *say_flag) {
    +wording Phrases::TypeData::Textual::phtd_parse_doodads(ph_type_data *phtd, wording W, int *say_flag) {
         <<operation>> = -1; <<assignment>> = FALSE; <<deprecated>> = FALSE; <<run-on>> = FALSE;
         <phrase-preamble>(W);  guaranteed to match any non-empty text
         if (<<r>> == SAY_ANN) W = GET_RW(<say-preamble>, 1);
    @@ -976,7 +976,7 @@ form the word and token sequences:
     

    -void Phrases::TypeData::Textual::phtd_parse_word_sequence(ph_type_data *phtd, wording W) {
    +void Phrases::TypeData::Textual::phtd_parse_word_sequence(ph_type_data *phtd, wording W) {
         phtd->no_tokens = 0;
         phtd->no_words = 0;
     
    @@ -1179,7 +1179,7 @@ such as "list of numbers", it returns 0.)
     

    -int Phrases::TypeData::Textual::find_kind_variable_domains(kind *K, int *usages, kind **declarations) {
    +int Phrases::TypeData::Textual::find_kind_variable_domains(kind *K, int *usages, kind **declarations) {
         int t = 0;
         if (K) {
             int N = Kinds::get_variable_number(K);
    @@ -1231,7 +1231,7 @@ in exactly one place: for example,
     
    • This code is used in §21.
    diff --git a/docs/imperative-module/3-itp.html b/docs/imperative-module/3-itp.html index 3f9130163..28df5ecb0 100644 --- a/docs/imperative-module/3-itp.html +++ b/docs/imperative-module/3-itp.html @@ -228,7 +228,7 @@ significant timing difficulties.

    diff --git a/docs/imperative-module/3-pav.html b/docs/imperative-module/3-pav.html index c99b7b569..d07d0edfe 100644 --- a/docs/imperative-module/3-pav.html +++ b/docs/imperative-module/3-pav.html @@ -314,7 +314,7 @@ made above.
    • This code is used in §8.
    diff --git a/docs/imperative-module/3-phr.html b/docs/imperative-module/3-phr.html index 803b571c9..cefdfd9a1 100644 --- a/docs/imperative-module/3-phr.html +++ b/docs/imperative-module/3-phr.html @@ -117,7 +117,7 @@ code below.
     typedef struct phrase {
    -    struct parse_node *declaration_node;  RULE_NT node where declared
    +    struct parse_node *declaration_node;  IMPERATIVE_NT node where declared
         int inline_wn;  word number of inline I6 definition, or -1 if not inline
         struct inter_schema *inter_head_defn;  inline definition translated to inter, if possible
         struct inter_schema *inter_tail_defn;  inline definition translated to inter, if possible
    @@ -126,7 +126,6 @@ code below.
         struct wording ph_documentation_symbol;  cross-reference with documentation
         struct compilation_unit *owning_module;
         struct package_request *requests_package;
    -	struct package_request *rule_package;
     
         struct ph_type_data type_data;
         struct ph_usage_data usage_data;
    @@ -146,7 +145,7 @@ code below.
         CLASS_DEFINITION
     } phrase;
     
    -
    • The structure phrase is accessed in 2/rls, 2/rb, 3/cs, 3/pu, 3/prcd, 3/ptd, 3/dptd, 3/po, 3/pav, 3/tph, 3/tp, 3/pi, 6/inv, 6/pi, 6/ci, 6/cii, 6/cp, 6/cste and here.
    +
    • The structure phrase is accessed in 2/rls, 2/rb, 3/cs, 3/pu, 3/prcd, 3/ptd, 3/dptd, 3/po, 3/pav, 3/tph, 3/tp, 6/inv, 6/pi, 6/ci, 6/cii, 6/cp, 6/cste and here.

    §4. "To..." phrases, though no others, are listed in logical precedence order:

    @@ -162,9 +161,9 @@ invocation which is given as verbatim I6.

    -void Phrases::create_from_preamble(parse_node *p) {
    -    if ((p == NULL) || (Node::get_type(p) != RULE_NT))
    -        internal_error("a phrase preamble should be at a RULE_NT node");
    +void Phrases::create_from_preamble(parse_node *p) {
    +    if ((p == NULL) || (Node::get_type(p) != IMPERATIVE_NT))
    +        internal_error("a phrase preamble should be at a IMPERATIVE_NT node");
         int inline_wn = -1;          the word number of an inline I6 definition if any
         int mor = DONT_KNOW_MOR;     and its manner of return
         wording OW = EMPTY_WORDING;  the text of the phrase options, if any
    @@ -506,7 +505,7 @@ what number is...", for instance.
         return ph->ph_iname;
     }
     
    -parse_node *Phrases::declaration_node(phrase *ph) {
    +parse_node *Phrases::declaration_node(phrase *ph) {
         return ph->declaration_node;
     }
     
    @@ -521,7 +520,7 @@ response to "requests". All other phrases are compiled just once. ph->imported = TRUE; } -void Phrases::compile(phrase *ph, int *i, int max_i, +void Phrases::compile(phrase *ph, int *i, int max_i, stacked_variable_owner_list *legible, to_phrase_request *req, rule *R) { if (ph->imported) return; int effect = Phrases::Usage::get_effect(&(ph->usage_data)); @@ -593,7 +592,7 @@ response to "requests". All other phrases are compiled just once. }
    diff --git a/docs/imperative-module/3-po.html b/docs/imperative-module/3-po.html index 3c6764bc9..18973c813 100644 --- a/docs/imperative-module/3-po.html +++ b/docs/imperative-module/3-po.html @@ -407,7 +407,7 @@ by "and":
    diff --git a/docs/imperative-module/3-prcd.html b/docs/imperative-module/3-prcd.html index 2eb040b1e..470a5c9b7 100644 --- a/docs/imperative-module/3-prcd.html +++ b/docs/imperative-module/3-prcd.html @@ -734,7 +734,7 @@ with the default outcome return (see above). return n; }
    -
    • The structure activity_list is accessed in 2/rlb, 2/act, 3/rs, 3/phr, 3/tph, 3/tp, 4/lv, 4/sv, 4/sf, 5/dtd, 5/cdp, 6/inv, 6/pi, 6/cii, 6/cp, 6/cste and here.
    +
    • The structure activity_list is accessed in 2/rlb, 2/act, 3/phr, 3/tph, 3/tp, 4/lv, 4/sv, 4/sf, 5/dtd, 5/cdp, 6/inv, 6/pi, 6/cii, 6/cp, 6/cste and here.

    §11. Run-time contexts are seen in the "while" clauses at the end of rules. For example:

    @@ -901,7 +901,7 @@ values, of the kind to which the activity applies. }
    diff --git a/docs/imperative-module/3-ptd.html b/docs/imperative-module/3-ptd.html index f529a95e5..0d85e3047 100644 --- a/docs/imperative-module/3-ptd.html +++ b/docs/imperative-module/3-ptd.html @@ -326,7 +326,7 @@ whistles and doodads which regular phrases don't. return phtd->manner_of_return; } -kind *Phrases::TypeData::get_return_kind(ph_type_data *phtd) { +kind *Phrases::TypeData::get_return_kind(ph_type_data *phtd) { if (phtd->manner_of_return == DECIDES_CONDITION_MOR) return K_truth_state; return phtd->return_kind; } @@ -403,7 +403,7 @@ logic, since one argument is in effect a kind rather than a value.)

    -kind *Phrases::TypeData::kind(ph_type_data *phtd) {
    +kind *Phrases::TypeData::kind(ph_type_data *phtd) {
         kind *argument_kinds[MAX_TOKENS_PER_PHRASE];
         int i, j = 0;
         for (i=0; i<phtd->no_tokens; i++)
    @@ -427,7 +427,7 @@ logic, since one argument is in effect a kind rather than a value.)
     

    -int Phrases::TypeData::tokens_contain_variable(ph_type_data *phtd, int v) {
    +int Phrases::TypeData::tokens_contain_variable(ph_type_data *phtd, int v) {
         for (int i=0; i<phtd->no_tokens; i++)
             if (Kinds::Behaviour::involves_var(phtd->token_sequence[i].token_kind, v))
                 return TRUE;
    @@ -477,7 +477,7 @@ in the next.
     

    -int Phrases::TypeData::deprecated(ph_type_data *phtd) {
    +int Phrases::TypeData::deprecated(ph_type_data *phtd) {
         return phtd->now_deprecated;
     }
     
    @@ -918,7 +918,7 @@ by than name.
         phtd->as_inline.invoked_inline_not_as_call = TRUE;
     }
     
    -int Phrases::TypeData::invoked_inline(phrase *ph) {
    +int Phrases::TypeData::invoked_inline(phrase *ph) {
         return ph->type_data.as_inline.invoked_inline_not_as_call;
     }
     
    @@ -935,7 +935,7 @@ by than name. return FALSE; } -int Phrases::TypeData::arithmetic_operation(phrase *ph) { +int Phrases::TypeData::arithmetic_operation(phrase *ph) { return ph->type_data.as_inline.arithmetical_operation; } @@ -991,7 +991,7 @@ source text. }
    diff --git a/docs/imperative-module/3-pu.html b/docs/imperative-module/3-pu.html index 73831dd0f..311775efb 100644 --- a/docs/imperative-module/3-pu.html +++ b/docs/imperative-module/3-pu.html @@ -697,7 +697,7 @@ of the stem, so we have to be very careful:

    -int Phrases::Usage::get_effect(ph_usage_data *phud) {
    +int Phrases::Usage::get_effect(ph_usage_data *phud) {
         return phud->phrase_effect;
     }
     
    @@ -718,7 +718,7 @@ of the stem, so we have to be very careful:
         return phud->timing_of_event;
     }
     
    -int Phrases::Usage::has_name_as_constant(ph_usage_data *phud) {
    +int Phrases::Usage::has_name_as_constant(ph_usage_data *phud) {
         if ((phud->constant_phrase_holder) &&
             (phud->explicit_name_used_in_maths == FALSE) &&
             (Wordings::nonempty(Nouns::nominative_singular(phud->constant_phrase_holder->name)))) return TRUE;
    @@ -836,7 +836,7 @@ seen problems in Inform. A couple of variables are needed just for that:
     

    §19.

    -ph_runtime_context_data Phrases::Usage::to_runtime_context_data(ph_usage_data *phud) {
    +ph_runtime_context_data Phrases::Usage::to_runtime_context_data(ph_usage_data *phud) {
         ph_runtime_context_data phrcd = Phrases::Context::new();
     
         if (phud->phrase_effect == RULE_NOT_IN_RULEBOOK_EFF)
    @@ -1298,7 +1298,7 @@ might have gone wrong.
     
    • This code is used in §24.
    diff --git a/docs/imperative-module/3-tp.html b/docs/imperative-module/3-tp.html index 423213229..81c246f9f 100644 --- a/docs/imperative-module/3-tp.html +++ b/docs/imperative-module/3-tp.html @@ -92,12 +92,12 @@ defined as "At 9:00 AM: ..." But two values are special: CLASS_DEFINITION } use_as_event;
    -
    • The structure use_as_event is accessed in 2/rlb, 2/act, 3/rs, 3/phr, 3/prcd, 3/tph, 4/lv, 4/sv, 4/sf, 5/dtd, 5/cdp, 6/inv, 6/pi, 6/cii, 6/cp, 6/cste and here.
    +
    • The structure use_as_event is accessed in 2/rlb, 2/act, 3/phr, 3/prcd, 3/tph, 4/lv, 4/sv, 4/sf, 5/dtd, 5/cdp, 6/inv, 6/pi, 6/cii, 6/cp, 6/cste and here.

    §3. Timed events are stored in two simple arrays, processed by run-time code.

    -void Phrases::Timed::TimedEventsTable(void) {
    +void Phrases::Timed::TimedEventsTable(void) {
         inter_name *iname = Hierarchy::find(TIMEDEVENTSTABLE_HL);
         packaging_state save = Emit::named_table_array_begin(iname, K_value);
         int when_count = 0;
    @@ -117,7 +117,7 @@ defined as "At 9:00 AM: ..." But two values are special:
         Hierarchy::make_available(Emit::tree(), iname);
     }
     
    -void Phrases::Timed::TimedEventTimesTable(void) {
    +void Phrases::Timed::TimedEventTimesTable(void) {
         inter_name *iname = Hierarchy::find(TIMEDEVENTTIMESTABLE_HL);
         packaging_state save = Emit::named_table_array_begin(iname, K_number);
         int when_count = 0;
    @@ -141,7 +141,7 @@ defined as "At 9:00 AM: ..." But two values are special:
     

    -void Phrases::Timed::note_usage(phrase *ph, parse_node *at) {
    +void Phrases::Timed::note_usage(phrase *ph, parse_node *at) {
         int t = Phrases::Usage::get_timing_of_event(&(ph->usage_data));
         if (t == NO_FIXED_TIME) {
             use_as_event *uae = CREATE(use_as_event);
    @@ -243,7 +243,7 @@ arguably shouldn't block compilation. Then again...
     
    • This code is used in §6.
    diff --git a/docs/imperative-module/3-tph.html b/docs/imperative-module/3-tph.html index 000342ebb..76117cb24 100644 --- a/docs/imperative-module/3-tph.html +++ b/docs/imperative-module/3-tph.html @@ -189,7 +189,7 @@ reasons, that is, to make the compiled code more legible.

    -void Routines::ToPhrases::register_all(void) {
    +void Routines::ToPhrases::register_all(void) {
         phrase *ph;
         int c = 0;
         for (ph = first_in_logical_order; ph; ph = ph->next_in_logical_order) {
    @@ -234,7 +234,7 @@ values in force, so that there is no possible ambiguity in how we read K.
     

    -to_phrase_request *Routines::ToPhrases::make_request(phrase *ph, kind *K,
    +to_phrase_request *Routines::ToPhrases::make_request(phrase *ph, kind *K,
         kind_variable_declaration *kvd, wording W) {
         if ((ph == NULL) || (K == NULL)) internal_error("bad request");
     
    @@ -338,7 +338,7 @@ since the last time it was called.
     
     
     to_phrase_request *latest_request_granted = NULL;
    -int Routines::ToPhrases::compilation_coroutine(int *i, int max_i) {
    +int Routines::ToPhrases::compilation_coroutine(int *i, int max_i) {
         int N = 0;
         while (TRUE) {
             to_phrase_request *req;
    @@ -403,7 +403,7 @@ is confined to the current Chapter.
     }
     
    diff --git a/docs/imperative-module/4-lv.html b/docs/imperative-module/4-lv.html index 328ef39c2..1ec7d6fd6 100644 --- a/docs/imperative-module/4-lv.html +++ b/docs/imperative-module/4-lv.html @@ -148,7 +148,7 @@ marks it as deallocated. CLASS_DEFINITION } local_variable;
    -
    • The structure local_variable is accessed in 2/rlb, 2/act, 3/rs, 3/phr, 3/prcd, 3/tph, 3/tp, 4/sv, 4/sf, 5/dtd, 5/cdp, 6/inv, 6/pi, 6/cii, 6/cp, 6/cste and here.
    +
    • The structure local_variable is accessed in 2/rlb, 2/act, 3/phr, 3/prcd, 3/tph, 3/tp, 4/sv, 4/sf, 5/dtd, 5/cdp, 6/inv, 6/pi, 6/cii, 6/cp, 6/cste and here.

    §3. A local variable needs to be stored somewhere at run-time. The obvious correspondence is to put these into I6 local variables, which are, in effect, CPU registers. We won't need to do much in the way of register-allocation, @@ -1368,7 +1368,7 @@ need in the compilation of any given routine: }

    diff --git a/docs/imperative-module/4-sf.html b/docs/imperative-module/4-sf.html index 8b53ae596..61e57a9f9 100644 --- a/docs/imperative-module/4-sf.html +++ b/docs/imperative-module/4-sf.html @@ -191,12 +191,12 @@ if that's active, and otherwise must be set as needed. return current_frame; } -void Frames::make_current(ph_stack_frame *phsf) { +void Frames::make_current(ph_stack_frame *phsf) { if (phsf == NULL) internal_error("can't select null stack frame"); current_frame = phsf; } -void Frames::remove_current(void) { +void Frames::remove_current(void) { current_frame = NULL; }
    diff --git a/docs/imperative-module/4-sv.html b/docs/imperative-module/4-sv.html index 5f348be60..86f9551a4 100644 --- a/docs/imperative-module/4-sv.html +++ b/docs/imperative-module/4-sv.html @@ -107,7 +107,7 @@ function togglePopup(material_id) { CLASS_DEFINITION } stacked_variable_owner_list;
    -
    • The structure stacked_variable is accessed in 2/rls, 2/fao, 2/act, 3/pu, 3/dptd, 3/po, 3/pav, 6/cii, 6/cste and here.
    • The structure stacked_variable_list is accessed in 2/rlb, 2/act, 3/rs, 3/phr, 3/prcd, 3/tph, 3/tp, 4/lv, 4/sf, 5/dtd, 5/cdp, 6/inv, 6/pi, 6/cii, 6/cp, 6/cste and here.
    • The structure stacked_variable_owner is private to this section.
    • The structure stacked_variable_owner_list is accessed in 2/rlb, 2/act, 3/rs, 3/phr, 3/prcd, 3/tph, 3/tp, 4/lv, 4/sf, 5/dtd, 5/cdp, 6/inv, 6/pi, 6/cii, 6/cp, 6/cste and here.
    +
    • The structure stacked_variable is accessed in 2/rls, 2/fao, 2/act, 3/pu, 3/dptd, 3/po, 3/pav, 6/cii, 6/cste and here.
    • The structure stacked_variable_list is accessed in 2/rlb, 2/act, 3/phr, 3/prcd, 3/tph, 3/tp, 4/lv, 4/sf, 5/dtd, 5/cdp, 6/inv, 6/pi, 6/cii, 6/cp, 6/cste and here.
    • The structure stacked_variable_owner is private to this section.
    • The structure stacked_variable_owner_list is accessed in 2/rlb, 2/act, 3/phr, 3/prcd, 3/tph, 3/tp, 4/lv, 4/sf, 5/dtd, 5/cdp, 6/inv, 6/pi, 6/cii, 6/cp, 6/cste and here.

    §2.

    diff --git a/docs/imperative-module/5-cdp.html b/docs/imperative-module/5-cdp.html
    index 73e7675bf..9f4b185e0 100644
    --- a/docs/imperative-module/5-cdp.html
    +++ b/docs/imperative-module/5-cdp.html
    @@ -129,7 +129,7 @@ which create routines which... and so on.
     }
     
     pcalc_prop_deferral *latest_pcd = NULL;
    -int Propositions::Deferred::compilation_coroutine(void) {
    +int Propositions::Deferred::compilation_coroutine(void) {
         int N = 0;
         while (TRUE) {
             pcalc_prop_deferral *pdef;
    diff --git a/docs/imperative-module/6-cp.html b/docs/imperative-module/6-cp.html
    index 844535134..5e897b366 100644
    --- a/docs/imperative-module/6-cp.html
    +++ b/docs/imperative-module/6-cp.html
    @@ -104,7 +104,7 @@ should always be supplied for "To..." phrases, but left null for rules.
         rule *R) {
     
         if ((ph->declaration_node == NULL) ||
    -        (Node::get_type(ph->declaration_node) != RULE_NT) ||
    +        (Node::get_type(ph->declaration_node) != IMPERATIVE_NT) ||
             (Wordings::empty(Node::get_text(ph->declaration_node))))
             internal_error("tried to compile phrase with bad ROUTINE node");
         LOGIF(PHRASE_COMPILATION, "Compiling phrase:\n$T", ph->declaration_node);
    diff --git a/docs/imperative-module/index.html b/docs/imperative-module/index.html
    index b5254af74..3afde2269 100644
    --- a/docs/imperative-module/index.html
    +++ b/docs/imperative-module/index.html
    @@ -131,15 +131,10 @@
     								Introduction to Phrases -
     							An exposition of the data structures used inside Inform to hold phrases, rules and rulebooks.

  • -
  • -

    - Rule Subtrees - - To tidy up invocation nodes into a list of children under the relevant rule node, and so turn each rule definition into a single subtree.

    -
  • Construction Sequence - - To deal with all the |.i6t| interpreted commands which bring about the compilation of phrases, and to ensure that they are used in the correct order.

    + Managing the timing of dealing with defined phrases and rules.

  • @@ -186,11 +181,6 @@ Timed Phrases - Another way phrases can be invoked is as timed events, which need no special Inform data structure and are simply compiled into a pair of timetable I6 arrays to be processed at run-time.

  • -
  • -

    - Phrasebook Index - - To compile most of the HTML page for the Phrasebook index.

    -
  • diff --git a/docs/index-module/2-act.html b/docs/index-module/2-act.html index 4652a40e2..010f86500 100644 --- a/docs/index-module/2-act.html +++ b/docs/index-module/2-act.html @@ -161,7 +161,7 @@ function togglePopup(material_id) { } diff --git a/docs/index-module/2-adj.html b/docs/index-module/2-adj.html index bf77fba4e..31705835d 100644 --- a/docs/index-module/2-adj.html +++ b/docs/index-module/2-adj.html @@ -104,7 +104,7 @@ prefaced "(of a rulebook)", "(of an activity)", and so on. diff --git a/docs/index-module/2-dr.html b/docs/index-module/2-dr.html index a6dc66f24..c47da743a 100644 --- a/docs/index-module/2-dr.html +++ b/docs/index-module/2-dr.html @@ -472,7 +472,7 @@ and we need to search fairly seldom: diff --git a/docs/index-module/2-ie.html b/docs/index-module/2-ie.html index 490b0f8a1..13cabdfff 100644 --- a/docs/index-module/2-ie.html +++ b/docs/index-module/2-ie.html @@ -379,7 +379,7 @@ dictionary. } diff --git a/docs/index-module/2-ifs.html b/docs/index-module/2-ifs.html index 0539d796c..e863cea86 100644 --- a/docs/index-module/2-ifs.html +++ b/docs/index-module/2-ifs.html @@ -776,7 +776,7 @@ to show, hide and colour things: } if (Str::eq_wide_string(elt, L"Ph")) { - Phrases::Index::index_page_Phrasebook(OUT); + Phrases::Index::index_page_Phrasebook(OUT); return; } if (Str::eq_wide_string(elt, L"Lx")) { @@ -941,7 +941,7 @@ the source text in the application.

    -void Index::link(OUTPUT_STREAM, int wn) {
    +void Index::link(OUTPUT_STREAM, int wn) {
         Index::link_to_location(OUT, Lexer::word_location(wn), TRUE);
     }
     
    @@ -998,21 +998,21 @@ code.
         HTML_OPEN_WITH("a", "name=%S", p); HTML_CLOSE("a");
     }
     
    -void Index::below_link_numbered(OUTPUT_STREAM, int n) {
    +void Index::below_link_numbered(OUTPUT_STREAM, int n) {
         WRITE("&nbsp;");
         HTML_OPEN_WITH("a", "href=#A%d", n);
         HTML_TAG_WITH("img", "border=0 src=inform:/doc_images/Below.png");
         HTML_CLOSE("a");
     }
     
    -void Index::anchor_numbered(OUTPUT_STREAM, int n) {
    +void Index::anchor_numbered(OUTPUT_STREAM, int n) {
         HTML_OPEN_WITH("a", "name=A%d", n); HTML_CLOSE("a");
     }
     

    §12. "Show extra" links, and also a spacer of equivalent width.

    -void Index::extra_link(OUTPUT_STREAM, int id) {
    +void Index::extra_link(OUTPUT_STREAM, int id) {
         HTML_OPEN_WITH("a", "href=\"#\" onclick=\"showExtra('extra%d', 'plus%d'); return false;\"", id, id);
         HTML_TAG_WITH("img", "border=0 id=\"plus%d\" src=inform:/doc_images/extra.png", id);
         HTML_CLOSE("a");
    @@ -1031,7 +1031,7 @@ code.
         WRITE("&nbsp;");
     }
     
    -void Index::noextra_link(OUTPUT_STREAM) {
    +void Index::noextra_link(OUTPUT_STREAM) {
         HTML_TAG_WITH("img", "border=0 src=inform:/doc_images/noextra.png");
         WRITE("&nbsp;");
     }
    @@ -1040,24 +1040,24 @@ code.
     

    -void Index::extra_div_open(OUTPUT_STREAM, int id, int indent, char *colour) {
    +void Index::extra_div_open(OUTPUT_STREAM, int id, int indent, char *colour) {
         HTML_OPEN_WITH("div", "id=\"extra%d\" style=\"display: none;\"", id);
         HTML::open_indented_p(OUT, indent, "");
         HTML::open_coloured_box(OUT, colour, ROUND_BOX_TOP+ROUND_BOX_BOTTOM);
     }
     
    -void Index::extra_div_close(OUTPUT_STREAM, char *colour) {
    +void Index::extra_div_close(OUTPUT_STREAM, char *colour) {
         HTML::close_coloured_box(OUT, colour, ROUND_BOX_TOP+ROUND_BOX_BOTTOM);
         HTML_CLOSE("p");
         HTML_CLOSE("div");
     }
     
    -void Index::extra_div_open_nested(OUTPUT_STREAM, int id, int indent) {
    +void Index::extra_div_open_nested(OUTPUT_STREAM, int id, int indent) {
         HTML_OPEN_WITH("div", "id=\"extra%d\" style=\"display: none;\"", id);
         HTML::open_indented_p(OUT, indent, "");
     }
     
    -void Index::extra_div_close_nested(OUTPUT_STREAM) {
    +void Index::extra_div_close_nested(OUTPUT_STREAM) {
         HTML_CLOSE("p");
         HTML_CLOSE("div");
     }
    @@ -1065,7 +1065,7 @@ code.
     

    §14. "Deprecation" icons.

    -void Index::deprecation_icon(OUTPUT_STREAM, int id) {
    +void Index::deprecation_icon(OUTPUT_STREAM, int id) {
         HTML_OPEN_WITH("a", "href=\"#\" onclick=\"showExtra('extra%d', 'plus%d'); return false;\"", id, id);
         HTML_TAG_WITH("img", "border=0 src=inform:/doc_images/deprecated.png");
         HTML_CLOSE("a");
    @@ -1077,7 +1077,7 @@ quotes.
     

    -void Index::dequote(OUTPUT_STREAM, wchar_t *p) {
    +void Index::dequote(OUTPUT_STREAM, wchar_t *p) {
         int i = 1;
         if ((p[0] == 0) || (p[1] == 0)) return;
         for (i=1; p[i+1]; i++) {
    @@ -1092,7 +1092,7 @@ quotes.
     

    §16. Describing the current VM.

    -void Index::innards(OUTPUT_STREAM, target_vm *VM) {
    +void Index::innards(OUTPUT_STREAM, target_vm *VM) {
         Index::index_VM(OUT, VM);
         NewUseOptions::index(OUT);
         HTML_OPEN("p");
    @@ -1133,7 +1133,7 @@ quotes.
     

    §17.

    -void Index::index_VM(OUTPUT_STREAM, target_vm *VM) {
    +void Index::index_VM(OUTPUT_STREAM, target_vm *VM) {
         if (VM == NULL) internal_error("target VM not set yet");
         Index::anchor(OUT, I"STORYFILE");
         HTML_OPEN("p"); WRITE("Story file format: ");
    @@ -1145,7 +1145,7 @@ quotes.
     

    §18.

    -void Index::show_configuration(OUTPUT_STREAM) {
    +void Index::show_configuration(OUTPUT_STREAM) {
         HTML_OPEN("p");
         Index::anchor(OUT, I"CONFIG");
         WRITE("Inform language definition:\n");
    @@ -1155,7 +1155,7 @@ quotes.
     }
     
    diff --git a/docs/index-module/2-ih.html b/docs/index-module/2-ih.html index 53864541d..8b6b9ce09 100644 --- a/docs/index-module/2-ih.html +++ b/docs/index-module/2-ih.html @@ -350,7 +350,7 @@ but should this arise then the best recourse is to ignore the heading.
    • This code is used in §4.
    diff --git a/docs/index-module/2-inf.html b/docs/index-module/2-inf.html index 4471bb0a1..7dbba7002 100644 --- a/docs/index-module/2-inf.html +++ b/docs/index-module/2-inf.html @@ -194,7 +194,7 @@ state of being boolean, and the given certainty levels: }
    diff --git a/docs/index-module/2-ins.html b/docs/index-module/2-ins.html index e7ecb8ff2..2cbb0bfd5 100644 --- a/docs/index-module/2-ins.html +++ b/docs/index-module/2-ins.html @@ -203,7 +203,7 @@ constant value. }
    diff --git a/docs/index-module/2-ipw.html b/docs/index-module/2-ipw.html index bbcbd4dcf..975fe981c 100644 --- a/docs/index-module/2-ipw.html +++ b/docs/index-module/2-ipw.html @@ -509,7 +509,7 @@ table of Kinds. }
    diff --git a/docs/index-module/2-ki.html b/docs/index-module/2-ki.html index 03722b7eb..d86814300 100644 --- a/docs/index-module/2-ki.html +++ b/docs/index-module/2-ki.html @@ -571,7 +571,7 @@ as "0 kg", "0 hectares", or whatever is appropriate.
    • This code is used in §6.
    diff --git a/docs/index-module/2-li.html b/docs/index-module/2-li.html index 1a30099aa..3c38a2e9a 100644 --- a/docs/index-module/2-li.html +++ b/docs/index-module/2-li.html @@ -654,7 +654,7 @@ be able to print out a table of just those verbs created in that extension. }
    diff --git a/docs/imperative-module/3-pi.html b/docs/index-module/2-pi.html similarity index 80% rename from docs/imperative-module/3-pi.html rename to docs/index-module/2-pi.html index 6e5263432..0ca95966a 100644 --- a/docs/imperative-module/3-pi.html +++ b/docs/index-module/2-pi.html @@ -58,11 +58,11 @@ function togglePopup(material_id) {
  • assertions
  • values
  • knowledge
  • -
  • imperative
  • +
  • imperative
  • runtime
  • if
  • multimedia
  • -
  • index
  • +
  • index
  • Inter Modules

  • diff --git a/docs/inform7/1-mn.html b/docs/inform7/1-mn.html index 831569fb1..4c2da7954 100644 --- a/docs/inform7/1-mn.html +++ b/docs/inform7/1-mn.html @@ -142,7 +142,7 @@ equivalent of unlocking the doors and turning the lights on in the morning. ImperativeModule::start(); RuntimeModule::start(); ValuesModule::start(); - IFModule::start(); + IFModule::start(); MultimediaModule::start(); HTMLModule::start(); IndexModule::start(); @@ -320,7 +320,7 @@ they can be rather lengthy. ImperativeModule::end(); RuntimeModule::end(); ValuesModule::end(); - IFModule::end(); + IFModule::end(); IndexModule::end(); HTMLModule::end(); BytecodeModule::end(); diff --git a/docs/inform7/M-pm.html b/docs/inform7/M-pm.html index 1321076d0..cecc260e8 100644 --- a/docs/inform7/M-pm.html +++ b/docs/inform7/M-pm.html @@ -83,41 +83,39 @@ which take more than 1/1000th of the total running time.
     100.0% in inform7 run
    -     67.3% in compilation to Inter
    -         26.1% in Phrases::Manager::compile_first_block
    -          8.1% in Phrases::Manager::compile_as_needed
    -          6.8% in Strings::compile_responses
    -          6.3% in InferenceSubjects::emit_all
    -          4.4% in MajorNodes::pre_pass
    -          3.3% in MajorNodes::pass_1
    -          2.0% in Phrases::Manager::RulePrintingRule_routine
    -          1.8% in Phrases::Manager::rulebooks_array
    -          1.1% in RTVerbs::ConjugateVerb
    -          0.7% in Phrases::Manager::traverse
    -          0.5% in Phrases::Manager::parse_rule_parameters
    -          0.5% in World::stage_V
    +     66.3% in compilation to Inter
    +         26.9% in Phrases::Manager::compile_first_block
    +          8.3% in Phrases::Manager::compile_as_needed
    +          6.7% in InferenceSubjects::emit_all
    +          4.3% in Strings::compile_responses
    +          4.1% in MajorNodes::pre_pass
    +          3.5% in MajorNodes::pass_1
    +          2.1% in Phrases::Manager::RulePrintingRule_routine
    +          1.9% in Phrases::Manager::rulebooks_array
    +          0.9% in Phrases::Manager::traverse
    +          0.9% in RTVerbs::ConjugateVerb
               0.3% in MajorNodes::pass_2
               0.3% in Phrases::Manager::compile_rulebooks
    -          0.3% in RTRelations::compile_defined_relations
    -          0.1% in PL::Parsing::Verbs::compile_all
    +          0.3% in Phrases::Manager::parse_rule_parameters
    +          0.3% in World::stage_V
    +          0.1% in RTCommandGrammars::compile_all
               0.1% in RTKinds::compile_data_type_support_routines
    +          0.1% in RTRelations::compile_defined_relations
               0.1% in Task::make_built_in_kind_constructors
    -          0.1% in World::stages_II_and_III
    -          3.3% not specifically accounted for
    -     30.2% in running Inter pipeline
    -         10.0% in step preparation
    -          9.6% in inter step 2/12: link
    -          7.0% in inter step 12/12: generate inform6 -> auto.inf
    +          3.8% not specifically accounted for
    +     31.2% in running Inter pipeline
    +         10.4% in step preparation
    +         10.2% in inter step 2/12: link
    +          7.3% in inter step 12/12: generate inform6 -> auto.inf
               0.3% in inter step 9/12: make-identifiers-unique
               0.1% in inter step 10/12: reconcile-verbs
               0.1% in inter step 11/12: eliminate-redundant-labels
    -          0.1% in inter step 5/12: resolve-conditional-compilation
               0.1% in inter step 6/12: assimilate
               0.1% in inter step 7/12: resolve-external-symbols
               0.1% in inter step 8/12: inspect-plugs
    -          2.0% not specifically accounted for
    -      2.0% in supervisor
    -      0.4% not specifically accounted for
    +          1.7% not specifically accounted for
    +      2.1% in supervisor
    +      0.2% not specifically accounted for
     

    §3. Memory consumption. The following gives some idea of which classes of object have the most instances, and also of how Inform's memory tends to be used in practice. @@ -126,39 +124,39 @@ represent less than 1/1000th of the total.

    -Total memory consumption was 258576K = 253 MB
    +Total memory consumption was 250062K = 244 MB
     
    -62.4% was used for 1337983 objects, in 278604 frames in 202 x 800K = 161600K = 157 MB:
    +61.7% was used for 1234378 objects, in 255236 frames in 193 x 800K = 154400K = 150 MB:
     
    -     9.8%  inter_tree_node_array                    36 x 8192 = 294912 objects, 25953408 bytes
    -     5.5%  text_stream_array                        2595 x 100 = 259500 objects, 14615040 bytes
    -     3.9%  parse_node                               129993 objects, 10399440 bytes
    +     9.8%  inter_tree_node_array                    35 x 8192 = 286720 objects, 25232480 bytes
    +     5.4%  text_stream_array                        2479 x 100 = 247900 objects, 13961728 bytes
    +     3.3%  parse_node                               106882 objects, 8550560 bytes
          2.8%  verb_conjugation                         160 objects, 7425280 bytes
    -     2.6%  parse_node_annotation_array              431 x 500 = 215500 objects, 6909792 bytes
    -     2.4%  linked_list                              11778 objects, 6595680 bytes
    -     2.3%  inter_symbol_array                       70 x 1024 = 71680 objects, 6310080 bytes
    -     1.2%  pcalc_prop_array                         24 x 1000 = 24000 objects, 3264768 bytes
    +     2.7%  linked_list                              12666 objects, 7092960 bytes
    +     2.3%  inter_symbol_array                       66 x 1024 = 67584 objects, 5949504 bytes
    +     2.1%  parse_node_annotation_array              346 x 500 = 173000 objects, 5547072 bytes
          1.2%  map_data                                 670 objects, 3178480 bytes
    -     0.9%  kind_array                               65 x 1000 = 65000 objects, 2602080 bytes
    -     0.7%  inter_schema_token                       13492 objects, 1942848 bytes
    -     0.6%  vocabulary_entry_array                   161 x 100 = 16100 objects, 1808352 bytes
    +     1.2%  pcalc_prop_array                         23 x 1000 = 23000 objects, 3128736 bytes
    +     0.8%  kind_array                               56 x 1000 = 56000 objects, 2241792 bytes
    +     0.7%  inter_schema_token                       13230 objects, 1905120 bytes
    +     0.5%  vocabulary_entry_array                   136 x 100 = 13600 objects, 1527552 bytes
          0.5%  match_trie_array                         10 x 1000 = 10000 objects, 1360320 bytes
    -     0.4%  phrase                                   940 objects, 1210720 bytes
    -     0.3%  inter_name_array                         21 x 1000 = 21000 objects, 1008672 bytes
    +     0.3%  phrase                                   940 objects, 1007680 bytes
          0.3%  adjective_meaning                        202 objects, 1000304 bytes
          0.3%  excerpt_meaning                          3098 objects, 966576 bytes
    -     0.3%  inter_package                            13227 objects, 952344 bytes
    -     0.3%  production                               3875 objects, 899000 bytes
    -     0.3%  ptoken                                   8374 objects, 870896 bytes
    +     0.3%  inter_name_array                         20 x 1000 = 20000 objects, 960640 bytes
    +     0.3%  inter_package                            13213 objects, 951336 bytes
    +     0.3%  production                               3888 objects, 902016 bytes
    +     0.3%  ptoken                                   8392 objects, 872768 bytes
          0.3%  grammatical_usage                        3610 objects, 866400 bytes
          0.3%  individual_form                          2560 objects, 860160 bytes
    -     0.3%  inter_symbols_table                      13227 objects, 846528 bytes
    -     0.3%  inter_schema_node                        8692 objects, 834432 bytes
    -     0.2%  dictionary                               16372 objects, 785856 bytes
    -     0.2%  dict_entry_array                         232 x 100 = 23200 objects, 749824 bytes
    -     0.2%  package_request                          7954 objects, 699952 bytes
    -     0.2%  unary_predicate_array                    16 x 1000 = 16000 objects, 640512 bytes
    +     0.3%  inter_symbols_table                      13213 objects, 845632 bytes
    +     0.3%  inter_schema_node                        8526 objects, 818496 bytes
    +     0.2%  dictionary                               15943 objects, 765264 bytes
    +     0.2%  dict_entry_array                         220 x 100 = 22000 objects, 711040 bytes
    +     0.2%  package_request                          7944 objects, 699072 bytes
          0.2%  inter_name_generator_array               16 x 1000 = 16000 objects, 640512 bytes
    +     0.2%  unary_predicate_array                    15 x 1000 = 15000 objects, 600480 bytes
          0.1%  local_variable_array                     45 x 100 = 4500 objects, 505440 bytes
          0.1%  verb_usage                               1128 objects, 388032 bytes
          0.1%  rule                                     469 objects, 363944 bytes
    @@ -166,67 +164,71 @@ represent less than 1/1000th of the total.
          0.1%  i6_schema_array                          5 x 100 = 500 objects, 300160 bytes
          0.1%  scan_directory                           70 objects, 288960 bytes
          0.1%  noun                                     2379 objects, 285480 bytes
    -     ----  inference_subject                        665 objects, 260680 bytes
    -     ----  action_name_list_array                   3 x 1000 = 3000 objects, 240096 bytes
    +     0.1%  inference_subject                        665 objects, 260680 bytes
          ----  inter_annotation_array                   1 x 8192 objects, 196640 bytes
          ----  linguistic_stock_item                    3315 objects, 159120 bytes
          ----  binary_predicate                         321 objects, 156648 bytes
          ----  stacked_variable_owner_list_array        38 x 100 = 3800 objects, 153216 bytes
          ----  index_lexicon_entry                      395 objects, 142200 bytes
    -     ----  nonterminal                              757 objects, 139288 bytes
    -     ----  action_pattern_array                     6 x 100 = 600 objects, 129792 bytes
    +     ----  nonterminal                              759 objects, 139656 bytes
          ----  documentation_ref                        1275 objects, 112200 bytes
          ----  inference                                1703 objects, 108992 bytes
    -     ----  hierarchy_location                       730 objects, 105120 bytes
    +     ----  hierarchy_location                       723 objects, 104112 bytes
    +     ----  anl_entry_array                          2 x 1000 = 2000 objects, 96064 bytes
          ----  noun_usage                               2401 objects, 96040 bytes
          ----  preposition                              273 objects, 87360 bytes
          ----  lexical_cluster                          2516 objects, 80512 bytes
          ----  pcalc_term_array                         2 x 1000 = 2000 objects, 80064 bytes
    -     ----  kind_variable_declaration                1652 objects, 79296 bytes
          ----  inter_tree                               6 objects, 78624 bytes
    -     ----  inter_schema                             1509 objects, 72432 bytes
    -     ----  rulebook                                 407 objects, 71632 bytes
    +     ----  inter_schema                             1482 objects, 71136 bytes
    +     ----  rulebook                                 407 objects, 65120 bytes
          ----  spatial_data                             670 objects, 64320 bytes
          ----  kind_macro_definition                    9 objects, 62280 bytes
          ----  booking                                  860 objects, 61920 bytes
    -     ----  grammar_verb                             130 objects, 57200 bytes
    +     ----  command_grammar                          130 objects, 58240 bytes
          ----  pcalc_func_array                         1 x 1000 objects, 56032 bytes
          ----  ph_stack_frame_box                       577 objects, 55392 bytes
          ----  kind_constructor                         77 objects, 54824 bytes
    +     ----  cg_token                                 603 objects, 53064 bytes
          ----  property_inference_data                  1315 objects, 52600 bytes
    +     ----  ap_clause_array                          2 x 400 = 800 objects, 51264 bytes
          ----  text_substitution                        436 objects, 48832 bytes
    -     ----  grammar_line                             230 objects, 46000 bytes
    +     ----  cg_line                                  230 objects, 47840 bytes
          ----  table                                    7 objects, 45528 bytes
          ----  inter_node_list                          750 objects, 42000 bytes
          ----  activity_list_array                      1 x 1000 objects, 40032 bytes
    +     ----  anl_clause_array                         1 x 1000 objects, 40032 bytes
          ----  response_message                         407 objects, 35816 bytes
          ----  production_list                          617 objects, 34552 bytes
          ----  regions_data                             670 objects, 32160 bytes
          ----  HTML_tag_array                           1 x 1000 objects, 32032 bytes
    +     ----  kind_variable_declaration                662 objects, 31776 bytes
          ----  property_permission                      96 objects, 30720 bytes
          ----  verb_sense                               403 objects, 29016 bytes
          ----  stacked_variable_owner_array             6 x 100 = 600 objects, 28992 bytes
          ----  heading                                  198 objects, 28512 bytes
    +     ----  action_pattern_array                     7 x 100 = 700 objects, 28224 bytes
          ----  counting_data                            670 objects, 26800 bytes
    -     ----  ap_optional_clause_array                 1 x 400 objects, 22432 bytes
          ----  parsing_data                             670 objects, 21440 bytes
          ----  bp_runtime_implementation                321 objects, 20544 bytes
          ----  instance                                 167 objects, 20040 bytes
    -     ----  pcalc_prop_deferral                      90 objects, 19440 bytes
          ----  nonlocal_variable                        93 objects, 19344 bytes
    -     ----  action_name                              90 objects, 18720 bytes
    +     ----  pcalc_prop_deferral                      87 objects, 18792 bytes
          ----  property                                 146 objects, 18688 bytes
    +     ----  action_name                              90 objects, 18000 bytes
          ----  parse_node_tree                          20 objects, 17280 bytes
    +     ----  understanding_reference_array            2 x 100 = 200 objects, 16064 bytes
    +     ----  action_name_list_array                   1 x 1000 objects, 16032 bytes
          ----  match_avinue_array                       1 x 1000 objects, 16032 bytes
          ----  linked_list_item_array                   1 x 1000 objects, 16032 bytes
    -     ----  method                                   327 objects, 15696 bytes
          ----  to_phrase_request                        59 objects, 15576 bytes
    +     ----  method                                   323 objects, 15504 bytes
          ----  adjective                                137 objects, 14248 bytes
    +     ----  booking_list                             407 objects, 13024 bytes
          ----  literal_text                             147 objects, 12936 bytes
          ----  adjective_iname_holder                   320 objects, 12800 bytes
    -     ----  stopwatch_timer                          149 objects, 11920 bytes
    -     ----  understanding_reference_array            2 x 100 = 200 objects, 11264 bytes
    -     ----  pathname                                 261 objects, 10440 bytes
    +     ----  stopwatch_timer                          145 objects, 11600 bytes
    +     ----  pathname                                 262 objects, 10480 bytes
          ----  filename                                 208 objects, 8320 bytes
          ----  equation_node                            68 objects, 7616 bytes
          ----  understanding_item_array                 3 x 100 = 300 objects, 7296 bytes
    @@ -236,24 +238,25 @@ represent less than 1/1000th of the total.
          ----  verb                                     108 objects, 6048 bytes
          ----  text_literal_holder                      145 objects, 5800 bytes
          ----  inbuild_work                             78 objects, 4992 bytes
    +     ----  explicit_action_array                    1 x 100 objects, 4832 bytes
          ----  value_property_data                      84 objects, 4704 bytes
          ----  heading_tree                             20 objects, 4640 bytes
          ----  parsing_pp_data                          96 objects, 4608 bytes
          ----  build_vertex                             40 objects, 4480 bytes
          ----  hierarchy_attachment_point               48 objects, 4224 bytes
    -     ----  placement_affecting_array                1 x 100 objects, 4032 bytes
          ----  stacked_variable_list_array              1 x 100 objects, 4032 bytes
    +     ----  placement_affecting_array                1 x 100 objects, 4032 bytes
          ----  activity                                 35 objects, 3920 bytes
          ----  inbuild_edition                          54 objects, 3888 bytes
    -     ----  parse_node_annotation_type               118 objects, 3776 bytes
          ----  inbuild_copy                             35 objects, 3640 bytes
    +     ----  parse_node_annotation_type               113 objects, 3616 bytes
          ----  command_line_switch                      43 objects, 3440 bytes
          ----  property_setting_bp_data                 84 objects, 3360 bytes
    -     ----  instance_usage_array                     1 x 200 objects, 3232 bytes
          ----  kind_constructor_comparison_schema_array 1 x 100 objects, 3232 bytes
    +     ----  instance_usage_array                     1 x 200 objects, 3232 bytes
          ----  method_set                               100 objects, 3200 bytes
    -     ----  compatibility_specification              66 objects, 3168 bytes
          ----  definition                               44 objects, 3168 bytes
    +     ----  compatibility_specification              66 objects, 3168 bytes
          ----  inform_extension                         19 objects, 3040 bytes
          ----  property_of_value_storage                93 objects, 2976 bytes
          ----  either_or_property_data                  62 objects, 2976 bytes
    @@ -265,19 +268,19 @@ represent less than 1/1000th of the total.
          ----  kind_constructor_instance_array          1 x 100 objects, 2432 bytes
          ----  equation_symbol                          30 objects, 2400 bytes
          ----  semver_range                             22 objects, 2288 bytes
    +     ----  scene                                    1 object, 2096 bytes
          ----  use_option                               29 objects, 1856 bytes
          ----  pronoun_usage                            42 objects, 1680 bytes
          ----  activity_crossref_array                  1 x 100 objects, 1632 bytes
          ----  table_contribution_array                 1 x 100 objects, 1632 bytes
          ----  kind_interaction                         39 objects, 1560 bytes
    +     ----  plugin                                   24 objects, 1536 bytes
          ----  inter_annotation_form                    37 objects, 1480 bytes
    -     ----  plugin                                   23 objects, 1472 bytes
          ----  pipeline_step                            12 objects, 1440 bytes
          ----  noun_filter_token                        22 objects, 1408 bytes
    -     ----  scene                                    1 object, 1344 bytes
          ----  special_meaning_holder                   33 objects, 1320 bytes
    -     ----  constant_phrase                          20 objects, 1280 bytes
          ----  build_script                             40 objects, 1280 bytes
    +     ----  constant_phrase                          20 objects, 1280 bytes
          ----  invocation_options_array                 1 x 100 objects, 1224 bytes
          ----  direction_inference_data                 30 objects, 1200 bytes
          ----  hierarchy_metadatum                      15 objects, 1200 bytes
    @@ -289,32 +292,32 @@ represent less than 1/1000th of the total.
          ----  cached_understanding                     21 objects, 840 bytes
          ----  runtime_kind_structure                   13 objects, 832 bytes
          ----  phrase_option_array                      1 x 100 objects, 824 bytes
    -     ----  pipeline_stage                           17 objects, 816 bytes
          ----  target_vm                                6 objects, 816 bytes
    +     ----  pipeline_stage                           17 objects, 816 bytes
          ----  generated_segment                        25 objects, 800 bytes
          ----  inter_data_type                          14 objects, 784 bytes
          ----  submodule_identity                       23 objects, 736 bytes
    -     ----  rulebook_outcome                         17 objects, 680 bytes
          ----  inform_language                          6 objects, 672 bytes
    -     ----  relation_guard                           5 objects, 640 bytes
    -     ----  inter_warehouse_room                     10 objects, 640 bytes
          ----  I6T_intervention                         8 objects, 640 bytes
    +     ----  inter_warehouse_room                     10 objects, 640 bytes
    +     ----  relation_guard                           5 objects, 640 bytes
          ----  nascent_array                            7 objects, 616 bytes
          ----  named_rulebook_outcome                   15 objects, 600 bytes
          ----  inbuild_search_result                    15 objects, 600 bytes
    -     ----  label_namespace                          10 objects, 560 bytes
    +     ----  rulebook_outcome                         17 objects, 544 bytes
          ----  small_word_set                           11 objects, 528 bytes
          ----  inform_kit                               5 objects, 520 bytes
          ----  implication                              13 objects, 520 bytes
          ----  inference_family                         11 objects, 440 bytes
    -     ----  i6_memory_setting                        13 objects, 416 bytes
          ----  equation                                 4 objects, 416 bytes
    +     ----  i6_memory_setting                        13 objects, 416 bytes
          ----  module_package                           10 objects, 400 bytes
          ----  dval_written                             10 objects, 400 bytes
          ----  bp_family                                12 objects, 384 bytes
          ----  article_usage                            8 objects, 384 bytes
          ----  source_file                              5 objects, 360 bytes
          ----  inbuild_genre                            7 objects, 336 bytes
    +     ----  label_namespace                          6 objects, 336 bytes
          ----  grammatical_category                     8 objects, 320 bytes
          ----  pronoun                                  8 objects, 320 bytes
          ----  door_dir_notice                          5 objects, 320 bytes
    @@ -329,50 +332,50 @@ represent less than 1/1000th of the total.
          ----  release_instructions                     1 object, 208 bytes
          ----  compilation_unit                         5 objects, 200 bytes
          ----  build_skill                              5 objects, 200 bytes
    -     ----  plural_dictionary_entry                  4 objects, 192 bytes
          ----  kit_dependency                           4 objects, 192 bytes
    +     ----  plural_dictionary_entry                  4 objects, 192 bytes
          ----  inform_project                           1 object, 176 bytes
    -     ----  inference_subject_family                 5 objects, 160 bytes
    +     ----  link_instruction                         4 objects, 160 bytes
          ----  inter_architecture                       4 objects, 160 bytes
    +     ----  inference_subject_family                 5 objects, 160 bytes
          ----  pointer_allocation                       2 objects, 160 bytes
          ----  code_generation_target                   4 objects, 160 bytes
    -     ----  link_instruction                         4 objects, 160 bytes
    -     ----  codegen_pipeline                         1 object, 128 bytes
          ----  element_activation                       4 objects, 128 bytes
    +     ----  codegen_pipeline                         1 object, 128 bytes
          ----  inbuild_nest                             3 objects, 120 bytes
          ----  inform_kit_ittt                          2 objects, 96 bytes
    +     ----  compile_task_data                        1 object, 80 bytes
          ----  article                                  2 objects, 80 bytes
          ----  list_together_routine                    2 objects, 80 bytes
    -     ----  compile_task_data                        1 object, 80 bytes
    -     ----  inter_warehouse                          1 object, 56 bytes
          ----  build_methodology                        1 object, 56 bytes
    +     ----  inter_warehouse                          1 object, 56 bytes
    +     ----  star_invention                           1 object, 48 bytes
          ----  figures_data                             1 object, 48 bytes
          ----  HTML_file_state                          1 object, 48 bytes
    -     ----  star_invention                           1 object, 48 bytes
    -     ----  by_routine_bp_data                       1 object, 40 bytes
    +     ----  parse_name_notice                        1 object, 40 bytes
          ----  kind_template_definition                 1 object, 40 bytes
          ----  loop_over_scope                          1 object, 40 bytes
    -     ----  parse_name_notice                        1 object, 40 bytes
    +     ----  by_routine_bp_data                       1 object, 40 bytes
     
    -37.5% was used for memory not allocated for objects:
    +38.2% was used for memory not allocated for objects:
     
    -    15.9%  text stream storage                      42248560 bytes in 265815 claims
    -     3.5%  dictionary storage                       9278976 bytes in 16372 claims
    -     ----  sorting                                  1056 bytes in 3 claims
    -     2.7%  source text                              7200000 bytes in 3 claims
    -     4.0%  source text details                      10800000 bytes in 2 claims
    +    16.0%  text stream storage                      41145960 bytes in 254029 claims
    +     3.5%  dictionary storage                       9059328 bytes in 15943 claims
    +     ----  sorting                                  1024 bytes in 3 claims
    +     2.8%  source text                              7200000 bytes in 3 claims
    +     4.2%  source text details                      10800000 bytes in 2 claims
          ----  linguistic stock array                   81920 bytes in 2 claims
          ----  small word set array                     105600 bytes in 22 claims
    -     0.8%  inter symbols storage                    2280320 bytes in 13937 claims
    -     6.3%  inter bytecode storage                   16802820 bytes in 14 claims
    -     3.3%  inter links storage                      8750208 bytes in 246 claims
    +     0.8%  inter symbols storage                    2257200 bytes in 13880 claims
    +     6.5%  inter bytecode storage                   16802820 bytes in 14 claims
    +     3.4%  inter links storage                      8750208 bytes in 246 claims
          0.6%  instance-of-kind counting                1695204 bytes in 1 claim
          ----  compilation workspace for objects        21856 bytes in 25 claims
          ----  lists for type-checking invocations      16000 bytes in 1 claim
          ----  emitter array storage                    12320 bytes in 8 claims
          ----  code generation workspace for objects    9200 bytes in 9 claims
     
    -19.9% was overhead - 52766376 bytes = 51529K = 50 MB
    +19.9% was overhead - 51161488 bytes = 49962K = 48 MB
     

    §4. Preform grammar. The full annotated description of the Preform grammar (see About Preform (in words)), with optimisation details and hit/miss statistics added, is also long: it's @@ -381,31 +384,31 @@ sample, showing the nonterminal used to parse literals in Inform 7 source text:

    -<s-literal> hits 2097/23662 nti 12 constraint (none) extremes [1, infinity)
    +<s-literal> hits 1130/20872 nti 12 constraint (none) extremes [1, infinity)
         English:
             (@1)<cardinal-number>=1 
    -          (hits 171/171) (matched: '100') constraint CS = {r0} extremes [1, 1]
    +          (hits 169/169) (matched: '100') constraint CS = {r0} extremes [1, 1]
             (@1)minus (@2)<cardinal-number>=1 
    -          (hits 0/1941) constraint DS = {12} extremes [2, 2]
    +          (hits 0/2045) constraint DS = {12} extremes [2, 2]
             (@1)<quoted-text>=1 (@2)( (@3)<response-letter>=2 (@4)) 
    -          (hits 273/831) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint DS = {12} extremes [4, 4]
    +          (hits 273/846) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint DS = {12} extremes [4, 4]
             (@1)<quoted-text>=1 
    -          (hits 1564/5496) (matched: 'Represents geographical locations, both indoor
    +          (hits 599/4227) (matched: 'Represents geographical locations, both indoor
             and outdoor, which are not necessarily areas in a building. A player in one
             room is mostly unable to sense, or interact with, anything in a different room.
             Rooms are arranged in a map.') constraint (none) extremes [1, 1]
             <s-literal-real-number>=1 
    -          (hits 11/9823) (matched: 'plus infinity') constraint (none) extremes [1, infinity)
    +          (hits 11/9395) (matched: 'plus infinity') constraint (none) extremes [1, infinity)
             (@1)<s-literal-truth-state>=1 
    -          (hits 78/392) (matched: 'false') constraint CS = {6} extremes [1, 1]
    +          (hits 78/774) (matched: 'false') constraint CS = {6} extremes [1, 1]
             <s-literal-list>=1 
    -          (hits 0/1692) constraint DS = {8} extremes [2, infinity)
    +          (hits 0/3087) constraint DS = {8} extremes [2, infinity)
             (@1)unicode <s-unicode-character>=1 
    -          (hits 0/4359) constraint DS = {12} extremes [2, infinity)
    +          (hits 0/4503) constraint DS = {12} extremes [2, infinity)
             <s-literal-time>=1 
    -          (hits 0/3578) constraint DW = {9, 10, 11} extremes [2, 5]
    +          (hits 0/2105) constraint DW = {9, 10, 11} extremes [2, 5]
             <s-literal-unit-notation>=1 
    -          (hits 0/9734) constraint (none) extremes [1, infinity)
    +          (hits 0/9306) constraint (none) extremes [1, infinity)
     

    The unabridged grammar is here:

    @@ -415,7 +418,7 @@ sample, showing the nonterminal used to parse literals in Inform 7 source text:

    @@ -426,7 +429,7 @@ sample, showing the nonterminal used to parse literals in Inform 7 source text: is a roughly 20,000-line text file, and again is too long to quote in full. This is a summary, showing just the portion of tree from the main source text, that is, with the content of extensions excluded, and with the content of -RULE_NT also cut. It still makes for a lengthy read: +IMPERATIVE_NT also cut. It still makes for a lengthy read:

    @@ -460,8 +463,8 @@ that is, with the content of extensions excluded, and with the content of
                 VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action}
                 UNPARSED_NOUN_NT'asking for information'
                 UNPARSED_NOUN_NT'out of world'
    -        RULE_NT'carry out asking for information' {unit: 4}
    -        RULE_NT'when play begins' {unit: 4}
    +        IMPERATIVE_NT'carry out asking for information' {unit: 4}
    +        IMPERATIVE_NT'when play begins' {unit: 4}
             HEADING_NT'section 1 - errands' {heading 5} {under: H5'section 1 - errands'} {unit: 4}
                 SENTENCE_NT'the current actor is a person which varies' {unit: 4} {classified}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
    @@ -471,8 +474,8 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     PROPER_NOUN_NT'current owner' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'current owner' {nonlocal: 'current owner'(var)person}} {created here}
                     COMMON_NOUN_NT'person which varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=people variable-pointer(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'every turn' {unit: 4}
    -            RULE_NT'every turn' {unit: 4}
    +            IMPERATIVE_NT'every turn' {unit: 4}
    +            IMPERATIVE_NT'every turn' {unit: 4}
                 SENTENCE_NT'a person can be active or passive' {unit: 4} {classified}
                     VERB_NT'can be' {verb 'be able to be' s/p 3p act IS_TENSE +ve} {special meaning: can-be}
                     COMMON_NOUN_NT'a person' {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT}
    @@ -488,34 +491,34 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'are' {verb 'be' 3p p act IS_TENSE +ve}
                     PROPER_NOUN_NT'character movement rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: character movement}} {created here}
                     COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'the first character movement rule' {unit: 4}
    -            RULE_NT'a character movement rule' {unit: 4}
    -            RULE_NT'a character movement rule' {unit: 4}
    -            RULE_NT'to decide whether movement has not yet occurred' {unit: 4}
    -            RULE_NT'definition' {unit: 4}
    -            RULE_NT'definition' {unit: 4}
    +            IMPERATIVE_NT'the first character movement rule' {unit: 4}
    +            IMPERATIVE_NT'a character movement rule' {unit: 4}
    +            IMPERATIVE_NT'a character movement rule' {unit: 4}
    +            IMPERATIVE_NT'to decide whether movement has not yet occurred' {unit: 4}
    +            IMPERATIVE_NT'definition' {unit: 4}
    +            IMPERATIVE_NT'definition' {unit: 4}
                 SENTENCE_NT'the shopowner rules is a rulebook' {unit: 4} {classified} {clears pronouns}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     PROPER_NOUN_NT'shopowner rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: shopowner}} {created here}
                     COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'a shopowner rule' {unit: 4}
    -            RULE_NT'report someone closing a door when the person asked owns the' {unit: 4}
    -            RULE_NT'report vanessa closing the metal door when the metal door is' {unit: 4}
    -            RULE_NT'a shopowner rule' {unit: 4}
    +            IMPERATIVE_NT'a shopowner rule' {unit: 4}
    +            IMPERATIVE_NT'report someone closing a door when the person asked owns the' {unit: 4}
    +            IMPERATIVE_NT'report vanessa closing the metal door when the metal door is' {unit: 4}
    +            IMPERATIVE_NT'a shopowner rule' {unit: 4}
                 SENTENCE_NT'filing is an action applying to one thing' {unit: 4} {classified}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action}
                     UNPARSED_NOUN_NT'filing'
                     UNPARSED_NOUN_NT'applying to one thing'
    -            RULE_NT'before someone filing something which is not carried by the ' {unit: 4}
    -            RULE_NT'carry out someone filing' {unit: 4}
    -            RULE_NT'report someone filing' {unit: 4}
    +            IMPERATIVE_NT'before someone filing something which is not carried by the ' {unit: 4}
    +            IMPERATIVE_NT'carry out someone filing' {unit: 4}
    +            IMPERATIVE_NT'report someone filing' {unit: 4}
                 SENTENCE_NT'the shopper rules is a rulebook' {unit: 4} {classified} {clears pronouns}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     PROPER_NOUN_NT'shopper rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: shopper}} {created here}
                     COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'a shopper rule' {unit: 4}
    -            RULE_NT'a shopper rule' {unit: 4}
    -            RULE_NT'definition' {unit: 4}
    +            IMPERATIVE_NT'a shopper rule' {unit: 4}
    +            IMPERATIVE_NT'a shopper rule' {unit: 4}
    +            IMPERATIVE_NT'definition' {unit: 4}
                 SENTENCE_NT'protection relates a door ( called x ) to a room ( called y ' {unit: 4} {classified}
                     VERB_NT'relates' {verb 'relate' 3p s act IS_TENSE +ve} {special meaning: new-relation}
                     UNPARSED_NOUN_NT'protection' {new relation: protection}
    @@ -543,8 +546,8 @@ that is, with the content of extensions excluded, and with the content of
                     COMMON_NOUN_NT'artwork' {indefinite 'an' n/m/f nom/acc s} {refined} {creation: << kind=artwork(x) >>} {refers: infs'artwork'} {eval: TEST_VALUE_NT} {created here}
                     KIND_NT'kind of thing' {refined} {refers: infs'thing'}
                         COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'before printing the name of an artwork' {unit: 4}
    -            RULE_NT'after printing the name of an artwork' {unit: 4}
    +            IMPERATIVE_NT'before printing the name of an artwork' {unit: 4}
    +            IMPERATIVE_NT'after printing the name of an artwork' {unit: 4}
                 SENTENCE_NT'an artwork can be submitted or reserved' {unit: 4} {classified}
                     VERB_NT'can be' {verb 'be able to be' s/p 3p act IS_TENSE +ve} {special meaning: can-be}
                     COMMON_NOUN_NT'an artwork' {refined} {refers: infs'artwork'} {creation: << kind=artwork(x) >>} {eval: TEST_VALUE_NT}
    @@ -557,49 +560,49 @@ that is, with the content of extensions excluded, and with the content of
                     COMMON_NOUN_NT'book' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=book(x) >>} {refers: infs'book'} {eval: TEST_VALUE_NT} {created here}
                     KIND_NT'kind of artwork' {refined} {refers: infs'artwork'}
                         COMMON_NOUN_NT'artwork' {refined} {refers: infs'artwork'} {creation: << kind=artwork(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'before someone resolving a book when the person asked is not' {unit: 4}
    -            RULE_NT'carry out someone resolving a book' {unit: 4}
    -            RULE_NT'report someone resolving a book' {unit: 4}
    -            RULE_NT'before listing contents' {unit: 4}
    -            RULE_NT'before grouping together books' {unit: 4}
    +            IMPERATIVE_NT'before someone resolving a book when the person asked is not' {unit: 4}
    +            IMPERATIVE_NT'carry out someone resolving a book' {unit: 4}
    +            IMPERATIVE_NT'report someone resolving a book' {unit: 4}
    +            IMPERATIVE_NT'before listing contents' {unit: 4}
    +            IMPERATIVE_NT'before grouping together books' {unit: 4}
                 SENTENCE_NT'a stamped envelope is a kind of thing' {unit: 4} {classified} {interpretation of subject: infs'book'}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     COMMON_NOUN_NT'stamped envelope' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=stamped envelope(x) >>} {refers: infs'stamped envelope'} {eval: TEST_VALUE_NT} {created here}
                     KIND_NT'kind of thing' {refined} {refers: infs'thing'}
                         COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'before someone resolving a stamped envelope when the person ' {unit: 4}
    -            RULE_NT'carry out someone resolving a stamped envelope' {unit: 4}
    -            RULE_NT'report someone resolving a stamped envelope' {unit: 4}
    -            RULE_NT'instead of someone resolving a stamped envelope when the per' {unit: 4}
    +            IMPERATIVE_NT'before someone resolving a stamped envelope when the person ' {unit: 4}
    +            IMPERATIVE_NT'carry out someone resolving a stamped envelope' {unit: 4}
    +            IMPERATIVE_NT'report someone resolving a stamped envelope' {unit: 4}
    +            IMPERATIVE_NT'instead of someone resolving a stamped envelope when the per' {unit: 4}
                 SENTENCE_NT'a dvd is a kind of artwork' {unit: 4} {classified} {interpretation of subject: infs'stamped envelope'}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     COMMON_NOUN_NT'dvd' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=dvd(x) >>} {refers: infs'dvd'} {eval: TEST_VALUE_NT} {created here}
                     KIND_NT'kind of artwork' {refined} {refers: infs'artwork'}
                         COMMON_NOUN_NT'artwork' {refined} {refers: infs'artwork'} {creation: << kind=artwork(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'before someone resolving a dvd when the person asked is not ' {unit: 4}
    -            RULE_NT'carry out someone resolving a dvd' {unit: 4}
    -            RULE_NT'report someone resolving a dvd' {unit: 4}
    -            RULE_NT'instead of someone resolving a dvd when the person asked car' {unit: 4}
    -            RULE_NT'before listing contents' {unit: 4}
    -            RULE_NT'before grouping together dvds' {unit: 4}
    +            IMPERATIVE_NT'before someone resolving a dvd when the person asked is not ' {unit: 4}
    +            IMPERATIVE_NT'carry out someone resolving a dvd' {unit: 4}
    +            IMPERATIVE_NT'report someone resolving a dvd' {unit: 4}
    +            IMPERATIVE_NT'instead of someone resolving a dvd when the person asked car' {unit: 4}
    +            IMPERATIVE_NT'before listing contents' {unit: 4}
    +            IMPERATIVE_NT'before grouping together dvds' {unit: 4}
                 SENTENCE_NT'approaching is an action applying to one thing' {unit: 4} {classified}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action}
                     UNPARSED_NOUN_NT'approaching'
                     UNPARSED_NOUN_NT'applying to one thing'
    -            RULE_NT'carry out someone approaching' {unit: 4}
    +            IMPERATIVE_NT'carry out someone approaching' {unit: 4}
                 SENTENCE_NT'a coupon is a kind of thing' {unit: 4} {classified} {interpretation of subject: infs'dvd'}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     COMMON_NOUN_NT'coupon' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=coupon(x) >>} {refers: infs'coupon'} {eval: TEST_VALUE_NT} {created here}
                     KIND_NT'kind of thing' {refined} {refers: infs'thing'}
                         COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'carry out someone resolving a coupon' {unit: 4}
    +            IMPERATIVE_NT'carry out someone resolving a coupon' {unit: 4}
                 SENTENCE_NT'the block giving rule is not listed in any rulebook' {unit: 4} {classified}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: negative} {special meaning: rule-listed-in}
                     UNPARSED_NOUN_NT'the block giving rule'
                     UNPARSED_NOUN_NT'in any rulebook'
    -            RULE_NT'check giving something to someone ( this is the block player' {unit: 4}
    -            RULE_NT'before someone resolving a coupon when the person asked is n' {unit: 4}
    -            RULE_NT'after someone giving a coupon to vanessa' {unit: 4}
    +            IMPERATIVE_NT'check giving something to someone ( this is the block player' {unit: 4}
    +            IMPERATIVE_NT'before someone resolving a coupon when the person asked is n' {unit: 4}
    +            IMPERATIVE_NT'after someone giving a coupon to vanessa' {unit: 4}
                 SENTENCE_NT'infection color is a kind of value' {unit: 4} {classified} {interpretation of subject: infs'coupon'}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     COMMON_NOUN_NT'infection color' {refined} {creation: << kind=infection color(x) >>} {refers: infs'object'-k} {eval: TEST_VALUE_NT} {created here}
    @@ -659,7 +662,7 @@ that is, with the content of extensions excluded, and with the content of
                                                                                                                     AND_NT',' {refined}
                                                                                                                         PROPER_NOUN_NT'saffron silk' {refined} {refers: infs'saffron silk'} {eval: CONSTANT_NT'saffron silk' {kind: infection color} {instance: I86'saffron silk'[infection color]} {enumeration: 25}} {created here}
                                                                                                                         PROPER_NOUN_NT'cookie dough cream' {refined} {refers: infs'cookie dough cream'} {eval: CONSTANT_NT'cookie dough cream' {kind: infection color} {instance: I87'cookie dough cream'[infection color]} {enumeration: 26}} {created here}
    -            RULE_NT'to say list of flavors' {unit: 4}
    +            IMPERATIVE_NT'to say list of flavors' {unit: 4}
                 SENTENCE_NT'understand "ask vanessa for [flavored ice cream]" as buying ' {unit: 4} {classified}
                     VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as}
                     UNPARSED_NOUN_NT'"ask vanessa for [flavored ice cream]"'
    @@ -672,8 +675,8 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action}
                     UNPARSED_NOUN_NT'buying the flavor'
                     UNPARSED_NOUN_NT'applying to one infection color'
    -            RULE_NT'check buying the flavor' {unit: 4}
    -            RULE_NT'carry out buying the flavor' {unit: 4}
    +            IMPERATIVE_NT'check buying the flavor' {unit: 4}
    +            IMPERATIVE_NT'carry out buying the flavor' {unit: 4}
                 SENTENCE_NT'understand "ice cream" or "cream" or "ice" or "sherbet" or "' {unit: 4} {classified}
                     VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as}
                     UNPARSED_NOUN_NT'"ice cream" or "cream" or "ice" or "sherbet" or "sorbet"'
    @@ -707,12 +710,12 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as}
                     UNPARSED_NOUN_NT'the infection color property'
                     UNPARSED_NOUN_NT'referring to an ice cream cone'
    -            RULE_NT'carry out someone resolving an ice cream cone' {unit: 4}
    -            RULE_NT'instead of someone eating a fresh ice cream cone' {unit: 4}
    -            RULE_NT'report someone eating an ice cream cone' {unit: 4}
    -            RULE_NT'before printing the name of an ice cream cone' {unit: 4}
    +            IMPERATIVE_NT'carry out someone resolving an ice cream cone' {unit: 4}
    +            IMPERATIVE_NT'instead of someone eating a fresh ice cream cone' {unit: 4}
    +            IMPERATIVE_NT'report someone eating an ice cream cone' {unit: 4}
    +            IMPERATIVE_NT'before printing the name of an ice cream cone' {unit: 4}
             HEADING_NT'section 2 - infection rules' {heading 5} {under: H5'section 2 - infection rules'} {unit: 4}
    -            RULE_NT'this is the infection rule' {unit: 4}
    +            IMPERATIVE_NT'this is the infection rule' {unit: 4}
                 SENTENCE_NT'a person can be infected or clean' {unit: 4} {classified}
                     VERB_NT'can be' {verb 'be able to be' s/p 3p act IS_TENSE +ve} {special meaning: can-be}
                     COMMON_NOUN_NT'a person' {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT}
    @@ -725,11 +728,11 @@ that is, with the content of extensions excluded, and with the content of
                     COMMON_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT}
                     ALLOWED_NT'has' {refined}
                         UNPARSED_NOUN_NT'infection color' {indefinite 'an' n/m/f nom/acc s} {refined}
    -            RULE_NT'every turn' {unit: 4}
    -            RULE_NT'definition' {unit: 4}
    -            RULE_NT'definition' {unit: 4}
    -            RULE_NT'when play begins' {unit: 4}
    -            RULE_NT'every turn' {unit: 4}
    +            IMPERATIVE_NT'every turn' {unit: 4}
    +            IMPERATIVE_NT'definition' {unit: 4}
    +            IMPERATIVE_NT'definition' {unit: 4}
    +            IMPERATIVE_NT'when play begins' {unit: 4}
    +            IMPERATIVE_NT'every turn' {unit: 4}
                 SENTENCE_NT'understand "sneeze on [something]" as sneezing on' {unit: 4} {classified}
                     VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as}
                     UNPARSED_NOUN_NT'"sneeze on [something]"'
    @@ -738,11 +741,11 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action}
                     UNPARSED_NOUN_NT'sneezing on'
                     UNPARSED_NOUN_NT'applying to one thing'
    -            RULE_NT'check sneezing on' {unit: 4}
    -            RULE_NT'carry out sneezing on' {unit: 4}
    -            RULE_NT'carry out someone sneezing on' {unit: 4}
    -            RULE_NT'report sneezing on' {unit: 4}
    -            RULE_NT'report someone sneezing on' {unit: 4}
    +            IMPERATIVE_NT'check sneezing on' {unit: 4}
    +            IMPERATIVE_NT'carry out sneezing on' {unit: 4}
    +            IMPERATIVE_NT'carry out someone sneezing on' {unit: 4}
    +            IMPERATIVE_NT'report sneezing on' {unit: 4}
    +            IMPERATIVE_NT'report someone sneezing on' {unit: 4}
                 SENTENCE_NT'understand "inject [someone] with [something]" as injecting ' {unit: 4} {classified}
                     VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as}
                     UNPARSED_NOUN_NT'"inject [someone] with [something]"'
    @@ -763,10 +766,10 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action}
                     UNPARSED_NOUN_NT'injecting it with'
                     UNPARSED_NOUN_NT'applying to two things'
    -            RULE_NT'check injecting it with' {unit: 4}
    -            RULE_NT'carry out injecting it with' {unit: 4}
    -            RULE_NT'after injecting the player with something' {unit: 4}
    -            RULE_NT'report injecting it with' {unit: 4}
    +            IMPERATIVE_NT'check injecting it with' {unit: 4}
    +            IMPERATIVE_NT'carry out injecting it with' {unit: 4}
    +            IMPERATIVE_NT'after injecting the player with something' {unit: 4}
    +            IMPERATIVE_NT'report injecting it with' {unit: 4}
             HEADING_NT'section 3 - geography' {heading 5} {under: H5'section 3 - geography'} {unit: 4}
                 INCLUSION_NT'include locksmith by emily short' {unit: 4}
                     HEADING_NT'version 12 of locksmith by emily short begins here' {heading 0} {under: H0'version 12 of locksmith by emily short begins here'} {includes: Locksmith by Emily Short v12 } {unit: 4}
    @@ -791,9 +794,9 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action}
                     UNPARSED_NOUN_NT'going toward'
                     UNPARSED_NOUN_NT'applying to one thing'
    -            RULE_NT'check going toward' {unit: 4}
    -            RULE_NT'carry out going toward' {unit: 4}
    -            RULE_NT'instead of waiting when the destination of the player is not' {unit: 4}
    +            IMPERATIVE_NT'check going toward' {unit: 4}
    +            IMPERATIVE_NT'carry out going toward' {unit: 4}
    +            IMPERATIVE_NT'instead of waiting when the destination of the player is not' {unit: 4}
                 SENTENCE_NT'understand "stop" or "cease" as stopping' {unit: 4} {classified}
                     VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as}
                     UNPARSED_NOUN_NT'"stop" or "cease"'
    @@ -802,11 +805,11 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action}
                     UNPARSED_NOUN_NT'stopping'
                     UNPARSED_NOUN_NT'applying to nothing'
    -            RULE_NT'carry out stopping' {unit: 4}
    -            RULE_NT'report stopping' {unit: 4}
    -            RULE_NT'after going to an air-conditioned room' {unit: 4}
    -            RULE_NT'after going from an air-conditioned room' {unit: 4}
    -            RULE_NT'instead of listening to an air-conditioned room' {unit: 4}
    +            IMPERATIVE_NT'carry out stopping' {unit: 4}
    +            IMPERATIVE_NT'report stopping' {unit: 4}
    +            IMPERATIVE_NT'after going to an air-conditioned room' {unit: 4}
    +            IMPERATIVE_NT'after going from an air-conditioned room' {unit: 4}
    +            IMPERATIVE_NT'instead of listening to an air-conditioned room' {unit: 4}
                 SENTENCE_NT'the alfred cralle pool hall is a room' {unit: 4} {classified} {interpretation of subject: infs'person'}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     PROPER_NOUN_NT'alfred cralle pool hall' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'alfred cralle pool hall'} {eval: CONSTANT_NT'alfred cralle pool hall' {kind: object} {instance: I88'alfred cralle pool hall'} {enumeration: 0}} {created here}
    @@ -848,7 +851,7 @@ that is, with the content of extensions excluded, and with the content of
                         PROPER_NOUN_NT'felt door' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'felt door'} {eval: CONSTANT_NT'felt door' {kind: door} {instance: I90'felt door'} {enumeration: 0}}
                         PROPER_NOUN_NT'description' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'description'=text}}
                     PROPER_NOUN_NT'"It has a prominent lock, designed for an old-fashioned key.' {refined} {eval: CONSTANT_NT'"It has a prominent lock, designed for an old-fashioned key.' {kind: text}}
    -            RULE_NT'after locking a door with something in the presence of an ot' {unit: 4}
    +            IMPERATIVE_NT'after locking a door with something in the presence of an ot' {unit: 4}
                 SENTENCE_NT'nancy johnson memorial square is west of the felt door' {unit: 4} {classified} {interpretation of subject: infs'key to the city'}
                     VERB_NT'is west of' {verb 'be' 3p s act IS_TENSE +ve} {prep1: west of}
                     PROPER_NOUN_NT'nancy johnson memorial square' {refined} {refers: infs'nancy johnson memorial square'} {eval: CONSTANT_NT'nancy johnson memorial square' {kind: object} {instance: I92'nancy johnson memorial square'} {enumeration: 0}} {created here}
    @@ -910,8 +913,8 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     PROPER_NOUN_NT'slot' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'slot'} {eval: CONSTANT_NT'slot' {kind: object} {instance: I97'slot'} {enumeration: 0}}
                     COMMON_NOUN_NT'container' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'container'} {creation: << kind=container(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'carry out inserting something into the slot' {unit: 4}
    -            RULE_NT'report inserting something into the slot' {unit: 4}
    +            IMPERATIVE_NT'carry out inserting something into the slot' {unit: 4}
    +            IMPERATIVE_NT'report inserting something into the slot' {unit: 4}
                 SENTENCE_NT'hamwi street is northeast of an iron gate' {unit: 4} {classified} {interpretation of subject: infs'slot'}
                     VERB_NT'is northeast of' {verb 'be' 3p s act IS_TENSE +ve} {prep1: northeast of}
                     PROPER_NOUN_NT'hamwi street' {refined} {refers: infs'hamwi street'} {eval: CONSTANT_NT'hamwi street' {kind: object} {instance: I98'hamwi street'} {enumeration: 0}} {created here}
    @@ -935,7 +938,7 @@ that is, with the content of extensions excluded, and with the content of
                     AND_NT'and' {refined}
                         ADJECTIVE_NT'lockable' {refined} {predicate: lockable} {creation: << lockable(x) ^ lockable(x) >>}
                         ADJECTIVE_NT'unlocked' {refined} {predicate: unlocked} {creation: << unlocked(x) ^ unlocked(x) >>}
    -            RULE_NT'before printing the name of the iron gate while not opening ' {unit: 4}
    +            IMPERATIVE_NT'before printing the name of the iron gate while not opening ' {unit: 4}
                 SENTENCE_NT'cold comfort ice cream is north of a metal door' {unit: 4} {classified} {interpretation of subject: infs'iron gate'}
                     VERB_NT'is north of' {verb 'be' 3p s act IS_TENSE +ve} {prep1: north of}
                     PROPER_NOUN_NT'cold comfort ice cream' {refined} {refers: infs'cold comfort ice cream'} {eval: CONSTANT_NT'cold comfort ice cream' {kind: object} {instance: I100'cold comfort ice cream'} {enumeration: 0}} {created here}
    @@ -1041,8 +1044,8 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as}
                     UNPARSED_NOUN_NT'"glass"'
                     UNPARSED_NOUN_NT'the box'
    -            RULE_NT'instead of attacking the closed emergency box' {unit: 4}
    -            RULE_NT'instead of attacking the open emergency box' {unit: 4}
    +            IMPERATIVE_NT'instead of attacking the closed emergency box' {unit: 4}
    +            IMPERATIVE_NT'instead of attacking the open emergency box' {unit: 4}
                 SENTENCE_NT'the syringe is in the emergency box' {unit: 4} {classified} {interpretation of subject: infs'emergency box'}
                     VERB_NT'is in' {verb 'be' 3p s act IS_TENSE +ve} {prep1: in}
                     PROPER_NOUN_NT'syringe' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'syringe'} {eval: CONSTANT_NT'syringe' {kind: object} {instance: I109'syringe'} {enumeration: 0}} {created here}
    @@ -1145,9 +1148,9 @@ that is, with the content of extensions excluded, and with the content of
                 SENTENCE_NT'use full-length room descriptions' {unit: 4} {classified}
                     VERB_NT'use' {verb 'use' 3p p act IS_TENSE +ve} {special meaning: use}
                     UNPARSED_NOUN_NT'full-length room descriptions'
    -            RULE_NT'after looking in an outdoors room' {unit: 4}
    -            RULE_NT'definition' {unit: 4}
    -            RULE_NT'before exiting when the player is in an indoors room' {unit: 4}
    +            IMPERATIVE_NT'after looking in an outdoors room' {unit: 4}
    +            IMPERATIVE_NT'definition' {unit: 4}
    +            IMPERATIVE_NT'before exiting when the player is in an indoors room' {unit: 4}
                 SENTENCE_NT'blank is a room' {unit: 4} {classified} {interpretation of subject: infs'key to the city'}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     PROPER_NOUN_NT'blank' {refined} {refers: infs'blank'} {eval: CONSTANT_NT'blank' {kind: object} {instance: I113'blank'} {enumeration: 0}} {created here}
    @@ -1373,15 +1376,15 @@ that is, with the content of extensions excluded, and with the content of
                     PROPER_NOUN_NT'ned' {refined} {refers: infs'ned'} {eval: CONSTANT_NT'ned' {kind: man} {instance: I166'ned'} {enumeration: 0}}
                     RELATIONSHIP_NT'owns' {meaning: ownership-r} {refined}
                         PROPER_NOUN_NT'movie rental' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'movie rental store'} {eval: CONSTANT_NT'movie rental store' {kind: object} {instance: I104'movie rental store'} {enumeration: 0}}
    -            RULE_NT'after printing the name of someone ( called target ) while l' {unit: 4}
    +            IMPERATIVE_NT'after printing the name of someone ( called target ) while l' {unit: 4}
                 SENTENCE_NT'the description of a person is usually "[The noun] [if the n' {unit: 4} {classified} {interpretation of subject: infs'ned'}
                     VERB_NT'is usually' {certainty:likely} {verb 'be' 3p s act IS_TENSE +ve}
                     X_OF_Y_NT'description of a person' {definite 'the' n/m/f s/p nom/acc} {refined}
                         COMMON_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT}
                         PROPER_NOUN_NT'description' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'description'=text}}
                     PROPER_NOUN_NT'"[The noun] [if the noun is clean]looks healthy[otherwise]is' {refined} {eval: CONSTANT_NT'"[The noun] [if the noun is clean]looks healthy[otherwise]is' {kind: text}}
    -            RULE_NT'after examining another person who is carrying something' {unit: 4}
    -            RULE_NT'when play begins' {unit: 4}
    +            IMPERATIVE_NT'after examining another person who is carrying something' {unit: 4}
    +            IMPERATIVE_NT'when play begins' {unit: 4}
             HEADING_NT'section 5 - conversation' {heading 5} {under: H5'section 5 - conversation'} {unit: 4}
                 SENTENCE_NT'a person has a table name called conversation' {unit: 4} {classified}
                     VERB_NT'has' {verb 'have' 3p s act IS_TENSE +ve}
    @@ -1390,8 +1393,8 @@ that is, with the content of extensions excluded, and with the content of
                         PROPERTYCALLED_NT'called'
                             UNPARSED_NOUN_NT'table name' {indefinite 'a' n/m/f nom/acc s}
                             UNPARSED_NOUN_NT'conversation'
    -            RULE_NT'instead of asking someone about something' {unit: 4}
    -            RULE_NT'instead of telling someone about something' {unit: 4}
    +            IMPERATIVE_NT'instead of asking someone about something' {unit: 4}
    +            IMPERATIVE_NT'instead of telling someone about something' {unit: 4}
                 SENTENCE_NT'understand "recap" or "recall" or "review" as recalling conv' {unit: 4} {classified}
                     VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as}
                     UNPARSED_NOUN_NT'"recap" or "recall" or "review"'
    @@ -1400,7 +1403,7 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action}
                     UNPARSED_NOUN_NT'recalling conversations'
                     UNPARSED_NOUN_NT'applying to nothing'
    -            RULE_NT'carry out recalling conversations' {unit: 4}
    +            IMPERATIVE_NT'carry out recalling conversations' {unit: 4}
                 SENTENCE_NT'the conversation of a person is usually table of general chi' {unit: 4} {classified} {interpretation of subject: infs'person'}
                     VERB_NT'is usually' {certainty:likely} {verb 'be' 3p s act IS_TENSE +ve}
                     X_OF_Y_NT'conversation of a person' {definite 'the' n/m/f s/p nom/acc} {refined}
    @@ -1415,7 +1418,7 @@ that is, with the content of extensions excluded, and with the content of
                         PROPER_NOUN_NT'conversation' {refined} {eval: CONSTANT_NT {kind: table names valued property} {property: 'conversation'=table name}}
                     PROPER_NOUN_NT'table of vanessa chatter' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'table of vanessa chatter' {kind: table name} {table: table_data}{meaning: {table of vanessa chatter = TABLE_MC}}}
                 TABLE_NT'table of vanessa chatter topic reply summary turn stamp char' {unit: 4}
    -            RULE_NT'after reading a command' {unit: 4}
    +            IMPERATIVE_NT'after reading a command' {unit: 4}
             HEADING_NT'section 6 - movement description' {heading 5} {under: H5'section 6 - movement description'} {unit: 4}
                 SENTENCE_NT'a person has some text called walk style' {unit: 4} {classified}
                     VERB_NT'has' {verb 'have' 3p s act IS_TENSE +ve}
    @@ -1462,8 +1465,8 @@ that is, with the content of extensions excluded, and with the content of
                     PROPER_NOUN_NT'"sashay"' {refined} {eval: CONSTANT_NT'"sashay"' {kind: text}}
                 TABLE_NT'table of visible exits character second third heading chosen' {unit: 4}
                 TABLE_NT'table of visible entrances character second third heading ch' {unit: 4}
    -            RULE_NT'to clear ( current table - a table name )' {unit: 4}
    -            RULE_NT'to tidy departures of ( current table - a table name )' {unit: 4}
    +            IMPERATIVE_NT'to clear ( current table - a table name )' {unit: 4}
    +            IMPERATIVE_NT'to tidy departures of ( current table - a table name )' {unit: 4}
                 SENTENCE_NT'a door has a person called last opener' {unit: 4} {classified} {interpretation of subject: infs'person'}
                     VERB_NT'has' {verb 'have' 3p s act IS_TENSE +ve}
                     COMMON_NOUN_NT'door' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'door'} {creation: << kind=door(x) >>} {eval: TEST_VALUE_NT}
    @@ -1471,21 +1474,21 @@ that is, with the content of extensions excluded, and with the content of
                         PROPERTYCALLED_NT'called'
                             UNPARSED_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s}
                             UNPARSED_NOUN_NT'last opener'
    -            RULE_NT'report someone opening a door' {unit: 4}
    -            RULE_NT'report someone going through a door ( called route )' {unit: 4}
    +            IMPERATIVE_NT'report someone opening a door' {unit: 4}
    +            IMPERATIVE_NT'report someone going through a door ( called route )' {unit: 4}
                 SENTENCE_NT'the last thing named is a thing that varies' {unit: 4} {classified} {interpretation of subject: infs'door'}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     PROPER_NOUN_NT'last thing named' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'last thing named' {nonlocal: 'last thing named'(var)thing}} {created here}
                     COMMON_NOUN_NT'thing that varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=things variable-pointer(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'before printing the name of something ( called target ) whic' {unit: 4}
    -            RULE_NT'report someone going a direction' {unit: 4}
    -            RULE_NT'this is the movement reporting rule' {unit: 4}
    -            RULE_NT'to generate descriptions from ( current table - a table name' {unit: 4}
    +            IMPERATIVE_NT'before printing the name of something ( called target ) whic' {unit: 4}
    +            IMPERATIVE_NT'report someone going a direction' {unit: 4}
    +            IMPERATIVE_NT'this is the movement reporting rule' {unit: 4}
    +            IMPERATIVE_NT'to generate descriptions from ( current table - a table name' {unit: 4}
                 SENTENCE_NT'the last person named is a person that varies' {unit: 4} {classified} {interpretation of subject: infs'door'}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     PROPER_NOUN_NT'last person named' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'last person named' {nonlocal: 'last person named'(var)person}} {created here}
                     COMMON_NOUN_NT'person that varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=people variable-pointer(x) >>} {eval: TEST_VALUE_NT}
    -            RULE_NT'before printing the name of a person ( called target )' {unit: 4}
    +            IMPERATIVE_NT'before printing the name of a person ( called target )' {unit: 4}
                 SENTENCE_NT'group size is a number that varies' {unit: 4} {classified} {interpretation of subject: infs'door'}
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     PROPER_NOUN_NT'group size' {refined} {eval: NONLOCAL_VARIABLE_NT'group size' {nonlocal: 'group size'(var)number}} {created here}
    @@ -1494,19 +1497,19 @@ that is, with the content of extensions excluded, and with the content of
                     VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve}
                     PROPER_NOUN_NT'group size' {refined} {eval: NONLOCAL_VARIABLE_NT'group size' {nonlocal: 'group size'(var)number}{meaning: {group size = VARIABLE_MC}}}
                     PROPER_NOUN_NT'1' {refined} {eval: CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1}}
    -            RULE_NT'to clear marked people' {unit: 4}
    -            RULE_NT'before listing nondescript items' {unit: 4}
    -            RULE_NT'to describe patients' {unit: 4}
    -            RULE_NT'to say ( named character - a man ) as pronoun' {unit: 4}
    -            RULE_NT'to say ( named character - a woman ) as pronoun' {unit: 4}
    -            RULE_NT'to say looks as though dipped in for ( index - a number )' {unit: 4}
    +            IMPERATIVE_NT'to clear marked people' {unit: 4}
    +            IMPERATIVE_NT'before listing nondescript items' {unit: 4}
    +            IMPERATIVE_NT'to describe patients' {unit: 4}
    +            IMPERATIVE_NT'to say ( named character - a man ) as pronoun' {unit: 4}
    +            IMPERATIVE_NT'to say ( named character - a woman ) as pronoun' {unit: 4}
    +            IMPERATIVE_NT'to say looks as though dipped in for ( index - a number )' {unit: 4}
                 TABLE_NT'table of dipping phrases dipping "looks as though dipped in"' {unit: 4}
                 SENTENCE_NT'a door is usually scenery' {unit: 4} {classified} {interpretation of subject: infs'door'}
                     VERB_NT'is usually' {certainty:likely} {verb 'be' 3p s act IS_TENSE +ve}
                     COMMON_NOUN_NT'door' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'door'} {creation: << kind=door(x) >>} {eval: TEST_VALUE_NT}
                     ADJECTIVE_NT'scenery' {refined} {predicate: scenery} {creation: << scenery(x) ^ scenery(x) >>}
    -            RULE_NT'to make delimiter ( index - a number ) of ( count - a number' {unit: 4}
    -            RULE_NT'to say optional comma' {unit: 4}
    +            IMPERATIVE_NT'to make delimiter ( index - a number ) of ( count - a number' {unit: 4}
    +            IMPERATIVE_NT'to say optional comma' {unit: 4}
                 SENTENCE_NT'test me with go to cold comfort / z / z / z / z / ask vaness' {unit: 4} {classified}
                     VERB_NT'test' {verb 'test' 3p p act IS_TENSE +ve} {prep2: with} {special meaning: test-with}
                     UNPARSED_NOUN_NT'me'
    @@ -1584,7 +1587,7 @@ that is, with the content of extensions excluded, and with the content of
     		
     			
     		
     	

    diff --git a/docs/inform7/preform-diagnostics.txt b/docs/inform7/preform-diagnostics.txt index 4b393e80b..af3c0c96e 100644 --- a/docs/inform7/preform-diagnostics.txt +++ b/docs/inform7/preform-diagnostics.txt @@ -1,10 +1,10 @@ - internal nti 18 constraint (none) extremes [1, 1] + internal nti 24 constraint (none) extremes [1, 1] - internal hits 1152/6782 nti 19 constraint (none) extremes [0, 0] + internal hits 1145/6214 nti 25 constraint (none) extremes [0, 0] - internal hits 3873/7958 nti 20 constraint (none) extremes [0, 0] + internal hits 3873/7958 nti 26 constraint (none) extremes [0, 0] - hits 746/1492 nti 21 constraint (none) extremes [1, infinity) + hits 746/1492 nti 27 constraint (none) extremes [1, infinity) English: {......} (hits 746/746) (matched long text) constraint (none) extremes [1, infinity) @@ -14,24 +14,24 @@ {......} , {......} (hits 6/13) (matched long text) constraint DS = {15} extremes [3, infinity) - internal nti 22 constraint (none) extremes [1, 1] + internal nti 28 constraint (none) extremes [1, 1] - internal hits 2894/22582 nti 23 constraint (none) extremes [1, 1] + internal hits 1933/20050 nti 29 constraint (none) extremes [1, 1] - internal nti 24 constraint (none) extremes [1, 1] + internal nti 30 constraint (none) extremes [1, 1] - internal hits 25/50 nti 25 constraint (none) extremes [1, 1] + internal hits 25/50 nti 31 constraint (none) extremes [1, 1] - internal nti 26 constraint (none) extremes [1, 1] + internal nti 6 constraint (none) extremes [1, 1] - internal hits 2/12958 nti 27 constraint (none) extremes [0, 0] + internal hits 2/12958 nti 7 constraint (none) extremes [0, 0] hits 0/18 nti 16 constraint DS = {16} extremes [3, infinity) English: {......} , _or {......} - (hits 0/7) constraint DS = {16} extremes [4, infinity) + (hits 0/5) constraint DS = {16} extremes [4, infinity) {......} _or {......} - (hits 0/7) constraint DS = {16} extremes [3, infinity) + (hits 0/5) constraint DS = {16} extremes [3, infinity) nti 17 constraint DS = {17} extremes [3, infinity) English: @@ -73,11 +73,11 @@ {...} than constraint DS = {22} extremes [2, infinity) - internal nti 28 constraint (none) extremes [1, infinity) + internal nti 8 constraint (none) extremes [1, infinity) - internal nti 29 constraint (none) extremes [1, infinity) + internal nti 9 constraint (none) extremes [1, infinity) - nti 30 constraint CW = {23, 24, 25} extremes [2, 2] + nti 10 constraint CW = {23, 24, 25} extremes [2, 2] English: constraint CS = {23} extremes [2, 2] @@ -339,7 +339,7 @@ yw* an constraint CS = {25} extremes [2, 2] - nti 31 constraint DW = {6, 7, 26, 27, 28, 29, 30, 31} extremes [3, infinity) + nti 11 constraint DW = {6, 7, 26, 27, 28, 29, 30, 31} extremes [3, infinity) English: {...} constraint DS = {26} extremes [3, infinity) @@ -1499,7 +1499,7 @@ shouldn't shouldn't constraint CS = {25} extremes [2, 2] - nti 6 constraint DW = {12, 13, 14, 15, 16} extremes [3, infinity) + nti 12 constraint DW = {12, 13, 14, 15, 16} extremes [3, infinity) English: {...} constraint DS = {12} extremes [3, infinity) @@ -2025,7 +2025,7 @@ * 0ing constraint CS = {16} extremes [2, 2] - nti 7 constraint DW = {17, 18, 19, 20, 21, 22} extremes [2, infinity) + nti 13 constraint DW = {17, 18, 19, 20, 21, 22} extremes [2, infinity) English: constraint CS = {17} extremes [2, 2] @@ -2337,7 +2337,7 @@ write written constraint CS = {17} extremes [2, 2] - nti 8 constraint DW = {6, 7, 26, 27, 28, 29, 30, 31} extremes [2, infinity) + nti 14 constraint DW = {6, 7, 26, 27, 28, 29, 30, 31} extremes [2, infinity) English: constraint CS = {30} extremes [2, 2] @@ -2353,7 +2353,7 @@ do does constraint CS = {30} extremes [2, 2] - nti 9 constraint DW = {18, 19, 20, 21, 22} extremes [3, infinity) + nti 15 constraint DW = {18, 19, 20, 21, 22} extremes [3, infinity) English: {...} constraint DS = {18} extremes [3, infinity) @@ -3595,7 +3595,7 @@ * 0ed constraint CS = {22} extremes [2, 2] - nti 10 constraint DW = {9, 10, 11} extremes [2, infinity) + nti 16 constraint DW = {9, 10, 11} extremes [2, infinity) English: constraint CS = {9} extremes [2, 2] @@ -4642,7 +4642,7 @@ * 1 constraint CS = {21} extremes [2, 2] - nti 11 constraint CS = {22} extremes [1, 1] + nti 17 constraint CS = {22} extremes [1, 1] English: constraint CS = {22} extremes [1, 1] @@ -4728,45 +4728,45 @@ twelfth constraint CS = {27} extremes [1, 1] - internal hits 200/24854 nti r0 constraint CS = {r0} extremes [1, 1] + internal hits 198/21968 nti r0 constraint CS = {r0} extremes [1, 1] internal nti r1 constraint CS = {r1} extremes [1, 1] - internal hits 36/72 nti 12 constraint (none) extremes [1, 1] + internal hits 36/72 nti 18 constraint (none) extremes [1, 1] - internal hits 0/258 nti 17 constraint (none) extremes [1, infinity) + internal hits 0/258 nti 23 constraint (none) extremes [1, infinity) - hits 36149/72298 nti 13 constraint (none) extremes [1, infinity) + hits 34190/68380 nti 19 constraint (none) extremes [1, infinity) English: {...} - (hits 7696/36149) (matched long text) constraint (none) extremes [2, infinity) + (hits 7079/34190) (matched long text) constraint (none) extremes [2, infinity) {...} - (hits 28453/28453) (matched long text) constraint (none) extremes [1, infinity) + (hits 27111/27111) (matched long text) constraint (none) extremes [1, infinity) - nti 14 constraint (none) extremes [1, infinity) + nti 20 constraint (none) extremes [1, infinity) English: {...} constraint (none) extremes [2, infinity) {...} constraint (none) extremes [1, infinity) - hits 81310/162620 nti 15 constraint (none) extremes [1, infinity) + hits 76560/153120 nti 21 constraint (none) extremes [1, infinity) English:
    {...} - (hits 15777/46498) (matched long text) constraint (none) extremes [2, infinity) + (hits 15802/46215) (matched long text) constraint (none) extremes [2, infinity) {...} - (hits 65533/65533) (matched long text) constraint (none) extremes [1, infinity) + (hits 60758/60758) (matched long text) constraint (none) extremes [1, infinity) - nti 16 constraint (none) extremes [2, infinity) + nti 22 constraint (none) extremes [2, infinity) English:
    {...} constraint (none) extremes [2, infinity) -
    internal hits 16200/96518 nti r2 constraint (none) extremes [1, 1] +
    internal hits 16248/95970 nti r2 constraint (none) extremes [1, 1] - internal hits 21513/254408 nti r2 constraint (none) extremes [1, 1] + internal hits 19358/219802 nti r2 constraint (none) extremes [1, 1] - internal hits 2243/40622 nti r2 constraint (none) extremes [1, 1] + internal hits 2043/39656 nti r2 constraint (none) extremes [1, 1] nti r2 constraint CS = {r2} extremes [6, 6] English: @@ -4827,40 +4827,40 @@ other than constraint CS = {28} extremes [2, 2] - hits 16/21706 nti 29 constraint DS = {29} extremes [2, infinity) + hits 16/21170 nti 29 constraint DS = {29} extremes [2, infinity) English: not {...} - (hits 16/5426) (matched long text) constraint DS = {29} extremes [2, infinity) + (hits 16/6280) (matched long text) constraint DS = {29} extremes [2, infinity) hits 79/158 nti 30 constraint (none) extremes [1, infinity) English: of the {...} - (hits 0/16) constraint DS = {30} extremes [3, infinity) + (hits 0/8) constraint DS = {30} extremes [3, infinity) of {...} - (hits 0/24) constraint DS = {30} extremes [2, infinity) + (hits 0/12) constraint DS = {30} extremes [2, infinity) {...} (hits 79/79) (matched: 'dvd carried by the person asked') constraint (none) extremes [1, infinity) - hits 0/21422 nti 31 constraint DS = {31} extremes [2, infinity) + hits 0/20886 nti 31 constraint DS = {31} extremes [2, infinity) English: no one {***} - (hits 0/5390) constraint DS = {31} extremes [2, infinity) + (hits 0/5244) constraint DS = {31} extremes [2, infinity) - internal hits 92/1190 nti 17 constraint (none) extremes [1, 1] + internal hits 92/1206 nti 23 constraint (none) extremes [1, 1] - internal hits 7/56 nti 18 constraint (none) extremes [1, 1] + internal hits 7/56 nti 24 constraint (none) extremes [1, 1] - internal hits 490/20500 nti 19 constraint (none) extremes [1, 1] + internal hits 239/18292 nti 25 constraint (none) extremes [1, 1] - internal nti 20 constraint (none) extremes [1, 1] + internal nti 26 constraint (none) extremes [1, 1] - internal nti 21 constraint (none) extremes [1, 1] + internal nti 27 constraint (none) extremes [1, 1] - internal hits 0/444 nti 22 constraint (none) extremes [1, 1] + internal hits 0/444 nti 28 constraint (none) extremes [1, 1] - internal hits 0/172 nti 23 constraint (none) extremes [1, 1] + internal hits 0/176 nti 29 constraint (none) extremes [1, 1] - internal hits 0/690 nti 24 constraint (none) extremes [1, 1] + internal hits 0/690 nti 30 constraint (none) extremes [1, 1] nti 6 constraint CS = {6} extremes [6, 6] English: @@ -4911,51 +4911,51 @@ here here here here here here constraint CS = {12} extremes [6, 6] - internal hits 3986/8900 nti 6 constraint FS = {6} extremes [1, infinity) + internal hits 4044/8936 nti 6 constraint FS = {6} extremes [1, infinity) internal hits 16/128 nti 7 constraint FS = {7} extremes [1, infinity) - internal hits 1/8616 nti 8 constraint FS = {8} extremes [1, infinity) + internal hits 1/6966 nti 8 constraint FS = {8} extremes [1, infinity) - internal hits 0/1480 nti 9 constraint FS = {9} extremes [1, infinity) + internal hits 0/1584 nti 9 constraint FS = {9} extremes [1, infinity) internal nti 10 constraint FS = {10} extremes [1, infinity) internal nti 11 constraint FS = {11} extremes [1, infinity) - internal hits 210/5162 nti 25 constraint (none) extremes [1, infinity) + internal hits 6/1516 nti 31 constraint (none) extremes [1, infinity) - internal hits 59/4030 nti 26 constraint (none) extremes [1, infinity) + internal hits 1/2334 nti 6 constraint (none) extremes [1, infinity) - internal hits 1/2 nti 27 constraint (none) extremes [1, infinity) + internal nti 7 constraint (none) extremes [1, infinity) - internal nti 28 constraint (none) extremes [1, infinity) + internal nti 8 constraint (none) extremes [1, infinity) - internal hits 58/118 nti 29 constraint (none) extremes [1, infinity) + internal hits 0/2 nti 9 constraint (none) extremes [1, infinity) internal nti 12 constraint DS = {12} extremes [1, infinity) - internal hits 635/17878 nti 13 constraint DS = {13} extremes [1, infinity) + internal hits 627/16490 nti 13 constraint DS = {13} extremes [1, infinity) - internal hits 258/8202 nti 14 constraint DS = {14} extremes [1, infinity) + internal hits 258/8416 nti 14 constraint DS = {14} extremes [1, infinity) - hits 67/4430 nti 13 constraint CS = {13} extremes [1, 1] + hits 67/4406 nti 13 constraint CS = {13} extremes [1, 1] English: always/certainly - (hits 10/1136) (matched: 'always') constraint CS = {13} extremes [1, 1] + (hits 10/1066) (matched: 'always') constraint CS = {13} extremes [1, 1] usually/normally - (hits 53/1126) (matched: 'usually') constraint CS = {13} extremes [1, 1] + (hits 53/1056) (matched: 'usually') constraint CS = {13} extremes [1, 1] rarely/seldom - (hits 0/1073) constraint CS = {13} extremes [1, 1] + (hits 0/1003) constraint CS = {13} extremes [1, 1] never - (hits 4/1073) (matched: 'never') constraint CS = {13} extremes [1, 1] + (hits 4/1003) (matched: 'never') constraint CS = {13} extremes [1, 1] initially - (hits 0/1069) constraint CS = {13} extremes [1, 1] + (hits 0/999) constraint CS = {13} extremes [1, 1] - hits 0/4304 nti 14 constraint DS = {14} extremes [1, infinity) + hits 0/4226 nti 14 constraint DS = {14} extremes [1, infinity) English: {***} once/twice/thrice/turn/turns/time/times - (hits 0/1589) constraint DS = {14} extremes [1, infinity) + (hits 0/1761) constraint DS = {14} extremes [1, infinity) nti 18 constraint DW = {15, 16, 17, 18} extremes [1, 9] English: @@ -4983,7 +4983,7 @@ constraint DW = {15, 16} extremes [1, 6] - nti 30 constraint DW = {15, 16} extremes [1, 6] + nti 10 constraint DW = {15, 16} extremes [1, 6] English: constraint DS = {15} extremes [1, 6] @@ -5010,7 +5010,7 @@ turn/turns constraint DS = {16} extremes [2, 3] - nti 31 constraint (none) extremes [1, 2] + nti 11 constraint (none) extremes [1, 2] English: constraint (none) extremes [2, 2] @@ -5019,24 +5019,24 @@ constraint CS = {r0} extremes [1, 1] - hits 3152/6304 nti 6 constraint (none) extremes [1, infinity) + hits 3152/6304 nti 12 constraint (none) extremes [1, infinity) English: {...} (hits 3152/3152) (matched long text) constraint (none) extremes [1, infinity) - hits 60/120 nti 7 constraint (none) extremes [0, infinity) + hits 60/120 nti 13 constraint (none) extremes [0, infinity) English: ^ (hits 0/60) constraint (none) extremes [0, infinity) (hits 60/60) (matched: 'fixed in place') constraint (none) extremes [1, infinity) - hits 33/109970 nti 19 constraint CS = {19} extremes [1, 1] + hits 33/109544 nti 19 constraint CS = {19} extremes [1, 1] English: there - (hits 33/317) (matched: 'there') constraint CS = {19} extremes [1, 1] + (hits 33/271) (matched: 'there') constraint CS = {19} extremes [1, 1] - hits 2081/4162 nti 8 constraint (none) extremes [1, infinity) + hits 2081/4162 nti 14 constraint (none) extremes [1, infinity) English: {...} (hits 99/2081) (matched: '"(considering the first sixteen objects only)[command clarification break]" ( a )') constraint (none) extremes [1, infinity) @@ -5047,30 +5047,30 @@ (hits 999/999) (matched long text) constraint (none) extremes [1, infinity) - hits 255/510 nti 9 constraint (none) extremes [0, infinity) + hits 255/510 nti 15 constraint (none) extremes [0, infinity) English: ^ (hits 0/255) constraint (none) extremes [0, infinity) (hits 255/255) (matched long text) constraint (none) extremes [1, infinity) - hits 279/558 nti 10 constraint (none) extremes [1, infinity) + hits 279/558 nti 16 constraint (none) extremes [1, infinity) English: {...} (hits 99/279) (matched long text) constraint (none) extremes [1, infinity) - (hits 99/135) (matched long text) constraint DS = {20} extremes [2, infinity) + (hits 99/151) (matched long text) constraint DS = {20} extremes [2, infinity) (hits 81/81) (matched long text) constraint (none) extremes [1, infinity) - hits 198/1204 nti 20 constraint DS = {20} extremes [2, infinity) + hits 198/1288 nti 20 constraint DS = {20} extremes [2, infinity) English: , _{and} - (hits 0/530) constraint DS = {20} extremes [3, infinity) + (hits 0/538) constraint DS = {20} extremes [3, infinity) _{,/and} - (hits 198/566) (matched long text) constraint DS = {20} extremes [2, infinity) + (hits 198/588) (matched long text) constraint DS = {20} extremes [2, infinity) - hits 103/206 nti 11 constraint (none) extremes [1, infinity) + hits 103/206 nti 17 constraint (none) extremes [1, infinity) English: {...} (hits 30/103) (matched: 'unmarked for listing') constraint (none) extremes [1, infinity) @@ -5086,7 +5086,7 @@ _{,/or} (hits 60/69) (matched: 'or unmarked for listing') constraint DS = {21} extremes [2, infinity) - hits 460/920 nti 12 constraint (none) extremes [1, infinity) + hits 460/920 nti 18 constraint (none) extremes [1, infinity) English: constraint CS = {19} extremes [1, 1] @@ -5095,66 +5095,66 @@ (hits 460/460) (matched long text) constraint (none) extremes [1, infinity) - hits 576/1152 nti 13 constraint (none) extremes [1, infinity) + hits 576/1152 nti 19 constraint (none) extremes [1, infinity) English: (hits 0/576) constraint (none) extremes [1, infinity) (hits 576/576) (matched long text) constraint (none) extremes [1, infinity) - hits 0/920 nti 14 constraint (none) extremes [1, infinity) + hits 0/920 nti 20 constraint (none) extremes [1, infinity) English: - (hits 0/1) constraint CS = {22} extremes [1, 2] + constraint CS = {22} extremes [1, 2] {***} (hits 0/453) constraint (none) extremes [1, infinity) - (hits 0/381) constraint DS = {14} extremes [2, infinity) + (hits 0/375) constraint DS = {14} extremes [2, infinity) - hits 0/1962 nti 15 constraint (none) extremes [1, infinity) + hits 0/1962 nti 21 constraint (none) extremes [1, infinity) English: - (hits 0/3) constraint CS = {22} extremes [1, 2] + constraint CS = {22} extremes [1, 2] (hits 0/981) constraint (none) extremes [1, infinity) - hits 61/898 nti 29 constraint CS = {29} extremes [1, 1] + hits 83/1116 nti 29 constraint CS = {29} extremes [1, 1] English: thing/something - (hits 61/61) (matched: 'thing') constraint CS = {29} extremes [1, 1] + (hits 83/85) (matched: 'thing') constraint CS = {29} extremes [1, 1] - internal hits 388/16686 nti 16 constraint (none) extremes [1, 1] + internal hits 475/23344 nti 22 constraint (none) extremes [1, 1] - hits 0/8 nti 22 constraint CS = {22} extremes [1, 2] + nti 22 constraint CS = {22} extremes [1, 2] English: worn - (hits 0/4) constraint CS = {22} extremes [1, 1] + constraint CS = {22} extremes [1, 1] carried - (hits 0/4) constraint CS = {22} extremes [1, 1] + constraint CS = {22} extremes [1, 1] initially carried constraint CS = {22} extremes [2, 2] - hits 0/2724 nti 28 constraint DS = {14} extremes [2, infinity) + hits 0/2712 nti 28 constraint DS = {14} extremes [2, infinity) English: _,/and {...} - (hits 0/561) constraint DS = {14, 28} extremes [3, infinity) + (hits 0/534) constraint DS = {14, 28} extremes [3, infinity) _,/and - (hits 0/674) constraint DS = {14, 28} extremes [2, infinity) + (hits 0/610) constraint DS = {14, 28} extremes [2, infinity) - (hits 0/940) constraint DS = {14} extremes [2, infinity) + (hits 0/927) constraint DS = {14} extremes [2, infinity) hits 1467/2934 nti 27 constraint (none) extremes [1, infinity) English: {...} (hits 174/1467) (matched long text) constraint (none) extremes [1, infinity) {called} - (hits 57/725) (matched long text) constraint DS = {27} extremes [1, infinity) + (hits 57/566) (matched long text) constraint DS = {27} extremes [1, infinity) - (hits 0/751) constraint DS = {24} extremes [2, infinity) + (hits 0/764) constraint DS = {24} extremes [2, infinity) - (hits 87/381) (matched long text) constraint DS = {25} extremes [1, infinity) + (hits 87/337) (matched long text) constraint DS = {25} extremes [1, infinity) - (hits 30/266) (matched: 'a kind of supporter that is portable') constraint DS = {26} extremes [1, infinity) + (hits 30/221) (matched: 'a kind of supporter that is portable') constraint DS = {26} extremes [1, infinity) (hits 4/349) (matched: 'it') constraint (none) extremes [1, 1] @@ -5162,7 +5162,7 @@ (hits 1115/1115) (matched long text) constraint (none) extremes [1, infinity) - hits 431/862 nti 17 constraint (none) extremes [0, infinity) + hits 431/862 nti 23 constraint (none) extremes [0, infinity) English: (hits 0/431) constraint (none) extremes [1, infinity) @@ -5171,18 +5171,18 @@ (hits 431/431) (matched long text) constraint (none) extremes [1, infinity) - hits 0/10898 nti 24 constraint DS = {24} extremes [2, infinity) + hits 0/10968 nti 24 constraint DS = {24} extremes [2, infinity) English: it with action {***} - (hits 0/3893) constraint DS = {24} extremes [3, infinity) + (hits 0/3907) constraint DS = {24} extremes [3, infinity) {with/having} (/) {***} - (hits 0/4092) constraint DS = {24} extremes [2, infinity) + (hits 0/4111) constraint DS = {24} extremes [2, infinity) {with/having} {...} ( ) - (hits 0/3503) constraint DS = {24} extremes [5, infinity) + (hits 0/3508) constraint DS = {24} extremes [5, infinity) {with/having} - (hits 0/4092) constraint DS = {24} extremes [2, infinity) + (hits 0/4111) constraint DS = {24} extremes [2, infinity) - nti 18 constraint (none) extremes [1, infinity) + nti 24 constraint (none) extremes [1, infinity) English: {...} constraint (none) extremes [1, infinity) @@ -5198,55 +5198,55 @@ _{,/and} constraint DS = {23} extremes [2, infinity) - nti 19 constraint (none) extremes [1, infinity) + nti 25 constraint (none) extremes [1, infinity) English: {...} constraint (none) extremes [1, infinity) - hits 174/2936 nti 25 constraint DS = {25} extremes [1, infinity) + hits 174/2742 nti 25 constraint DS = {25} extremes [1, infinity) English: , _{and} - (hits 8/855) (matched: ', and didn't understand addressee's last name error') constraint DS = {25} extremes [2, infinity) + (hits 8/818) (matched: ', and didn't understand addressee's last name error') constraint DS = {25} extremes [2, infinity) _{,/and} - (hits 166/906) (matched long text) constraint DS = {25} extremes [1, infinity) + (hits 166/827) (matched long text) constraint DS = {25} extremes [1, infinity) - hits 30/532 nti 20 constraint DS = {26} extremes [1, infinity) + hits 30/442 nti 26 constraint DS = {26} extremes [1, infinity) English: - (hits 30/266) (matched: 'a kind of supporter that is portable') constraint DS = {26} extremes [2, infinity) + (hits 30/217) (matched: 'a kind of supporter that is portable') constraint DS = {26} extremes [2, infinity) - (hits 0/236) constraint DS = {26} extremes [1, infinity) + (hits 0/191) constraint DS = {26} extremes [1, infinity) - hits 30/636 nti 26 constraint DS = {26} extremes [1, infinity) + hits 30/470 nti 26 constraint DS = {26} extremes [1, infinity) English: kind/kinds - (hits 4/38) (matched: 'kind') constraint CS = {26} extremes [1, 1] + (hits 4/8) (matched: 'kind') constraint CS = {26} extremes [1, 1] kind/kinds of - (hits 26/280) (matched: 'kind of supporter that is portable') constraint DS = {26} extremes [2, infinity) + (hits 26/227) (matched: 'kind of supporter that is portable') constraint DS = {26} extremes [2, infinity) - internal nti 21 constraint (none) extremes [1, infinity) + internal nti 27 constraint (none) extremes [1, infinity) - internal hits 1357/2714 nti 22 constraint (none) extremes [1, infinity) + internal hits 1357/2714 nti 28 constraint (none) extremes [1, infinity) - hits 0/2764 nti 23 constraint DS = {13} extremes [2, infinity) + hits 0/2764 nti 29 constraint DS = {13} extremes [2, infinity) English: {...} - (hits 0/1029) constraint DS = {13} extremes [2, infinity) + (hits 0/1024) constraint DS = {13} extremes [2, infinity) - hits 67/2764 nti 24 constraint DS = {13} extremes [2, infinity) + hits 67/2764 nti 30 constraint DS = {13} extremes [2, infinity) English: {...} - (hits 67/1186) (matched: 'usually table of general chitchat') constraint DS = {13} extremes [2, infinity) + (hits 67/1179) (matched: 'usually table of general chitchat') constraint DS = {13} extremes [2, infinity) - hits 667/25436 nti 30 constraint CS = {30} extremes [1, 1] + hits 691/24790 nti 30 constraint CS = {30} extremes [1, 1] English: which/who/that - (hits 667/6132) (matched: 'which') constraint CS = {30} extremes [1, 1] + (hits 691/5564) (matched: 'which') constraint CS = {30} extremes [1, 1] - hits 2/2742 nti 25 constraint DS = {30} extremes [2, infinity) + hits 2/2742 nti 31 constraint DS = {30} extremes [2, infinity) English: {...} - (hits 2/803) (matched: 'answering it that') constraint DS = {30} extremes [2, infinity) + (hits 2/820) (matched: 'answering it that') constraint DS = {30} extremes [2, infinity) nti 31 constraint DS = {31} extremes [3, infinity) English: @@ -5256,7 +5256,7 @@ hits 196/9062 nti 6 constraint DS = {6} extremes [2, infinity) English: of {...} - (hits 196/2364) (matched: 'of day -- documented at var_time --') constraint DS = {6} extremes [2, infinity) + (hits 196/2261) (matched: 'of day -- documented at var_time --') constraint DS = {6} extremes [2, infinity) hits 5/60 nti 7 constraint CS = {7} extremes [2, 2] English: @@ -5271,9 +5271,9 @@ grammatical case (hits 1/1) (matched: 'grammatical case') constraint CS = {7} extremes [2, 2] - internal hits 2474/40954 nti 26 constraint (none) extremes [0, 0] + internal hits 2474/39362 nti 6 constraint (none) extremes [0, 0] - internal hits 164/328 nti 27 constraint (none) extremes [1, infinity) + internal hits 164/328 nti 7 constraint (none) extremes [1, infinity) hits 24/68 nti 9 constraint DS = {9} extremes [3, infinity) English: @@ -5297,22 +5297,22 @@ (hits 5/5) (matched: 'value of kind k') constraint (none) extremes [1, infinity) - hits 5771/102256 nti r5 constraint (none) extremes [1, infinity) + hits 4746/94728 nti r5 constraint (none) extremes [1, infinity) English: ( ) - (hits 0/2032) constraint DS = {r5} & CW = {r2, r5} extremes [3, infinity) + (hits 0/2062) constraint DS = {r5} & CW = {r2, r5} extremes [3, infinity) ^ - (hits 1589/11033) (matched: 'k') constraint CW = {r2, r5} extremes [1, infinity) + (hits 599/10140) (matched: 'k') constraint CW = {r2, r5} extremes [1, infinity) - (hits 201/9444) (matched: 'sayable value of kind k') constraint CW = {r2, r5} extremes [1, infinity) + (hits 201/9541) (matched: 'sayable value of kind k') constraint CW = {r2, r5} extremes [1, infinity) - (hits 3626/9243) (matched: 'an ice cream cone') constraint CW = {r2, r5} extremes [1, infinity) + (hits 3585/9340) (matched: 'an ice cream cone') constraint CW = {r2, r5} extremes [1, infinity) - (hits 2/15787) (matched: 'object-based rulebook') constraint DS = {r5} extremes [2, infinity) + (hits 2/15784) (matched: 'object-based rulebook') constraint DS = {r5} extremes [2, infinity) - (hits 353/5615) (matched long text) constraint CW = {r2, r5} extremes [1, infinity) + (hits 359/5753) (matched long text) constraint CW = {r2, r5} extremes [1, infinity) - hits 40/338 nti 28 constraint (none) extremes [1, infinity) + hits 40/338 nti 8 constraint (none) extremes [1, infinity) English: (hits 32/55) (matched: 'an object') constraint (none) extremes [2, infinity) @@ -5326,38 +5326,38 @@ of kind (hits 81/315) (matched: 'sayable value of kind k') constraint DS = {r5} & CW = {r2, r5} extremes [4, infinity) - internal hits 3626/18486 nti r5 constraint CW = {r2, r5} extremes [1, infinity) + internal hits 3585/18680 nti r5 constraint CW = {r2, r5} extremes [1, infinity) - hits 2/31574 nti r5 constraint DS = {r5} extremes [2, infinity) + hits 2/31568 nti r5 constraint DS = {r5} extremes [2, infinity) English: indexed text - (hits 0/976) constraint CS = {r5} extremes [2, 2] + (hits 0/1014) constraint CS = {r5} extremes [2, 2] indexed texts - (hits 0/976) constraint CS = {r5} extremes [2, 2] + (hits 0/1014) constraint CS = {r5} extremes [2, 2] stored action - (hits 0/976) constraint CS = {r5} extremes [2, 2] + (hits 0/1014) constraint CS = {r5} extremes [2, 2] stored actions - (hits 0/976) constraint CS = {r5} extremes [2, 2] + (hits 0/1014) constraint CS = {r5} extremes [2, 2] object-based rulebook producing - (hits 0/4897) constraint DS = {r5} extremes [5, infinity) + (hits 0/5053) constraint DS = {r5} extremes [5, infinity) object-based rulebook producing - (hits 0/1073) constraint DS = {r5} & CW = {r2, r5} extremes [4, infinity) + (hits 0/1078) constraint DS = {r5} & CW = {r2, r5} extremes [4, infinity) object-based rulebook - (hits 2/976) (matched: 'object-based rulebook') constraint CS = {r5} extremes [2, 2] + (hits 2/1014) (matched: 'object-based rulebook') constraint CS = {r5} extremes [2, 2] action-based rulebook - (hits 0/974) constraint CS = {r5} extremes [2, 2] + (hits 0/1012) constraint CS = {r5} extremes [2, 2] object-based rule producing - (hits 0/4897) constraint DS = {r5} extremes [5, infinity) + (hits 0/5053) constraint DS = {r5} extremes [5, infinity) object-based rule producing - (hits 0/1073) constraint DS = {r5} & CW = {r2, r5} extremes [4, infinity) + (hits 0/1078) constraint DS = {r5} & CW = {r2, r5} extremes [4, infinity) object-based rule - (hits 0/974) constraint CS = {r5} extremes [2, 2] + (hits 0/1012) constraint CS = {r5} extremes [2, 2] action-based rule - (hits 0/974) constraint CS = {r5} extremes [2, 2] + (hits 0/1012) constraint CS = {r5} extremes [2, 2] either-or property - (hits 0/974) constraint CS = {r5} extremes [2, 2] + (hits 0/1012) constraint CS = {r5} extremes [2, 2] - internal hits 353/11230 nti r5 constraint CW = {r2, r5} extremes [1, infinity) + internal hits 359/11506 nti r5 constraint CW = {r2, r5} extremes [1, infinity) hits 150/300 nti r5 constraint (none) extremes [1, infinity) English: @@ -5402,11 +5402,11 @@ (hits 100/224) (matched: 'sayable value') constraint (none) extremes [1, infinity) - internal hits 1589/19592 nti r5 constraint CW = {r2, r5} extremes [1, 1] + internal hits 599/17806 nti r5 constraint CW = {r2, r5} extremes [1, 1] internal hits 220/1414 nti r5 constraint CW = {r2, r5} extremes [1, 1] - internal hits 0/772 nti 29 constraint (none) extremes [1, 1] + internal hits 0/740 nti 9 constraint (none) extremes [1, 1] nti r5 constraint CS = {r5} extremes [1, 1] English: @@ -5463,7 +5463,7 @@ z/zs constraint CS = {r5} extremes [1, 1] - internal hits 47/104 nti 30 constraint (none) extremes [1, infinity) + internal hits 47/104 nti 10 constraint (none) extremes [1, infinity) hits 4/8 nti 10 constraint (none) extremes [1, infinity) English: @@ -5472,34 +5472,34 @@ {...} (hits 1/1) (matched long text) constraint (none) extremes [1, infinity) - internal nti 31 constraint (none) extremes [1, infinity) + internal nti 11 constraint (none) extremes [1, infinity) - hits 199/10188 nti 6 constraint DW = {11, 12} extremes [2, infinity) + hits 199/10188 nti 12 constraint DW = {11, 12} extremes [2, infinity) English: - (hits 191/3377) (matched long text) constraint DS = {11} extremes [2, infinity) + (hits 191/3093) (matched long text) constraint DS = {11} extremes [2, infinity) - (hits 8/3626) (matched long text) constraint DS = {12} extremes [3, infinity) + (hits 8/3628) (matched long text) constraint DS = {12} extremes [3, infinity) - hits 191/2276 nti 11 constraint DS = {11} extremes [2, infinity) + hits 191/2262 nti 11 constraint DS = {11} extremes [2, infinity) English: volume {...} - (hits 6/1138) (matched long text) constraint DS = {11} extremes [2, infinity) + (hits 6/1131) (matched long text) constraint DS = {11} extremes [2, infinity) book {...} - (hits 0/1132) constraint DS = {11} extremes [2, infinity) + (hits 0/1125) constraint DS = {11} extremes [2, infinity) part {...} - (hits 14/1132) (matched: 'part two - the physical world model') constraint DS = {11} extremes [2, infinity) + (hits 14/1125) (matched: 'part two - the physical world model') constraint DS = {11} extremes [2, infinity) chapter {...} - (hits 20/1118) (matched long text) constraint DS = {11} extremes [2, infinity) + (hits 20/1111) (matched long text) constraint DS = {11} extremes [2, infinity) section {...} - (hits 151/1098) (matched long text) constraint DS = {11} extremes [2, infinity) + (hits 151/1091) (matched long text) constraint DS = {11} extremes [2, infinity) - hits 8/7252 nti 12 constraint DS = {12} extremes [3, infinity) + hits 8/7256 nti 12 constraint DS = {12} extremes [3, infinity) English: {...} begin/begins here - (hits 4/3626) (matched long text) constraint DS = {12} extremes [3, infinity) + (hits 4/3628) (matched long text) constraint DS = {12} extremes [3, infinity) {...} end/ends here - (hits 4/3622) (matched: 'the standard rules end here') constraint DS = {12} extremes [3, infinity) + (hits 4/3624) (matched: 'the standard rules end here') constraint DS = {12} extremes [3, infinity) hits 32/12958 nti 14 constraint (none) extremes [1, infinity) English: @@ -5508,52 +5508,52 @@ {...} (hits 0/6459) constraint (none) extremes [2, infinity) - (hits 0/6335) constraint DS = {13} extremes [4, infinity) + (hits 0/6271) constraint DS = {13} extremes [4, infinity) * constraint CS = {14} extremes [1, 1] * constraint DS = {14} extremes [2, 2] table {...} - (hits 14/6352) (matched long text) constraint DS = {14} extremes [2, infinity) + (hits 14/6314) (matched long text) constraint DS = {14} extremes [2, infinity) equation {...} - (hits 0/6338) constraint DS = {14} extremes [2, infinity) + (hits 0/6300) constraint DS = {14} extremes [2, infinity) include the {...} by {...} - (hits 0/6314) constraint DS = {14} extremes [5, infinity) + (hits 0/6279) constraint DS = {14} extremes [5, infinity) include {...} by {...} - (hits 18/6338) (matched long text) constraint DS = {14} extremes [4, infinity) + (hits 18/6300) (matched long text) constraint DS = {14} extremes [4, infinity) include (- {...} - (hits 0/6320) constraint DS = {14} extremes [3, infinity) + (hits 0/6282) constraint DS = {14} extremes [3, infinity) hits 9/2788 nti 15 constraint DS = {15} extremes [2, infinity) English: instead of {...} - (hits 0/984) constraint DS = {15} extremes [3, infinity) + (hits 0/1084) constraint DS = {15} extremes [3, infinity) every turn {***} - (hits 1/984) (matched: 'every turn rules is a rulebook') constraint DS = {15} extremes [2, infinity) + (hits 1/1084) (matched: 'every turn rules is a rulebook') constraint DS = {15} extremes [2, infinity) before {...} - (hits 2/983) (matched long text) constraint DS = {15} extremes [2, infinity) + (hits 2/1083) (matched long text) constraint DS = {15} extremes [2, infinity) after {...} - (hits 2/981) (matched long text) constraint DS = {15} extremes [2, infinity) + (hits 2/1081) (matched long text) constraint DS = {15} extremes [2, infinity) when {...} - (hits 4/979) (matched: 'when scene begins is a scene based rulebook') constraint DS = {15} extremes [2, infinity) + (hits 4/1079) (matched: 'when scene begins is a scene based rulebook') constraint DS = {15} extremes [2, infinity) - hits 0/12670 nti 13 constraint DS = {13} extremes [4, infinity) + hits 0/12542 nti 13 constraint DS = {13} extremes [4, infinity) English: include (- {###} in the preform grammar - (hits 0/134) constraint DS = {13} extremes [7, 7] + (hits 0/115) constraint DS = {13} extremes [7, 7] use {...} language element/elements - (hits 0/6335) constraint DS = {13} extremes [4, infinity) + (hits 0/6271) constraint DS = {13} extremes [4, infinity) hits 30/442 nti 21 constraint DS = {21} extremes [2, infinity) English: {...} ( ) - (hits 13/164) (matched long text) constraint DS = {21} extremes [4, infinity) + (hits 13/157) (matched long text) constraint DS = {21} extremes [4, infinity) {...} not for release - (hits 1/151) (matched long text) constraint DS = {21} extremes [4, infinity) + (hits 1/144) (matched long text) constraint DS = {21} extremes [4, infinity) {...} for release only - (hits 0/150) constraint DS = {21} extremes [4, infinity) + (hits 0/143) constraint DS = {21} extremes [4, infinity) {...} unindexed - (hits 16/150) (matched long text) constraint DS = {21} extremes [2, infinity) + (hits 16/143) (matched long text) constraint DS = {21} extremes [2, infinity) hits 13/26 nti 20 constraint DW = {17, 19, 20} extremes [1, infinity) English: @@ -5604,7 +5604,7 @@ {......} by {......} constraint DS = {18} extremes [3, infinity) - internal hits 7/14 nti 7 constraint (none) extremes [1, infinity) + internal hits 7/14 nti 13 constraint (none) extremes [1, infinity) nti 23 constraint (none) extremes [1, infinity) English: @@ -5625,7 +5625,7 @@ use . constraint DS = {26} extremes [3, infinity) - nti 8 constraint (none) extremes [1, infinity) + nti 14 constraint (none) extremes [1, infinity) English: {...} constraint (none) extremes [1, infinity) @@ -5641,7 +5641,7 @@ _,/and constraint DS = {25} extremes [2, infinity) - nti 9 constraint (none) extremes [1, infinity) + nti 15 constraint (none) extremes [1, infinity) English: constraint CS = {24} extremes [1, 3] @@ -5666,14 +5666,14 @@ (hits 10/10) (matched: 'basic inform') constraint (none) extremes [1, infinity) - hits 10/20 nti 10 constraint (none) extremes [1, infinity) + hits 10/20 nti 16 constraint (none) extremes [1, infinity) English: {***} (hits 0/10) constraint (none) extremes [1, infinity) {...} (hits 10/10) (matched: 'basic inform') constraint (none) extremes [1, infinity) - internal hits 6/12 nti 11 constraint (none) extremes [1, 1] + internal hits 6/12 nti 17 constraint (none) extremes [1, 1] hits 4/8 nti 29 constraint (none) extremes [1, infinity) English: @@ -5687,65 +5687,65 @@ the {...} (hits 1/1) (matched: 'the standard rules') constraint DS = {30} extremes [2, infinity) - hits 2873/18796 nti 31 constraint DS = {31} extremes [1, infinity) + hits 2873/16180 nti 31 constraint DS = {31} extremes [1, infinity) English: if {...} is begin - (hits 0/4046) constraint DS = {31} extremes [4, infinity) + (hits 0/4033) constraint DS = {31} extremes [4, infinity) if {...} is - (hits 0/4623) constraint DS = {31} extremes [3, infinity) + (hits 0/4610) constraint DS = {31} extremes [3, infinity) if/unless {...} - (hits 2123/4623) (matched long text) constraint DS = {31} extremes [2, infinity) + (hits 2123/4610) (matched long text) constraint DS = {31} extremes [2, infinity) repeat {...} - (hits 101/2500) (matched long text) constraint DS = {31} extremes [2, infinity) + (hits 101/2487) (matched long text) constraint DS = {31} extremes [2, infinity) while {...} - (hits 31/2399) (matched long text) constraint DS = {31} extremes [2, infinity) + (hits 31/2386) (matched long text) constraint DS = {31} extremes [2, infinity) else/otherwise (hits 330/345) (matched: 'otherwise') constraint CS = {31} extremes [1, 1] else/otherwise if/unless {...} - (hits 231/2368) (matched long text) constraint DS = {31} extremes [3, infinity) + (hits 231/2355) (matched long text) constraint DS = {31} extremes [3, infinity) else/otherwise {...} - (hits 57/2137) (matched long text) constraint DS = {31} extremes [2, infinity) + (hits 57/2124) (matched long text) constraint DS = {31} extremes [2, infinity) -- otherwise constraint CS = {31} extremes [2, 2] -- {...} - (hits 0/2080) constraint DS = {31} extremes [2, infinity) + (hits 0/2067) constraint DS = {31} extremes [2, infinity) - hits 0/12004 nti 6 constraint CS = {6} extremes [2, 2] + hits 0/10260 nti 6 constraint CS = {6} extremes [2, 2] English: end if/unless - (hits 0/6) constraint CS = {6} extremes [2, 2] + constraint CS = {6} extremes [2, 2] end while - (hits 0/6) constraint CS = {6} extremes [2, 2] + constraint CS = {6} extremes [2, 2] end repeat - (hits 0/6) constraint CS = {6} extremes [2, 2] + constraint CS = {6} extremes [2, 2] - hits 756/14584 nti 7 constraint DS = {7} extremes [2, infinity) + hits 756/10874 nti 7 constraint DS = {7} extremes [2, infinity) English: say {...} - (hits 584/2548) (matched: 'say run paragraph on with special look spacing') constraint DS = {7} extremes [2, infinity) + (hits 584/2262) (matched: 'say run paragraph on with special look spacing') constraint DS = {7} extremes [2, infinity) now {...} - (hits 172/1964) (matched long text) constraint DS = {7} extremes [2, infinity) + (hits 172/1678) (matched long text) constraint DS = {7} extremes [2, infinity) - hits 2306/7528 nti 8 constraint DS = {8} extremes [3, infinity) + hits 526/2438 nti 8 constraint DS = {8} extremes [3, infinity) English: {......} , {......} - (hits 2306/2581) (matched long text) constraint DS = {8} extremes [3, infinity) + (hits 526/803) (matched long text) constraint DS = {8} extremes [3, infinity) - hits 30/9858 nti 9 constraint DS = {9} extremes [2, infinity) + hits 30/8986 nti 9 constraint DS = {9} extremes [2, infinity) English: instead {...} - (hits 0/1896) constraint DS = {9} extremes [2, infinity) + (hits 0/1710) constraint DS = {9} extremes [2, infinity) {...} instead - (hits 30/1896) (matched long text) constraint DS = {9} extremes [2, infinity) + (hits 30/1710) (matched long text) constraint DS = {9} extremes [2, infinity) hits 0/880 nti 10 constraint DS = {10} extremes [2, infinity) English: {...} begin - (hits 0/431) constraint DS = {10} extremes [2, infinity) + (hits 0/432) constraint DS = {10} extremes [2, infinity) - internal nti 12 constraint (none) extremes [1, 1] + internal nti 18 constraint (none) extremes [1, 1] - internal hits 7/14 nti 13 constraint (none) extremes [1, infinity) + internal hits 7/14 nti 19 constraint (none) extremes [1, infinity) hits 21/58 nti 24 constraint CS = {24} extremes [1, 3] English: @@ -5792,7 +5792,7 @@ superbrief room descriptions (hits 1/1) (matched: 'superbrief room descriptions') constraint CS = {24} extremes [3, 3] - internal hits 6/12 nti 14 constraint (none) extremes [1, infinity) + internal hits 6/12 nti 20 constraint (none) extremes [1, infinity) nti 11 constraint CS = {11} extremes [1, 1] English: @@ -5861,7 +5861,7 @@ {...} constraint (none) extremes [1, infinity) - nti 15 constraint (none) extremes [2, infinity) + nti 21 constraint (none) extremes [2, infinity) English: {...} constraint DS = {13, 30} extremes [4, infinity) @@ -5884,11 +5884,11 @@ {...} that varies (hits 0/9) constraint DS = {15} extremes [3, infinity) {...} variable - (hits 0/9) constraint DS = {15} extremes [2, infinity) + (hits 0/19) constraint DS = {15} extremes [2, infinity) {...} (hits 104/104) (matched: 'the removing it from action') constraint (none) extremes [1, infinity) - hits 40/176 nti 16 constraint DW = {16, 17, 18} extremes [2, infinity) + hits 40/176 nti 22 constraint DW = {16, 17, 18} extremes [2, infinity) English: (hits 26/28) (matched: 'unlocking keylessly action') constraint DS = {16} extremes [2, infinity) @@ -5907,43 +5907,51 @@ {...} activity constraint DS = {17} extremes [2, infinity) - hits 1191/2382 nti 19 constraint DS = {19} extremes [2, infinity) - English: - {...} rule - (hits 1191/1191) (matched long text) constraint DS = {19} extremes [2, infinity) - hits 21/42 nti 18 constraint DS = {18} extremes [2, infinity) English: {...} rulebook (hits 21/21) (matched: 'specific action-processing rulebook') constraint DS = {18} extremes [2, infinity) - hits 24/48 nti 17 constraint (none) extremes [1, infinity) + hits 24/48 nti 23 constraint (none) extremes [1, infinity) English: - (hits 0/3) constraint DS = {21} extremes [3, infinity) + constraint DS = {20} extremes [3, infinity) (hits 24/24) (matched: 'variable initial value') constraint (none) extremes [1, infinity) - hits 0/12 nti 21 constraint DS = {21} extremes [2, infinity) + nti 20 constraint DS = {20} extremes [2, infinity) English: , _{and} - constraint DS = {21} extremes [3, infinity) + constraint DS = {20} extremes [3, infinity) _{,/and} - (hits 0/3) constraint DS = {21} extremes [2, infinity) + constraint DS = {20} extremes [2, infinity) - hits 24/48 nti 20 constraint (none) extremes [1, infinity) + hits 24/48 nti 19 constraint (none) extremes [1, infinity) English:
    (hits 0/7) constraint (none) extremes [1, 1] presence - constraint CS = {20} extremes [1, 1] + constraint CS = {19} extremes [1, 1] {***} , {***} - constraint DS = {20} extremes [1, infinity) + constraint DS = {19} extremes [1, infinity) {***} {***} (hits 0/24) constraint (none) extremes [1, infinity) {...} (hits 24/24) (matched: 'variable initial value') constraint (none) extremes [1, infinity) + hits 109/218 nti 21 constraint (none) extremes [1, infinity) + English: + {***} . {***} + (hits 0/109) constraint DS = {21} extremes [1, infinity) + , {***} + (hits 0/109) constraint DS = {21} extremes [1, infinity) + {***} , + (hits 0/109) constraint DS = {21} extremes [1, infinity) + {***} , , {***} + (hits 0/109) constraint DS = {21} extremes [2, infinity) + {...} + (hits 109/109) (matched long text) constraint (none) extremes [1, infinity) + nti 22 constraint CS = {22} extremes [3, 3] English: the debugging log @@ -5970,16 +5978,16 @@ hits 4/1112 nti 25 constraint DS = {25} extremes [3, infinity) English:
    plural of - (hits 4/187) (matched: 'the plural of person') constraint DS = {25} extremes [4, infinity) + (hits 4/168) (matched: 'the plural of person') constraint DS = {25} extremes [4, infinity) plural of - (hits 0/208) constraint DS = {25} extremes [3, infinity) + (hits 0/175) constraint DS = {25} extremes [3, infinity) - nti 18 constraint (none) extremes [1, infinity) + nti 24 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) - nti 19 constraint (none) extremes [1, infinity) + nti 25 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) @@ -5989,16 +5997,16 @@ hits 0/444 nti 26 constraint CS = {26} extremes [1, 1] English: unicode - constraint CS = {26} extremes [1, 1] + (hits 0/2) constraint CS = {26} extremes [1, 1] - nti 20 constraint (none) extremes [1, infinity) + nti 26 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - nti 21 constraint (none) extremes [1, infinity) + nti 27 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, 1] @@ -6088,7 +6096,7 @@ {...} constraint (none) extremes [1, infinity) - hits 1/2 nti 22 constraint (none) extremes [1, infinity) + hits 1/2 nti 28 constraint (none) extremes [1, infinity) English: (hits 1/1) (matched: 'go to cold comfort / z / z / z / z / ask vanessa for french vanilla / ask vanessa for chocolate / ask vanessa about flavors / ask vanessa for chocolate chocolate chip') constraint (none) extremes [1, 1] @@ -6097,7 +6105,7 @@ {...} constraint (none) extremes [1, infinity) - nti 23 constraint (none) extremes [1, infinity) + nti 29 constraint (none) extremes [1, infinity) English: {...} constraint (none) extremes [1, infinity) @@ -6122,9 +6130,9 @@ hits 0/856 nti 13 constraint DS = {13} extremes [3, infinity) English: defined by - (hits 0/205) constraint DS = {13} extremes [3, infinity) + (hits 0/204) constraint DS = {13} extremes [3, infinity) - nti 24 constraint (none) extremes [1, infinity) + nti 30 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) @@ -6152,26 +6160,26 @@ not listed (hits 1/1) (matched: 'not listed in any rulebook') constraint DS = {16} extremes [3, infinity) - hits 113/932 nti 25 constraint (none) extremes [1, infinity) + hits 113/932 nti 31 constraint (none) extremes [1, infinity) English: {...} (hits 30/466) (matched long text) constraint (none) extremes [1, infinity) - (hits 0/209) constraint DS = {17, 18} extremes [4, infinity) + (hits 0/227) constraint DS = {17, 18} extremes [4, infinity) - (hits 83/216) (matched long text) constraint DS = {17} extremes [2, infinity) + (hits 83/376) (matched long text) constraint DS = {17} extremes [2, infinity) - hits 30/2416 nti 18 constraint DS = {18} extremes [2, infinity) + hits 30/2544 nti 18 constraint DS = {18} extremes [2, infinity) English: , _{and} - (hits 1/560) (matched: ', and the library') constraint DS = {18} extremes [3, infinity) + (hits 1/723) (matched: ', and the library') constraint DS = {18} extremes [3, infinity) _{,/and} - (hits 29/609) (matched long text) constraint DS = {18} extremes [2, infinity) + (hits 29/858) (matched long text) constraint DS = {18} extremes [2, infinity) - hits 83/492 nti 17 constraint DS = {17} extremes [2, infinity) + hits 83/812 nti 17 constraint DS = {17} extremes [2, infinity) English: {...} rule - (hits 83/243) (matched long text) constraint DS = {17} extremes [2, infinity) + (hits 83/406) (matched long text) constraint DS = {17} extremes [2, infinity) nti 19 constraint DS = {17} extremes [2, infinity) English: @@ -6182,14 +6190,14 @@ unless constraint DS = {17, 19} extremes [4, infinity) - nti 26 constraint (none) extremes [1, infinity) + nti 6 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - nti 27 constraint (none) extremes [1, infinity) + nti 7 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) @@ -6201,14 +6209,14 @@ nothing constraint CS = {20} extremes [1, 1] - nti 28 constraint (none) extremes [1, infinity) + nti 8 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - hits 83/166 nti 29 constraint (none) extremes [1, infinity) + hits 83/166 nti 9 constraint (none) extremes [1, infinity) English: (hits 83/83) (matched long text) constraint (none) extremes [1, infinity) @@ -6252,7 +6260,7 @@ {...} constraint (none) extremes [1, infinity) - hits 78/156 nti 30 constraint (none) extremes [1, infinity) + hits 78/156 nti 10 constraint (none) extremes [1, infinity) English: (hits 78/78) (matched long text) constraint (none) extremes [1, infinity) @@ -6264,7 +6272,7 @@
    activity (hits 34/38) (matched: 'an activity') constraint DS = {22} extremes [2, 2] activity - (hits 0/3) constraint CS = {22} extremes [1, 1] + constraint CS = {22} extremes [1, 1] nti 25 constraint (none) extremes [1, infinity) English: @@ -6277,7 +6285,7 @@ {...} constraint (none) extremes [1, infinity) - nti 31 constraint (none) extremes [1, infinity) + nti 11 constraint (none) extremes [1, infinity) English: constraint DS = {24} extremes [3, infinity) @@ -6304,14 +6312,14 @@ {......} constraint (none) extremes [1, infinity) - nti 6 constraint (none) extremes [1, infinity) + nti 12 constraint (none) extremes [1, infinity) English: constraint DW = {13, 31} extremes [3, infinity) constraint (none) extremes [1, infinity) - nti 7 constraint (none) extremes [1, infinity) + nti 13 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) @@ -6340,7 +6348,7 @@ scaled at constraint DS = {31} extremes [3, infinity) - nti 8 constraint (none) extremes [1, infinity) + nti 14 constraint (none) extremes [1, infinity) English: constraint CS = {r0} extremes [1, 1] @@ -6365,7 +6373,7 @@ constraint (none) extremes [0, infinity) - nti 9 constraint (none) extremes [1, infinity) + nti 15 constraint (none) extremes [1, infinity) English: constraint DS = {27} extremes [3, infinity) @@ -6432,9 +6440,9 @@ hits 10/20 nti 15 constraint (none) extremes [1, infinity) English: one {...} - (hits 4/8) (matched: 'one room') constraint DS = {15} extremes [2, infinity) + (hits 4/10) (matched: 'one room') constraint DS = {15} extremes [2, infinity) various {...} - (hits 4/4) (matched: 'various doors') constraint DS = {15} extremes [2, infinity) + (hits 4/6) (matched: 'various doors') constraint DS = {15} extremes [2, infinity) {...} (hits 2/2) (matched: 'a door') constraint (none) extremes [1, infinity) @@ -6451,7 +6459,7 @@ hits 0/856 nti 22 constraint DS = {22} extremes [2, infinity) English: either - (hits 0/132) constraint DS = {22} extremes [2, infinity) + (hits 0/130) constraint DS = {22} extremes [2, infinity) hits 0/86 nti 23 constraint (none) extremes [1, 2] English: @@ -6465,11 +6473,11 @@ hits 43/86 nti 26 constraint (none) extremes [1, infinity) English: either ( ) - (hits 0/1) constraint DS = {26} extremes [5, infinity) + (hits 0/4) constraint DS = {26} extremes [5, infinity) ( ) - (hits 0/1) constraint DS = {26} extremes [4, infinity) + (hits 0/4) constraint DS = {26} extremes [4, infinity) either - (hits 0/1) constraint DS = {26} extremes [2, infinity) + (hits 0/30) constraint DS = {26} extremes [2, infinity) (hits 43/43) (matched: 'marked for listing or unmarked for listing') constraint (none) extremes [1, infinity) @@ -6480,7 +6488,7 @@ constraint (none) extremes [1, infinity) - nti 10 constraint (none) extremes [1, infinity) + nti 16 constraint (none) extremes [1, infinity) English:
    constraint (none) extremes [2, infinity) @@ -6496,23 +6504,23 @@ constraint (none) extremes [1, infinity) - hits 74/1260 nti 11 constraint DS = {27} extremes [1, infinity) + hits 74/1260 nti 17 constraint DS = {27} extremes [1, infinity) English: - (hits 74/467) (matched: 'a verb') constraint DS = {27} extremes [2, infinity) + (hits 74/326) (matched: 'a verb') constraint DS = {27} extremes [2, infinity) - (hits 0/396) constraint DS = {27} extremes [1, infinity) + (hits 0/264) constraint DS = {27} extremes [1, infinity) - hits 74/1496 nti 27 constraint DS = {27} extremes [1, infinity) + hits 74/948 nti 27 constraint DS = {27} extremes [1, infinity) English: verb - (hits 74/103) (matched: 'verb') constraint CS = {27} extremes [1, 1] + (hits 74/86) (matched: 'verb') constraint CS = {27} extremes [1, 1] verb implying/meaning nounphrase-unparsed> - (hits 0/91) constraint DS = {27} extremes [4, 4] + (hits 0/55) constraint DS = {27} extremes [4, 4] verb implying/meaning - (hits 0/454) constraint DS = {27} extremes [3, infinity) + (hits 0/383) constraint DS = {27} extremes [3, infinity) - hits 82/168 nti 12 constraint DS = {28} extremes [2, infinity) + hits 82/168 nti 18 constraint DS = {28} extremes [2, infinity) English: (hits 82/84) (matched long text) constraint DS = {28} extremes [3, infinity) @@ -6533,7 +6541,7 @@ hits 152/304 nti 31 constraint (none) extremes [1, infinity) English: in - (hits 0/45) constraint DS = {31} extremes [3, infinity) + (hits 0/18) constraint DS = {31} extremes [3, infinity) (hits 152/152) (matched long text) constraint (none) extremes [1, infinity) @@ -6583,28 +6591,28 @@ {...} (hits 3/3) (matched: 'he conceals') constraint (none) extremes [2, infinity) - hits 1/4 nti 13 constraint (none) extremes [1, infinity) + hits 1/4 nti 19 constraint (none) extremes [1, infinity) English: {***} (hits 1/2) (matched: 'concealing') constraint (none) extremes [1, infinity) {***} (hits 0/1) constraint (none) extremes [1, infinity) - hits 0/856 nti 14 constraint DS = {8} extremes [1, infinity) + hits 0/856 nti 20 constraint DS = {8} extremes [1, infinity) English: - (hits 0/75) constraint DS = {8} extremes [2, infinity) + (hits 0/131) constraint DS = {8} extremes [2, infinity) - (hits 0/76) constraint DS = {8} extremes [1, infinity) + (hits 0/132) constraint DS = {8} extremes [1, infinity) - hits 0/224 nti 8 constraint DS = {8} extremes [1, infinity) + hits 0/330 nti 8 constraint DS = {8} extremes [1, infinity) English: adjective (hits 0/1) constraint CS = {8} extremes [1, 1] adjective implying/meaning - (hits 0/71) constraint DS = {8} extremes [4, infinity) + (hits 0/132) constraint DS = {8} extremes [4, infinity) adjective implying/meaning - (hits 0/110) constraint DS = {8} extremes [3, infinity) + (hits 0/164) constraint DS = {8} extremes [3, infinity) nti 9 constraint (none) extremes [1, infinity) English: @@ -6616,9 +6624,9 @@ hits 734/1956 nti 10 constraint (none) extremes [1, infinity) English: variable - (hits 0/15) constraint CS = {10} extremes [1, 1] + (hits 0/14) constraint CS = {10} extremes [1, 1] action of - (hits 0/134) constraint DS = {10} extremes [3, infinity) + (hits 0/104) constraint DS = {10} extremes [3, infinity) (hits 728/978) (matched: 'action name based rule producing nothing that varies') constraint (none) extremes [1, infinity) @@ -6627,7 +6635,7 @@ hits 0/514 nti 12 constraint DS = {11, 12} extremes [4, infinity) English: {...} ( ) - (hits 0/27) constraint DS = {11, 12} extremes [4, infinity) + (hits 0/35) constraint DS = {11, 12} extremes [4, infinity) nti 11 constraint CS = {11} extremes [1, 1] English: @@ -6643,49 +6651,49 @@
    (hits 0/73) constraint (none) extremes [1, 1] (/)/(- {***} - (hits 0/112) constraint DS = {13} extremes [1, infinity) + (hits 0/96) constraint DS = {13} extremes [1, infinity) {***} (/)/(- - (hits 0/112) constraint DS = {13} extremes [1, infinity) + (hits 0/96) constraint DS = {13} extremes [1, infinity) {...} (/)/(- {...} - (hits 0/80) constraint DS = {13} extremes [3, infinity) + (hits 0/70) constraint DS = {13} extremes [3, infinity) ni--crash--1 - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] ni--crash--10 - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] ni--crash--11 - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] , {...} - (hits 0/95) constraint DS = {13} extremes [2, infinity) + (hits 0/84) constraint DS = {13} extremes [2, infinity) {...} , - (hits 0/95) constraint DS = {13} extremes [2, infinity) + (hits 0/84) constraint DS = {13} extremes [2, infinity) {...} when/while {...} - (hits 0/80) constraint DS = {13} extremes [3, infinity) + (hits 0/70) constraint DS = {13} extremes [3, infinity) {***} {***} (hits 0/273) constraint (none) extremes [1, infinity) condition - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] conditions - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] storage - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] storages - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] variable - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] variables - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] property-value - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] property-values - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] table-reference - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] table-references - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] list-entry - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] list-entries - (hits 0/17) constraint CS = {13} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] hits 0/18 nti 14 constraint DS = {14} extremes [5, infinity) English: @@ -6694,33 +6702,33 @@ {...} ( called {...} ) constraint DS = {14} extremes [5, infinity) - hits 19/2150 nti 15 constraint DS = {15} extremes [5, infinity) + hits 18/2072 nti 15 constraint DS = {15} extremes [5, infinity) English: {...} ( called {...} ) {***} - (hits 19/305) (matched long text) constraint DS = {15} extremes [5, infinity) + (hits 18/387) (matched long text) constraint DS = {15} extremes [5, infinity) hits 0/1474 nti 16 constraint (none) extremes [1, infinity) English:
    (hits 0/156) constraint (none) extremes [1, 1] {***} (/)/{/}/,/./(- {***} - (hits 0/66) constraint DS = {16} extremes [1, infinity) + (hits 0/155) constraint DS = {16} extremes [1, infinity) {***} {***} (hits 0/667) constraint (none) extremes [1, infinity) - hits 0/1612 nti 17 constraint (none) extremes [1, infinity) + hits 0/1610 nti 17 constraint (none) extremes [1, infinity) English: - (hits 0/661) constraint (none) extremes [1, 1] + (hits 0/660) constraint (none) extremes [1, 1] {***} (/)/{/}/,/. {***} - (hits 0/10) constraint DS = {17} extremes [1, infinity) + (hits 0/18) constraint DS = {17} extremes [1, infinity) {***} {***} - (hits 0/806) constraint (none) extremes [1, infinity) + (hits 0/805) constraint (none) extremes [1, infinity) hits 0/50 nti 18 constraint (none) extremes [1, infinity) English: {...} with/having/and/or {...} - (hits 0/10) constraint DS = {18} extremes [3, infinity) + (hits 0/13) constraint DS = {18} extremes [3, infinity) (hits 0/25) constraint (none) extremes [1, infinity) @@ -6798,7 +6806,7 @@ {***} with blank row/rows for each/every {...} (hits 1/5) (matched long text) constraint DS = {27} extremes [6, infinity) - hits 164/328 nti 15 constraint (none) extremes [1, infinity) + hits 164/328 nti 21 constraint (none) extremes [1, infinity) English: (hits 14/14) (matched: '--') constraint CS = {28} extremes [1, 1] @@ -6870,7 +6878,7 @@ {...} where {...} constraint DS = {8} extremes [3, infinity) - hits 4/8 nti 16 constraint (none) extremes [1, infinity) + hits 4/8 nti 22 constraint (none) extremes [1, infinity) English: {...} (hits 0/4) constraint (none) extremes [1, infinity) @@ -6886,7 +6894,7 @@ _,/and (hits 0/4) constraint DS = {10} extremes [2, infinity) - hits 4/8 nti 17 constraint (none) extremes [1, infinity) + hits 4/8 nti 23 constraint (none) extremes [1, infinity) English: {...} (hits 0/4) constraint (none) extremes [1, infinity) @@ -6910,7 +6918,7 @@ constraint (none) extremes [1, infinity) - hits 4/8 nti 18 constraint (none) extremes [1, infinity) + hits 4/8 nti 24 constraint (none) extremes [1, infinity) English: (hits 4/4) (matched: 'x') constraint (none) extremes [1, infinity) @@ -6919,7 +6927,7 @@ {...} constraint (none) extremes [1, infinity) - internal hits 4/8 nti 19 constraint (none) extremes [1, infinity) + internal hits 4/8 nti 25 constraint (none) extremes [1, infinity) nti 11 constraint CS = {11} extremes [1, 1] English: @@ -6933,7 +6941,7 @@ {...} constraint (none) extremes [1, infinity) - nti 20 constraint (none) extremes [1, infinity) + nti 26 constraint (none) extremes [1, infinity) English: constraint DS = {14} extremes [3, infinity) @@ -6995,7 +7003,7 @@ {...} constraint (none) extremes [1, infinity) - nti 21 constraint (none) extremes [1, infinity) + nti 27 constraint (none) extremes [1, infinity) English: {...} ^option constraint (none) extremes [2, infinity) @@ -7011,84 +7019,84 @@ {...} constraint (none) extremes [1, infinity) - hits 2097/23662 nti 12 constraint (none) extremes [1, infinity) + hits 1130/20872 nti 12 constraint (none) extremes [1, infinity) English: - (hits 171/171) (matched: '100') constraint CS = {r0} extremes [1, 1] + (hits 169/169) (matched: '100') constraint CS = {r0} extremes [1, 1] minus - (hits 0/1941) constraint DS = {12} extremes [2, 2] + (hits 0/2045) constraint DS = {12} extremes [2, 2] ( ) - (hits 273/831) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint DS = {12} extremes [4, 4] + (hits 273/846) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint DS = {12} extremes [4, 4] - (hits 1564/5496) (matched: 'Represents geographical locations, both indoor + (hits 599/4227) (matched: 'Represents geographical locations, both indoor and outdoor, which are not necessarily areas in a building. A player in one room is mostly unable to sense, or interact with, anything in a different room. Rooms are arranged in a map.') constraint (none) extremes [1, 1] - (hits 11/9823) (matched: 'plus infinity') constraint (none) extremes [1, infinity) + (hits 11/9395) (matched: 'plus infinity') constraint (none) extremes [1, infinity) - (hits 78/392) (matched: 'false') constraint CS = {6} extremes [1, 1] + (hits 78/774) (matched: 'false') constraint CS = {6} extremes [1, 1] - (hits 0/1692) constraint DS = {8} extremes [2, infinity) + (hits 0/3087) constraint DS = {8} extremes [2, infinity) unicode - (hits 0/4359) constraint DS = {12} extremes [2, infinity) + (hits 0/4503) constraint DS = {12} extremes [2, infinity) - (hits 0/3578) constraint DW = {9, 10, 11} extremes [2, 5] + (hits 0/2105) constraint DW = {9, 10, 11} extremes [2, 5] - (hits 0/9734) constraint (none) extremes [1, infinity) + (hits 0/9306) constraint (none) extremes [1, infinity) - internal hits 680/1360 nti 22 constraint (none) extremes [1, 1] + internal hits 680/1360 nti 28 constraint (none) extremes [1, 1] - hits 78/784 nti 6 constraint CS = {6} extremes [1, 1] + hits 78/1548 nti 6 constraint CS = {6} extremes [1, 1] English: false - (hits 29/392) (matched: 'false') constraint CS = {6} extremes [1, 1] + (hits 29/774) (matched: 'false') constraint CS = {6} extremes [1, 1] true - (hits 49/363) (matched: 'true') constraint CS = {6} extremes [1, 1] + (hits 49/745) (matched: 'true') constraint CS = {6} extremes [1, 1] - internal nti 23 constraint (none) extremes [1, infinity) + internal nti 29 constraint (none) extremes [1, infinity) - internal hits 0/19468 nti 24 constraint (none) extremes [1, infinity) + internal hits 0/18612 nti 30 constraint (none) extremes [1, infinity) - hits 11/19646 nti 30 constraint (none) extremes [1, infinity) + hits 11/18790 nti 30 constraint (none) extremes [1, infinity) English: _pi - (hits 1/20) (matched: 'pi') constraint CS = {30} extremes [1, 1] + (hits 1/123) (matched: 'pi') constraint CS = {30} extremes [1, 1] _e - (hits 1/19) (matched: 'e') constraint CS = {30} extremes [1, 1] + (hits 1/122) (matched: 'e') constraint CS = {30} extremes [1, 1] plus infinity - (hits 4/10) (matched: 'plus infinity') constraint CS = {30} extremes [2, 2] + (hits 4/8) (matched: 'plus infinity') constraint CS = {30} extremes [2, 2] minus infinity - (hits 4/6) (matched: 'minus infinity') constraint CS = {30} extremes [2, 2] + (hits 4/4) (matched: 'minus infinity') constraint CS = {30} extremes [2, 2] - (hits 1/9813) (matched: '0.5') constraint (none) extremes [1, infinity) + (hits 1/9385) (matched: '0.5') constraint (none) extremes [1, infinity) - internal hits 1/19626 nti 25 constraint (none) extremes [1, infinity) + internal hits 1/18770 nti 31 constraint (none) extremes [1, infinity) - hits 0/7156 nti 11 constraint DW = {9, 10, 11} extremes [2, 5] + hits 0/4210 nti 11 constraint DW = {9, 10, 11} extremes [2, 5] English: minus - (hits 0/830) constraint DS = {9, 11} extremes [3, 5] + (hits 0/775) constraint DS = {9, 11} extremes [3, 5] - (hits 0/1013) constraint DS = {9} extremes [2, 4] + (hits 0/848) constraint DS = {9} extremes [2, 4] - (hits 0/1531) constraint DS = {10} extremes [2, 2] + (hits 0/358) constraint DS = {10} extremes [2, 2] - hits 0/2026 nti 9 constraint DS = {9} extremes [2, 4] + hits 0/1696 nti 9 constraint DS = {9} extremes [2, 4] English: hour/hours - (hits 0/253) constraint DS = {9} extremes [2, 2] + (hits 0/183) constraint DS = {9} extremes [2, 2] minute/minutes - (hits 0/253) constraint DS = {9} extremes [2, 2] + (hits 0/183) constraint DS = {9} extremes [2, 2] hour/hours minute/minutes - (hits 0/411) constraint DS = {9} extremes [4, 4] + (hits 0/386) constraint DS = {9} extremes [4, 4] - hits 0/3062 nti 26 constraint DS = {10} extremes [2, 2] + hits 0/716 nti 6 constraint DS = {10} extremes [2, 2] English: - (hits 0/1531) constraint DS = {10} extremes [2, 2] + (hits 0/358) constraint DS = {10} extremes [2, 2] - (hits 0/1531) constraint DS = {10} extremes [2, 2] + (hits 0/358) constraint DS = {10} extremes [2, 2] nti 10 constraint CS = {10} extremes [1, 1] English: @@ -7097,36 +7105,36 @@ pm constraint CS = {10} extremes [1, 1] - internal hits 0/3062 nti 27 constraint (none) extremes [1, 1] + internal hits 0/716 nti 7 constraint (none) extremes [1, 1] - internal nti 28 constraint (none) extremes [1, 1] + internal nti 8 constraint (none) extremes [1, 1] - hits 0/3192 nti 19 constraint DS = {19} extremes [2, infinity) + hits 0/3296 nti 19 constraint DS = {19} extremes [2, infinity) English: at - (hits 0/8) constraint DS = {10, 19} extremes [3, 3] + (hits 0/74) constraint DS = {10, 19} extremes [3, 3] at the time when {...} - (hits 0/1564) constraint DS = {19} extremes [5, infinity) + (hits 0/1554) constraint DS = {19} extremes [5, infinity) at the time that {...} - (hits 0/1564) constraint DS = {19} extremes [5, infinity) + (hits 0/1554) constraint DS = {19} extremes [5, infinity) at {...} - (hits 0/1596) constraint DS = {19} extremes [2, infinity) + (hits 0/1648) constraint DS = {19} extremes [2, infinity) - nti 29 constraint (none) extremes [1, infinity) + nti 9 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, 1] constraint (none) extremes [1, infinity) - internal nti 30 constraint (none) extremes [1, infinity) + internal nti 10 constraint (none) extremes [1, infinity) - hits 0/3384 nti 8 constraint DS = {8} extremes [2, infinity) + hits 0/6174 nti 8 constraint DS = {8} extremes [2, infinity) English: { } - (hits 0/27) constraint CS = {8} extremes [2, 2] + constraint CS = {8} extremes [2, 2] { } - (hits 0/1412) constraint DS = {8} extremes [3, infinity) + (hits 0/1910) constraint DS = {8} extremes [3, infinity) nti 7 constraint (none) extremes [1, infinity) English: @@ -7135,210 +7143,208 @@ constraint (none) extremes [1, infinity) - nti 31 constraint (none) extremes [1, infinity) + nti 11 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) {......} constraint (none) extremes [1, infinity) - internal hits 4/8 nti 6 constraint (none) extremes [1, infinity) + internal hits 4/8 nti 12 constraint (none) extremes [1, infinity) - internal hits 4/16 nti 7 constraint (none) extremes [1, infinity) + internal hits 4/16 nti 13 constraint (none) extremes [1, infinity) - internal hits 3198/8146 nti 8 constraint (none) extremes [1, infinity) + internal hits 1906/5628 nti 14 constraint (none) extremes [1, infinity) - internal hits 1093/2190 nti 9 constraint (none) extremes [1, infinity) + internal hits 1054/2112 nti 15 constraint (none) extremes [1, infinity) - internal hits 4/8 nti 10 constraint (none) extremes [1, infinity) + internal hits 4/8 nti 16 constraint (none) extremes [1, infinity) - internal hits 1945/5100 nti 11 constraint (none) extremes [1, infinity) + internal hits 972/3240 nti 17 constraint (none) extremes [1, infinity) - internal hits 1272/3058 nti 12 constraint (none) extremes [1, infinity) + internal hits 1272/3058 nti 18 constraint (none) extremes [1, infinity) - internal hits 529/1072 nti 13 constraint (none) extremes [1, infinity) + internal hits 529/1072 nti 19 constraint (none) extremes [1, infinity) - hits 217/1600 nti 14 constraint (none) extremes [1, infinity) + hits 241/1720 nti 20 constraint (none) extremes [1, infinity) English: - (hits 172/730) (matched long text) constraint (none) extremes [1, infinity) + (hits 189/790) (matched long text) constraint (none) extremes [1, infinity) - (hits 45/558) (matched long text) constraint (none) extremes [1, infinity) + (hits 52/601) (matched long text) constraint (none) extremes [1, infinity) - internal hits 0/244 nti 15 constraint (none) extremes [1, infinity) + internal hits 0/244 nti 21 constraint (none) extremes [1, infinity) - internal hits 0/244 nti 16 constraint (none) extremes [1, infinity) + internal hits 0/244 nti 22 constraint (none) extremes [1, infinity) - hits 2367/20792 nti 20 constraint (none) extremes [1, infinity) + hits 1379/17940 nti 20 constraint (none) extremes [1, infinity) English: - (hits 1797/10396) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint (none) extremes [1, infinity) + (hits 830/8970) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint (none) extremes [1, infinity) nothing - (hits 97/109) (matched: 'nothing') constraint CS = {20} extremes [1, 1] + (hits 97/255) (matched: 'nothing') constraint CS = {20} extremes [1, 1] - (hits 446/8502) (matched: 'printing the name of a dark room') constraint (none) extremes [1, infinity) + (hits 432/8043) (matched: 'printing the name of a dark room') constraint (none) extremes [1, infinity) outcome - (hits 0/872) constraint DS = {20} extremes [2, infinity) + (hits 0/1797) constraint DS = {20} extremes [2, infinity) option - (hits 26/872) (matched: 'serial comma option') constraint DS = {20} extremes [2, infinity) + (hits 20/1797) (matched: 'serial comma option') constraint DS = {20} extremes [2, infinity) verb - (hits 1/846) (matched: 'verb are') constraint DS = {20} extremes [2, infinity) + (hits 0/1777) constraint DS = {20} extremes [2, infinity) response ( ) - (hits 0/393) constraint DS = {20} extremes [5, infinity) + (hits 0/616) constraint DS = {20} extremes [5, infinity) - internal hits 446/17004 nti 17 constraint (none) extremes [1, infinity) + internal hits 432/16086 nti 23 constraint (none) extremes [1, infinity) - internal hits 0/244 nti 18 constraint (none) extremes [1, infinity) + internal hits 0/244 nti 24 constraint (none) extremes [1, infinity) - internal nti 19 constraint (none) extremes [1, infinity) + internal nti 25 constraint (none) extremes [1, infinity) - internal hits 26/52 nti 20 constraint (none) extremes [1, infinity) + internal hits 20/40 nti 26 constraint (none) extremes [1, infinity) - internal nti 21 constraint (none) extremes [1, infinity) + internal nti 27 constraint (none) extremes [1, infinity) - internal hits 165/18530 nti 22 constraint (none) extremes [1, infinity) + internal hits 165/15614 nti 28 constraint (none) extremes [1, infinity) - hits 34/1592 nti 23 constraint DS = {20} extremes [2, infinity) + hits 34/1440 nti 29 constraint DS = {20} extremes [2, infinity) English: - (hits 34/145) (matched: 'the property initial appearance') constraint DS = {20} extremes [3, infinity) + (hits 34/135) (matched: 'the property initial appearance') constraint DS = {20} extremes [3, infinity) - (hits 0/111) constraint DS = {20} extremes [2, infinity) + (hits 0/113) constraint DS = {20} extremes [2, infinity) - internal hits 796/21352 nti 24 constraint (none) extremes [1, infinity) + internal hits 720/18374 nti 30 constraint (none) extremes [1, infinity) - hits 651/21822 nti 25 constraint (none) extremes [1, infinity) + hits 612/18906 nti 31 constraint (none) extremes [1, infinity) English: - (hits 651/10911) (matched: 'unmarked for listing') constraint (none) extremes [1, infinity) + (hits 612/9453) (matched: 'unmarked for listing') constraint (none) extremes [1, infinity) - hits 1442/27388 nti 22 constraint (none) extremes [1, infinity) + hits 1399/24534 nti 22 constraint (none) extremes [1, infinity) English: not - (hits 0/2523) constraint DS = {22} extremes [3, infinity) + (hits 0/2499) constraint DS = {22} extremes [3, infinity) - (hits 0/6875) constraint (none) extremes [2, infinity) + (hits 0/6762) constraint (none) extremes [2, infinity) - (hits 1442/13694) (matched: 'marked for listing other') constraint (none) extremes [1, infinity) + (hits 1399/12267) (matched: 'marked for listing other') constraint (none) extremes [1, infinity) - hits 1513/29618 nti 21 constraint (none) extremes [1, infinity) + hits 1470/26724 nti 21 constraint (none) extremes [1, infinity) English: not - (hits 12/4665) (matched: 'not lockable') constraint DS = {21} extremes [2, infinity) + (hits 12/2727) (matched: 'not lockable') constraint DS = {21} extremes [2, infinity) - (hits 1430/2225) (matched: 'unmarked for listing') constraint CS = {r3} extremes [1, infinity) + (hits 1387/2209) (matched: 'unmarked for listing') constraint CS = {r3} extremes [1, infinity) not - (hits 0/2975) constraint DS = {21} extremes [3, infinity) + (hits 0/2176) constraint DS = {21} extremes [3, infinity) - (hits 71/7202) (matched: 'marked for listing other') constraint (none) extremes [2, infinity) + (hits 71/7083) (matched: 'marked for listing other') constraint (none) extremes [2, infinity) - internal hits 2217/18908 nti r3 constraint CS = {r3} extremes [1, infinity) + internal hits 2166/18638 nti r3 constraint CS = {r3} extremes [1, infinity) - hits 3590/89666 nti 26 constraint (none) extremes [1, infinity) + hits 3570/83416 nti 6 constraint (none) extremes [1, infinity) English: - (hits 2593/44833) (matched: 'value of kind k') constraint (none) extremes [1, infinity) + (hits 2549/41708) (matched: 'value of kind k') constraint (none) extremes [1, infinity) - (hits 997/1932) (matched: 'the alfred cralle pool hall') constraint CW = {r2, r4} extremes [1, infinity) + (hits 1021/2022) (matched: 'the alfred cralle pool hall') constraint CW = {r2, r4} extremes [1, infinity) - hits 4/408 nti 27 constraint (none) extremes [1, infinity) + hits 8/864 nti 7 constraint (none) extremes [1, infinity) English: - (hits 4/204) (matched: 'person') constraint (none) extremes [1, infinity) + (hits 8/432) (matched: 'person') constraint (none) extremes [1, infinity) - hits 105/7588 nti 28 constraint CW = {r2, r4} extremes [1, infinity) + hits 131/7880 nti 8 constraint CW = {r2, r4} extremes [1, infinity) English: - (hits 105/304) (matched: 'alfred cralle pool hall') constraint CW = {r2, r4} extremes [1, infinity) + (hits 131/330) (matched: 'alfred cralle pool hall') constraint CW = {r2, r4} extremes [1, infinity) - hits 768/5022 nti 29 constraint (none) extremes [1, infinity) + hits 764/5132 nti 9 constraint (none) extremes [1, infinity) English: - (hits 768/2511) (matched: 'marked for listing other') constraint (none) extremes [1, infinity) + (hits 764/2566) (matched: 'marked for listing other') constraint (none) extremes [1, infinity) - hits 1652/38642 nti 30 constraint (none) extremes [1, infinity) + hits 1606/32876 nti 10 constraint (none) extremes [1, infinity) English: - (hits 1392/19321) (matched long text) constraint (none) extremes [1, infinity) + (hits 1350/16438) (matched long text) constraint (none) extremes [1, infinity) - (hits 260/4813) (matched long text) constraint (none) extremes [3, infinity) + (hits 256/4717) (matched long text) constraint (none) extremes [3, infinity) - hits 257/2044 nti 31 constraint (none) extremes [1, infinity) + hits 256/2100 nti 11 constraint (none) extremes [1, infinity) English: - (hits 257/1022) (matched: 'thing ( called the item being printed )') constraint (none) extremes [1, infinity) + (hits 256/1050) (matched: 'thing ( called the item being printed )') constraint (none) extremes [1, infinity) - hits 1649/40686 nti 23 constraint (none) extremes [1, infinity) + hits 1606/34976 nti 23 constraint (none) extremes [1, infinity) English: ( called ) - (hits 118/1424) (matched long text) constraint DS = {23} extremes [5, infinity) + (hits 114/1610) (matched long text) constraint DS = {23} extremes [5, infinity) - (hits 1531/20225) (matched: 'the alfred cralle pool hall') constraint (none) extremes [1, infinity) + (hits 1492/17374) (matched: 'the alfred cralle pool hall') constraint (none) extremes [1, infinity) - hits 1649/40686 nti 6 constraint (none) extremes [1, infinity) + hits 1606/34988 nti 12 constraint (none) extremes [1, infinity) English: - (hits 51/10558) (matched: 'at least two stamped envelopes') constraint (none) extremes [2, infinity) + (hits 51/10290) (matched: 'at least two stamped envelopes') constraint (none) extremes [2, infinity) - (hits 156/20292) (matched: 'something') constraint (none) extremes [1, infinity) + (hits 156/17443) (matched: 'something') constraint (none) extremes [1, infinity) - (hits 22/10507) (matched: 'something switched on') constraint (none) extremes [2, infinity) + (hits 22/10239) (matched: 'something switched on') constraint (none) extremes [2, infinity) - (hits 2/10485) (matched: 'the person') constraint (none) extremes [2, infinity) + (hits 2/10217) (matched: 'the person') constraint (none) extremes [2, infinity) ^ ^ - (hits 0/10483) constraint (none) extremes [2, infinity) + (hits 0/10215) constraint (none) extremes [2, infinity) - (hits 56/10483) (matched: 'the alfred cralle pool hall') constraint (none) extremes [2, infinity) + (hits 54/10215) (matched: 'the alfred cralle pool hall') constraint (none) extremes [2, infinity) - (hits 617/10427) (matched: 'a marked for listing person') constraint (none) extremes [2, infinity) + (hits 593/10161) (matched: 'a marked for listing person') constraint (none) extremes [2, infinity) - (hits 745/19439) (matched: 'marked for listing other people') constraint (none) extremes [1, infinity) + (hits 728/16616) (matched: 'marked for listing other people') constraint (none) extremes [1, infinity) - hits 1413/40652 nti 7 constraint (none) extremes [1, infinity) + hits 1372/34958 nti 13 constraint (none) extremes [1, infinity) English: - (hits 1029/20326) (matched: 'nancy johnson memorial square') constraint (none) extremes [1, infinity) + (hits 990/17479) (matched: 'nancy johnson memorial square') constraint (none) extremes [1, infinity) - (hits 384/10129) (matched: 'marked for listing other people') constraint (none) extremes [2, infinity) + (hits 382/9887) (matched: 'marked for listing other people') constraint (none) extremes [2, infinity) - hits 2/148 nti 8 constraint (none) extremes [1, infinity) + hits 2/300 nti 14 constraint (none) extremes [1, infinity) English: - (hits 2/74) (matched: 'person') constraint (none) extremes [1, infinity) + (hits 2/150) (matched: 'person') constraint (none) extremes [1, infinity) - (hits 0/67) constraint (none) extremes [2, infinity) + (hits 0/111) constraint (none) extremes [2, infinity) - hits 56/7042 nti 9 constraint (none) extremes [1, infinity) + hits 54/7078 nti 15 constraint (none) extremes [1, infinity) English: - (hits 56/129) (matched: 'alfred cralle pool hall') constraint CW = {r2, r4} extremes [1, infinity) + (hits 54/127) (matched: 'alfred cralle pool hall') constraint CW = {r2, r4} extremes [1, infinity) - (hits 0/1386) constraint (none) extremes [2, infinity) + (hits 0/1426) constraint (none) extremes [2, infinity) - internal hits 1086/31390 nti 10 constraint (none) extremes [0, 0] + internal hits 4641/9496 nti 16 constraint (none) extremes [0, 0] - internal hits 4743/9700 nti 11 constraint (none) extremes [0, 0] - - hits 102/544 nti 12 constraint (none) extremes [1, infinity) + hits 98/536 nti 17 constraint (none) extremes [1, infinity) English: - (hits 102/272) (matched: 'the dark') constraint (none) extremes [1, infinity) + (hits 98/268) (matched: 'the dark') constraint (none) extremes [1, infinity) (hits 0/170) constraint (none) extremes [1, infinity) - hits 102/544 nti 24 constraint (none) extremes [1, infinity) + hits 98/536 nti 24 constraint (none) extremes [1, infinity) English: ( called ) (hits 0/66) constraint DS = {24} extremes [5, infinity) - (hits 102/272) (matched: 'the dark') constraint (none) extremes [1, infinity) + (hits 98/268) (matched: 'the dark') constraint (none) extremes [1, infinity) - hits 102/544 nti 13 constraint (none) extremes [1, infinity) + hits 98/536 nti 18 constraint (none) extremes [1, infinity) English: (hits 8/153) (matched: 'every dvd') constraint (none) extremes [2, infinity) - (hits 0/264) constraint (none) extremes [1, infinity) + (hits 0/260) constraint (none) extremes [1, infinity) (hits 0/145) constraint (none) extremes [2, infinity) @@ -7350,65 +7356,65 @@ (hits 0/145) constraint (none) extremes [2, infinity) - (hits 94/264) (matched: 'the dark') constraint (none) extremes [1, infinity) + (hits 90/260) (matched: 'the dark') constraint (none) extremes [1, infinity) - hits 102/566 nti 14 constraint (none) extremes [1, infinity) + hits 98/558 nti 19 constraint (none) extremes [1, infinity) English: - (hits 101/283) (matched: 'cold comfort') constraint (none) extremes [1, infinity) + (hits 97/279) (matched: 'cold comfort') constraint (none) extremes [1, infinity) (hits 0/151) constraint (none) extremes [2, infinity) (hits 1/182) (matched: 'the dark') constraint (none) extremes [1, infinity) - hits 118/236 nti 15 constraint (none) extremes [1, infinity) + hits 114/228 nti 20 constraint (none) extremes [1, infinity) English:
    {...} - (hits 83/95) (matched: 'the item being printed') constraint (none) extremes [2, infinity) + (hits 79/91) (matched: 'the item being printed') constraint (none) extremes [2, infinity) {...} (hits 35/35) (matched: 'random bystander') constraint (none) extremes [1, infinity) - internal hits 79/21422 nti 16 constraint (none) extremes [1, infinity) + internal hits 79/20886 nti 21 constraint (none) extremes [1, infinity) - internal hits 336/62416 nti 17 constraint (none) extremes [1, infinity) + internal hits 288/56174 nti 22 constraint (none) extremes [1, infinity) - hits 1940/4790 nti 18 constraint (none) extremes [1, infinity) + hits 957/2846 nti 23 constraint (none) extremes [1, infinity) English:
    - (hits 109/385) (matched long text) constraint (none) extremes [2, infinity) + (hits 118/398) (matched long text) constraint (none) extremes [2, infinity) - (hits 1831/2286) (matched long text) constraint (none) extremes [1, infinity) + (hits 839/1305) (matched long text) constraint (none) extremes [1, infinity) - hits 3118/7704 nti 31 constraint (none) extremes [1, infinity) + hits 2135/5796 nti 31 constraint (none) extremes [1, infinity) English: variable/variables - (hits 2/342) (matched: 'text variables') constraint DS = {31} extremes [2, infinity) + (hits 2/350) (matched: 'text variables') constraint DS = {31} extremes [2, infinity) that/which vary/varies - (hits 59/323) (matched: 'action name based rule producing nothing that varies') constraint DS = {31} extremes [3, infinity) + (hits 59/316) (matched: 'action name based rule producing nothing that varies') constraint DS = {31} extremes [3, infinity) - (hits 2436/3791) (matched long text) constraint (none) extremes [1, infinity) + (hits 1451/2837) (matched long text) constraint (none) extremes [1, infinity) - (hits 221/1355) (matched: 'Represents geographical locations, both indoor + (hits 221/1386) (matched: 'Represents geographical locations, both indoor and outdoor, which are not necessarily areas in a building. A player in one room is mostly unable to sense, or interact with, anything in a different room. Rooms are arranged in a map.') constraint (none) extremes [1, infinity) - (hits 113/1134) (matched: 'for deciding whether all includes rules') constraint (none) extremes [1, infinity) + (hits 116/1165) (matched: 'for deciding whether all includes rules') constraint (none) extremes [1, infinity) - (hits 257/1021) (matched: 'thing ( called the item being printed )') constraint (none) extremes [1, infinity) + (hits 256/1049) (matched: 'thing ( called the item being printed )') constraint (none) extremes [1, infinity) - (hits 3/764) (matched: 'smelling') constraint (none) extremes [1, infinity) + (hits 3/793) (matched: 'smelling') constraint (none) extremes [1, infinity) - (hits 27/761) (matched long text) constraint (none) extremes [1, infinity) + (hits 27/790) (matched long text) constraint (none) extremes [1, infinity) - hits 1252/3018 nti 19 constraint (none) extremes [1, infinity) + hits 1252/3018 nti 24 constraint (none) extremes [1, infinity) English:
    (hits 162/790) (matched: 'an ice cream cone') constraint (none) extremes [2, infinity) (hits 1090/1347) (matched long text) constraint (none) extremes [1, infinity) - hits 1252/3018 nti 20 constraint (none) extremes [1, infinity) + hits 1252/3018 nti 25 constraint (none) extremes [1, infinity) English: (hits 74/1509) (matched: 'unmarked for listing') constraint (none) extremes [1, infinity) @@ -7420,11 +7426,11 @@ global constraint CS = {30} extremes [1, 1] global - (hits 0/2) constraint DS = {30} extremes [2, infinity) + constraint DS = {30} extremes [2, infinity) (hits 61/62) (matched: 'action name based rule producing nothing') constraint (none) extremes [1, infinity) - hits 61/124 nti 21 constraint (none) extremes [1, infinity) + hits 61/124 nti 26 constraint (none) extremes [1, infinity) English: (hits 61/62) (matched: 'action name based rule producing nothing') constraint (none) extremes [1, infinity) @@ -7437,76 +7443,76 @@ (hits 0/1) constraint (none) extremes [1, infinity) - internal hits 8/18384 nti 22 constraint (none) extremes [0, 0] + internal hits 8/15470 nti 27 constraint (none) extremes [0, 0] - internal hits 0/9340 nti 23 constraint (none) extremes [0, 0] + internal hits 2/9036 nti 28 constraint (none) extremes [0, 0] - internal hits 9/18492 nti 24 constraint (none) extremes [0, 0] + internal hits 8/15578 nti 29 constraint (none) extremes [0, 0] - internal hits 0/18492 nti 25 constraint (none) extremes [0, 0] + internal hits 0/15578 nti 30 constraint (none) extremes [0, 0] - hits 8448/18780 nti 27 constraint (none) extremes [1, infinity) + hits 6977/15866 nti 27 constraint (none) extremes [1, infinity) English: ( ) - (hits 0/2048) constraint DS = {27} extremes [3, infinity) + (hits 0/2126) constraint DS = {27} extremes [3, infinity) - (hits 144/9390) (matched: 'the person reaching') constraint (none) extremes [1, infinity) + (hits 144/7933) (matched: 'the person reaching') constraint (none) extremes [1, infinity) - (hits 0/9246) constraint (none) extremes [1, infinity) + (hits 0/7789) constraint (none) extremes [1, infinity) - (hits 0/9246) constraint (none) extremes [1, infinity) + (hits 0/7789) constraint (none) extremes [1, infinity) - (hits 54/9246) (matched: 'abs function') constraint (none) extremes [1, infinity) + (hits 54/7789) (matched: 'abs function') constraint (none) extremes [1, infinity) - (hits 0/9192) constraint (none) extremes [1, infinity) + (hits 0/7735) constraint (none) extremes [1, infinity) - (hits 18/9192) (matched: 'fixed in place') constraint (none) extremes [1, infinity) + (hits 18/7735) (matched: 'fixed in place') constraint (none) extremes [1, infinity) - (hits 0/9174) constraint (none) extremes [1, infinity) + (hits 0/7717) constraint (none) extremes [1, infinity) - (hits 20/9174) (matched: 'the remainder after dividing it by 2') constraint (none) extremes [1, infinity) + (hits 20/7717) (matched: 'the remainder after dividing it by 2') constraint (none) extremes [1, infinity) - (hits 9/9154) (matched: 'active') constraint (none) extremes [1, infinity) + (hits 9/7697) (matched: 'active') constraint (none) extremes [1, infinity) - (hits 116/9145) (matched: 'a supporter ( called the chaise )') constraint (none) extremes [1, infinity) + (hits 116/7688) (matched: 'a supporter ( called the chaise )') constraint (none) extremes [1, infinity) - (hits 0/1484) constraint DS = {26} extremes [2, infinity) + (hits 0/1311) constraint DS = {26} extremes [2, infinity) member/members of - (hits 0/2016) constraint DS = {27} extremes [3, infinity) + (hits 0/2056) constraint DS = {27} extremes [3, infinity) member/members of - (hits 0/2016) constraint DS = {27} extremes [3, infinity) + (hits 0/2056) constraint DS = {27} extremes [3, infinity) of - (hits 2/2016) (matched: 'the destination of the player') constraint DS = {27} extremes [3, infinity) + (hits 2/2056) (matched: 'the destination of the player') constraint DS = {27} extremes [3, infinity) - (hits 0/4670) constraint (none) extremes [2, infinity) + (hits 0/4518) constraint (none) extremes [2, infinity) entry of/in/from - (hits 0/1342) constraint DS = {27} extremes [4, infinity) + (hits 0/1395) constraint DS = {27} extremes [4, infinity) - (hits 0/9027) constraint (none) extremes [1, infinity) + (hits 0/7570) constraint (none) extremes [1, infinity) - (hits 0/9027) constraint (none) extremes [1, infinity) + (hits 0/7570) constraint (none) extremes [1, infinity) - (hits 0/9027) constraint (none) extremes [1, infinity) + (hits 0/7570) constraint (none) extremes [1, infinity) - hits 4/18384 nti 25 constraint (none) extremes [1, infinity) + hits 4/15470 nti 25 constraint (none) extremes [1, infinity) English: where - (hits 4/1525) (matched long text) constraint DS = {25} extremes [3, infinity) + (hits 4/1305) (matched long text) constraint DS = {25} extremes [3, infinity) where - (hits 0/1521) constraint DS = {25} extremes [3, infinity) + (hits 0/1301) constraint DS = {25} extremes [3, infinity) - (hits 0/9188) constraint (none) extremes [1, infinity) + (hits 0/7731) constraint (none) extremes [1, infinity) - hits 5811/24026 nti 26 constraint (none) extremes [1, infinity) + hits 5377/21072 nti 31 constraint (none) extremes [1, infinity) English: - (hits 1637/6124) (matched: 'the room back the other way') constraint (none) extremes [2, infinity) + (hits 1607/5978) (matched: 'the room back the other way') constraint (none) extremes [2, infinity) - (hits 1066/10376) (matched: 'room back the other way') constraint (none) extremes [1, infinity) + (hits 1029/8929) (matched: 'room back the other way') constraint (none) extremes [1, infinity) - (hits 897/9310) (matched: 'within the player's sight') constraint (none) extremes [1, infinity) + (hits 828/7900) (matched: 'within the player's sight') constraint (none) extremes [1, infinity) - (hits 2211/8413) (matched: 'current item from the multiple object list') constraint (none) extremes [1, infinity) + (hits 1913/7072) (matched: 'current item from the multiple object list') constraint (none) extremes [1, infinity) nti 6 constraint (none) extremes [1, infinity) English: @@ -7517,180 +7523,178 @@ constraint (none) extremes [1, infinity) - hits 173/1124 nti 27 constraint (none) extremes [1, infinity) + hits 169/1114 nti 6 constraint (none) extremes [1, infinity) English: - (hits 173/562) (matched: 'the second noun') constraint (none) extremes [1, infinity) + (hits 169/557) (matched: 'the second noun') constraint (none) extremes [1, infinity) - internal hits 1137/27150 nti 28 constraint (none) extremes [1, infinity) + internal hits 1068/20668 nti 7 constraint (none) extremes [1, infinity) - internal hits 897/18620 nti 29 constraint (none) extremes [1, infinity) + internal hits 828/15800 nti 8 constraint (none) extremes [1, infinity) - internal hits 2296/19516 nti 30 constraint (none) extremes [1, infinity) + internal hits 1998/16956 nti 9 constraint (none) extremes [1, infinity) - hits 105/18348 nti 7 constraint DS = {7} extremes [3, infinity) + hits 86/15434 nti 7 constraint DS = {7} extremes [3, infinity) English: of {...} - (hits 105/1288) (matched long text) constraint DS = {7} extremes [3, infinity) + (hits 86/1338) (matched long text) constraint DS = {7} extremes [3, infinity) - internal hits 490/18348 nti 31 constraint (none) extremes [1, infinity) + internal hits 490/15434 nti 10 constraint (none) extremes [1, infinity) - internal hits 474/18054 nti 6 constraint (none) extremes [1, infinity) + internal hits 474/15140 nti 11 constraint (none) extremes [1, infinity) - hits 139/2968 nti 26 constraint DS = {26} extremes [2, infinity) + hits 139/2622 nti 26 constraint DS = {26} extremes [2, infinity) English: entry - (hits 135/1484) (matched: 'a final response rule entry') constraint DS = {26} extremes [2, infinity) + (hits 135/1311) (matched: 'a final response rule entry') constraint DS = {26} extremes [2, infinity) in row of - (hits 0/369) constraint DS = {26} extremes [6, infinity) + (hits 0/362) constraint DS = {26} extremes [6, infinity) listed in - (hits 2/1108) (matched: 'a topic listed in source') constraint DS = {26} extremes [4, infinity) + (hits 2/1057) (matched: 'a topic listed in source') constraint DS = {26} extremes [4, infinity) corresponding to of in - (hits 0/187) constraint DS = {26} extremes [8, infinity) + (hits 0/183) constraint DS = {26} extremes [8, infinity) of in - (hits 2/579) (matched long text) constraint DS = {26} extremes [5, infinity) + (hits 2/556) (matched long text) constraint DS = {26} extremes [5, infinity) - internal hits 3/19876 nti 7 constraint (none) extremes [1, infinity) - - hits 1074/2238 nti 8 constraint (none) extremes [3, infinity) + hits 1037/2164 nti 12 constraint (none) extremes [3, infinity) English: - (hits 0/861) constraint DS = {19} extremes [3, infinity) + (hits 0/727) constraint DS = {19} extremes [3, infinity) - (hits 1074/1108) (matched long text) constraint (none) extremes [3, infinity) + (hits 1037/1071) (matched long text) constraint (none) extremes [3, infinity) - hits 11/22 nti 9 constraint FS = {7} extremes [2, infinity) + hits 11/22 nti 13 constraint FS = {7} extremes [2, infinity) English: (hits 11/11) (matched long text) constraint FS = {7} extremes [2, infinity) - hits 2149/6658 nti 10 constraint (none) extremes [2, infinity) + hits 2075/6474 nti 14 constraint (none) extremes [2, infinity) English: - (hits 0/667) constraint DS = {29} & FS = {9} extremes [4, infinity) + (hits 0/719) constraint DS = {29} & FS = {9} extremes [4, infinity) - (hits 224/1684) (matched long text) constraint DS = {14} & FS = {6} extremes [3, infinity) + (hits 224/1771) (matched long text) constraint DS = {14} & FS = {6} extremes [3, infinity) - (hits 1925/2174) (matched long text) constraint FS = {6} extremes [2, infinity) + (hits 1851/2081) (matched long text) constraint FS = {6} extremes [2, infinity) nti 29 constraint DS = {29} extremes [3, infinity) English: to constraint DS = {29} extremes [3, infinity) - hits 260/9966 nti 11 constraint (none) extremes [3, infinity) + hits 256/9774 nti 15 constraint (none) extremes [3, infinity) English: - (hits 169/4200) (matched long text) constraint DS = {13} extremes [3, infinity) + (hits 165/3808) (matched long text) constraint DS = {13} extremes [3, infinity) - (hits 91/2770) (matched long text) constraint DS = {30} extremes [4, infinity) + (hits 91/2694) (matched long text) constraint DS = {30} extremes [4, infinity) - hits 448/30386 nti 28 constraint DS = {13} extremes [2, infinity) + hits 440/28794 nti 28 constraint DS = {13} extremes [2, infinity) English: - (hits 447/8913) (matched long text) constraint DS = {13} extremes [2, infinity) + (hits 439/8219) (matched long text) constraint DS = {13} extremes [2, infinity) not - (hits 1/5380) (matched: 'not carried by the person asked') constraint DS = {13, 28} extremes [3, infinity) + (hits 1/4790) (matched: 'not carried by the person asked') constraint DS = {13, 28} extremes [3, infinity) - hits 183/23714 nti 12 constraint DS = {30} extremes [3, infinity) + hits 183/23220 nti 16 constraint DS = {30} extremes [3, infinity) English: - (hits 0/2182) constraint DS = {29, 30} extremes [5, infinity) + (hits 0/2288) constraint DS = {29, 30} extremes [5, infinity) - (hits 32/3732) (matched long text) constraint DS = {14, 30} extremes [4, infinity) + (hits 32/3673) (matched long text) constraint DS = {14, 30} extremes [4, infinity) - (hits 151/6001) (matched: 'which provide the property initial appearance') constraint DS = {30} extremes [3, infinity) + (hits 151/5614) (matched: 'which provide the property initial appearance') constraint DS = {30} extremes [3, infinity) - internal hits 791/18290 nti 13 constraint (none) extremes [1, infinity) + internal hits 768/15376 nti 17 constraint (none) extremes [1, infinity) - internal hits 1208/34552 nti 14 constraint (none) extremes [0, 0] + internal hits 1205/33664 nti 18 constraint (none) extremes [0, 0] - hits 4662/9648 nti 15 constraint (none) extremes [1, infinity) + hits 4514/9376 nti 19 constraint (none) extremes [1, infinity) English: - (hits 30/4824) (matched: 'the person asked') constraint (none) extremes [1, infinity) + (hits 30/4688) (matched: 'the person asked') constraint (none) extremes [1, infinity) - (hits 30/4794) (matched: 'a person ( called the owner )') constraint (none) extremes [1, infinity) + (hits 30/4658) (matched: 'a person ( called the owner )') constraint (none) extremes [1, infinity) ^ - (hits 4602/4764) (matched long text) constraint (none) extremes [1, infinity) + (hits 4454/4628) (matched long text) constraint (none) extremes [1, infinity) - hits 797/2188 nti 16 constraint (none) extremes [1, infinity) + hits 781/2156 nti 20 constraint (none) extremes [1, infinity) English: - (hits 143/1094) (matched: 'the second noun') constraint (none) extremes [1, infinity) + (hits 139/1078) (matched: 'the second noun') constraint (none) extremes [1, infinity) - (hits 102/951) (matched: 'the dark') constraint (none) extremes [1, infinity) + (hits 98/939) (matched: 'the dark') constraint (none) extremes [1, infinity) ^ - (hits 552/849) (matched long text) constraint (none) extremes [1, infinity) + (hits 544/841) (matched long text) constraint (none) extremes [1, infinity) - hits 2/496 nti 8 constraint (none) extremes [1, infinity) + hits 1/494 nti 8 constraint (none) extremes [1, infinity) English: ( ) - (hits 0/2) constraint DS = {8} extremes [3, infinity) + (hits 0/18) constraint DS = {8} extremes [3, infinity) constraint CS = {r0} extremes [1, 1] - (hits 0/248) constraint (none) extremes [1, infinity) + (hits 0/247) constraint (none) extremes [1, infinity) - (hits 2/248) (matched: 'switched off') constraint (none) extremes [1, infinity) + (hits 1/247) (matched: 'half-eaten') constraint (none) extremes [1, infinity) - hits 1071/2634 nti 17 constraint (none) extremes [0, infinity) + hits 1032/2556 nti 21 constraint (none) extremes [0, infinity) English: - (hits 1069/1317) (matched long text) constraint (none) extremes [0, infinity) + (hits 1031/1278) (matched long text) constraint (none) extremes [0, infinity) - (hits 2/248) (matched: 'switched off') constraint (none) extremes [1, infinity) + (hits 1/247) (matched: 'half-eaten') constraint (none) extremes [1, infinity) - hits 1325/3170 nti 17 constraint (none) extremes [0, infinity) + hits 1287/3092 nti 17 constraint (none) extremes [0, infinity) English: ( ) - (hits 0/1285) constraint DS = {17} extremes [3, infinity) + (hits 0/1282) constraint DS = {17} extremes [3, infinity) , and - (hits 0/1172) constraint DS = {17} extremes [4, infinity) + (hits 0/1185) constraint DS = {17} extremes [4, infinity) and - (hits 97/1285) (matched long text) constraint DS = {17} extremes [3, infinity) + (hits 97/1282) (matched long text) constraint DS = {17} extremes [3, infinity) , or - (hits 0/1075) constraint DS = {17} extremes [4, infinity) + (hits 0/1088) constraint DS = {17} extremes [4, infinity) or - (hits 31/1188) (matched long text) constraint DS = {17} extremes [3, infinity) + (hits 31/1185) (matched long text) constraint DS = {17} extremes [3, infinity) - (hits 0/1457) constraint (none) extremes [1, infinity) + (hits 0/1418) constraint (none) extremes [1, infinity) - (hits 1197/1457) (matched long text) constraint (none) extremes [0, infinity) + (hits 1159/1418) (matched long text) constraint (none) extremes [0, infinity) - internal hits 0/2914 nti 18 constraint (none) extremes [1, infinity) + internal hits 0/2836 nti 22 constraint (none) extremes [1, infinity) - hits 1197/2914 nti 16 constraint (none) extremes [0, infinity) + hits 1159/2836 nti 16 constraint (none) extremes [0, infinity) English: - (hits 1/1457) (matched: 'continuing') constraint (none) extremes [1, infinity) + (hits 1/1418) (matched: 'continuing') constraint (none) extremes [1, infinity) not - (hits 0/376) constraint DS = {16} extremes [2, infinity) + (hits 0/963) constraint DS = {16} extremes [2, infinity) - (hits 83/1456) (matched long text) constraint (none) extremes [1, infinity) + (hits 82/1417) (matched long text) constraint (none) extremes [1, infinity) - (hits 0/1091) constraint DS = {11} extremes [3, infinity) + (hits 0/1058) constraint DS = {11} extremes [3, infinity) - (hits 0/935) constraint DS = {12} extremes [4, infinity) + (hits 0/931) constraint DS = {12} extremes [4, infinity) - (hits 28/1373) (matched long text) constraint (none) extremes [1, infinity) + (hits 28/1335) (matched long text) constraint (none) extremes [1, infinity) - (hits 0/902) constraint DS = {14} extremes [2, infinity) + (hits 0/1066) constraint DS = {14} extremes [2, infinity) - (hits 1074/1119) (matched long text) constraint (none) extremes [3, infinity) + (hits 1037/1082) (matched long text) constraint (none) extremes [3, infinity) - (hits 11/271) (matched long text) constraint (none) extremes [0, infinity) + (hits 11/270) (matched long text) constraint (none) extremes [0, infinity) - hits 83/2912 nti 10 constraint (none) extremes [1, infinity) + hits 82/2834 nti 10 constraint (none) extremes [1, infinity) English: - (hits 0/914) constraint DS = {9, 19} extremes [3, infinity) + (hits 0/776) constraint DS = {9, 19} extremes [3, infinity) - (hits 83/1445) (matched long text) constraint (none) extremes [1, infinity) + (hits 82/1406) (matched long text) constraint (none) extremes [1, infinity) not - (hits 0/1082) constraint DS = {10} extremes [2, infinity) + (hits 0/1041) constraint DS = {10} extremes [2, infinity) - hits 11/542 nti 15 constraint (none) extremes [0, infinity) + hits 11/540 nti 15 constraint (none) extremes [0, infinity) English: ^ (hits 0/11) constraint (none) extremes [0, infinity) @@ -7699,75 +7703,55 @@ not constraint DS = {15} extremes [2, infinity) - hits 22/2392 nti 9 constraint DS = {9, 19} extremes [3, infinity) + hits 22/2114 nti 9 constraint DS = {9, 19} extremes [3, infinity) English: is/are {...} - (hits 22/942) (matched long text) constraint DS = {9, 19} extremes [3, infinity) + (hits 22/812) (matched long text) constraint DS = {9, 19} extremes [3, infinity) - internal hits 94/2912 nti 19 constraint (none) extremes [1, infinity) + internal hits 93/2834 nti 23 constraint (none) extremes [1, infinity) - internal hits 1/2914 nti 20 constraint (none) extremes [1, infinity) - - hits 28/2746 nti 21 constraint (none) extremes [1, infinity) - English: - - (hits 28/1373) (matched long text) constraint (none) extremes [1, infinity) - - hits 0/1804 nti 22 constraint DS = {14} extremes [2, infinity) - English: - - (hits 0/902) constraint DS = {14} extremes [2, infinity) - - hits 0/2182 nti 23 constraint DS = {11} extremes [3, infinity) - English: - - (hits 0/1091) constraint DS = {11} extremes [3, infinity) - - hits 0/1870 nti 24 constraint DS = {12} extremes [4, infinity) - English: - - (hits 0/935) constraint DS = {12} extremes [4, infinity) + internal hits 1/2836 nti 24 constraint (none) extremes [1, infinity) hits 1374/2748 nti 18 constraint (none) extremes [1, infinity) English: ( ) - (hits 0/1268) constraint DS = {18} extremes [3, infinity) + (hits 0/1319) constraint DS = {18} extremes [3, infinity) (hits 1374/1374) (matched long text) constraint (none) extremes [1, infinity) - hits 2627/5254 nti 20 constraint (none) extremes [1, infinity) + hits 772/1544 nti 20 constraint (none) extremes [1, infinity) English: ( ) - (hits 0/351) constraint DS = {20} extremes [3, infinity) + (hits 0/302) constraint DS = {20} extremes [3, infinity) - (hits 239/2627) (matched: 'might not appreciate') constraint (none) extremes [1, infinity) + (hits 6/772) (matched: ''re') constraint (none) extremes [1, infinity) - (hits 2388/2388) (matched long text) constraint (none) extremes [1, infinity) + (hits 766/766) (matched long text) constraint (none) extremes [1, infinity) - hits 239/5254 nti 19 constraint (none) extremes [1, infinity) + hits 6/1544 nti 19 constraint (none) extremes [1, infinity) English: - (hits 0/2581) constraint (none) extremes [1, infinity) + (hits 0/758) constraint (none) extremes [1, infinity) verb - (hits 0/749) constraint DS = {19} extremes [2, infinity) + (hits 0/373) constraint DS = {19} extremes [2, infinity) adjective - (hits 0/749) constraint DS = {19} extremes [2, infinity) + (hits 0/373) constraint DS = {19} extremes [2, infinity) - (hits 210/2581) (matched: 'do not fit') constraint (none) extremes [1, infinity) + (hits 6/758) (matched: ''re') constraint (none) extremes [1, infinity) verb - (hits 0/490) constraint DS = {19} extremes [3, infinity) + (hits 0/335) constraint DS = {19} extremes [3, infinity) - (hits 29/855) (matched: 'might not appreciate') constraint (none) extremes [2, infinity) + (hits 0/415) constraint (none) extremes [2, infinity) - (hits 0/2342) constraint (none) extremes [1, infinity) + (hits 0/752) constraint (none) extremes [1, infinity) - internal hits 0/4684 nti 25 constraint (none) extremes [1, infinity) + internal hits 0/1504 nti 25 constraint (none) extremes [1, infinity) internal hits 1374/2748 nti 26 constraint (none) extremes [1, infinity) - internal hits 2388/4776 nti 27 constraint (none) extremes [1, infinity) + internal hits 766/1532 nti 27 constraint (none) extremes [1, infinity) - internal hits 1102/4644 nti r4 constraint CW = {r2, r4} extremes [1, infinity) + internal hits 1152/4876 nti r4 constraint CW = {r2, r4} extremes [1, infinity) internal hits 4/252 nti 28 constraint (none) extremes [1, infinity) @@ -7800,10 +7784,10 @@ variable initial value (hits 1/1) (matched: 'variable initial value') constraint CS = {21} extremes [3, 3] - hits 34/290 nti 20 constraint DS = {20} extremes [2, infinity) + hits 34/294 nti 20 constraint DS = {20} extremes [2, infinity) English: property {...} - (hits 34/145) (matched: 'property initial appearance') constraint DS = {20} extremes [2, infinity) + (hits 34/147) (matched: 'property initial appearance') constraint DS = {20} extremes [2, infinity) internal hits 69/430 nti 7 constraint (none) extremes [1, infinity) @@ -7816,7 +7800,7 @@ hits 0/292 nti 22 constraint DS = {22} extremes [1, infinity) English: {***} of {***} - (hits 0/1) constraint DS = {22} extremes [1, infinity) + constraint DS = {22} extremes [1, infinity) internal nti 11 constraint (none) extremes [1, infinity) @@ -7842,11 +7826,11 @@ hits 0/82 nti 26 constraint DS = {26} extremes [4, infinity) English: {...} is/are not {...} - (hits 0/35) constraint DS = {26} extremes [5, infinity) + (hits 0/37) constraint DS = {26} extremes [5, infinity) {} is/are - (hits 0/35) constraint DS = {26} extremes [4, infinity) + (hits 0/38) constraint DS = {26} extremes [4, infinity) {...} is/are - (hits 0/35) constraint DS = {26} extremes [4, infinity) + (hits 0/38) constraint DS = {26} extremes [4, infinity) nti 25 constraint (none) extremes [1, infinity) English: @@ -7857,42 +7841,63 @@ {...} constraint (none) extremes [1, infinity) - internal hits 82/164 nti 13 constraint (none) extremes [1, infinity) + hits 10/292 nti 27 constraint CS = {27} extremes [1, 3] + English: + indefinite article + (hits 1/2) (matched: 'indefinite article') constraint CS = {27} extremes [2, 2] + plural-named + (hits 1/6) (matched: 'plural-named') constraint CS = {27} extremes [1, 1] + proper-named + (hits 1/5) (matched: 'proper-named') constraint CS = {27} extremes [1, 1] + printed name + (hits 1/1) (matched: 'printed name') constraint CS = {27} extremes [2, 2] + printed plural name + (hits 1/2) (matched: 'printed plural name') constraint CS = {27} extremes [3, 3] + publicly-named + (hits 1/4) (matched: 'publicly-named') constraint CS = {27} extremes [1, 1] + privately-named + (hits 1/3) (matched: 'privately-named') constraint CS = {27} extremes [1, 1] + adaptive text viewpoint + (hits 1/1) (matched: 'adaptive text viewpoint') constraint CS = {27} extremes [3, 3] + neuter + (hits 1/2) (matched: 'neuter') constraint CS = {27} extremes [1, 1] + female + (hits 1/1) (matched: 'female') constraint CS = {27} extremes [1, 1] - internal hits 123/246 nti 14 constraint (none) extremes [1, infinity) + hits 1191/2382 nti 28 constraint DS = {28} extremes [2, infinity) + English: + {...} rule + (hits 1191/1191) (matched long text) constraint DS = {28} extremes [2, infinity) - hits 431/862 nti 27 constraint (none) extremes [1, infinity) + internal hits 123/246 nti 13 constraint (none) extremes [1, infinity) + + hits 431/862 nti 29 constraint (none) extremes [1, infinity) English: (hits 0/418) constraint (none) extremes [2, infinity) rules/rulebook - (hits 24/165) (matched: 'does the player mean rules') constraint DS = {27} extremes [2, infinity) + (hits 24/167) (matched: 'does the player mean rules') constraint DS = {29} extremes [2, infinity) at {***} - (hits 0/141) constraint DS = {27} extremes [1, infinity) + (hits 0/144) constraint DS = {29} extremes [1, infinity) to {***} - (hits 0/141) constraint DS = {27} extremes [1, infinity) + (hits 0/144) constraint DS = {29} extremes [1, infinity) definition {***} - (hits 0/141) constraint DS = {27} extremes [1, infinity) + (hits 0/144) constraint DS = {29} extremes [1, infinity) {...} (hits 407/407) (matched long text) constraint (none) extremes [1, infinity) - nti 28 constraint DS = {28} extremes [2, infinity) + nti 30 constraint DS = {30} extremes [2, infinity) English: {...} rules - constraint DS = {28} extremes [2, infinity) + constraint DS = {30} extremes [2, infinity) {...} rulebook - constraint DS = {28} extremes [2, infinity) + constraint DS = {30} extremes [2, infinity) - hits 7/14 nti 15 constraint (none) extremes [1, infinity) - English: - - (hits 0/7) constraint (none) extremes [1, infinity) - {...} - (hits 7/7) (matched: 'specific carry out rulebook') constraint (none) extremes [1, infinity) + internal hits 82/164 nti 14 constraint (none) extremes [1, infinity) - internal hits 371/790 nti 16 constraint (none) extremes [1, infinity) + internal hits 371/790 nti 15 constraint (none) extremes [1, infinity) - hits 395/790 nti 17 constraint (none) extremes [1, infinity) + hits 395/790 nti 16 constraint (none) extremes [1, infinity) English: (hits 19/395) (matched: 'a first turn sequence rule') constraint (none) extremes [2, infinity) @@ -7901,174 +7906,330 @@ (hits 373/373) (matched long text) constraint (none) extremes [1, infinity) - hits 395/790 nti 30 constraint (none) extremes [1, infinity) + hits 395/790 nti 6 constraint (none) extremes [1, infinity) English: rule for/about/on - (hits 13/187) (matched long text) constraint DS = {30} extremes [3, infinity) + (hits 13/356) (matched long text) constraint DS = {6} extremes [3, infinity) rule - (hits 0/179) constraint DS = {30} extremes [2, infinity) + (hits 0/351) constraint DS = {6} extremes [2, infinity) first rule - (hits 0/174) constraint DS = {30} extremes [3, infinity) + (hits 0/343) constraint DS = {6} extremes [3, infinity) first - (hits 3/179) (matched: 'first turn sequence rule') constraint DS = {30} extremes [2, infinity) + (hits 3/351) (matched: 'first turn sequence rule') constraint DS = {6} extremes [2, infinity) last rule - (hits 0/171) constraint DS = {30} extremes [3, infinity) + (hits 0/340) constraint DS = {6} extremes [3, infinity) last - (hits 3/176) (matched: 'last turn sequence rule') constraint DS = {30} extremes [2, infinity) + (hits 3/348) (matched: 'last turn sequence rule') constraint DS = {6} extremes [2, infinity) (hits 376/376) (matched long text) constraint (none) extremes [1, infinity) - hits 395/790 nti 29 constraint (none) extremes [1, infinity) + hits 395/790 nti 31 constraint (none) extremes [1, infinity) English: {when ... begins} - (hits 4/168) (matched long text) constraint DS = {29} extremes [3, infinity) + (hits 4/82) (matched long text) constraint DS = {31} extremes [3, infinity) {when ... ends} - (hits 0/164) constraint DS = {29} extremes [3, infinity) + (hits 0/78) constraint DS = {31} extremes [3, infinity) {...} (hits 391/391) (matched long text) constraint (none) extremes [1, infinity) - hits 7/14 nti 8 constraint (none) extremes [1, infinity) + internal hits 8/1226 nti 17 constraint (none) extremes [1, infinity) + + hits 7/14 nti 10 constraint (none) extremes [1, infinity) English: outcome/outcomes - (hits 7/7) (matched long text) constraint DS = {8} extremes [2, infinity) + (hits 7/7) (matched long text) constraint DS = {10} extremes [2, infinity) default - constraint DS = {8} extremes [2, infinity) + constraint DS = {10} extremes [2, infinity) {...} constraint (none) extremes [1, infinity) nti 18 constraint (none) extremes [1, infinity) English: - constraint CS = {31} extremes [1, 2] + constraint CS = {7} extremes [1, 2] {...} constraint (none) extremes [1, infinity) - hits 18/36 nti 31 constraint CS = {31} extremes [1, 2] - English: - success - (hits 10/18) (matched: 'success') constraint CS = {31} extremes [1, 1] - failure - (hits 8/8) (matched: 'failure') constraint CS = {31} extremes [1, 1] - no outcome - constraint CS = {31} extremes [2, 2] - hits 27/54 nti 19 constraint (none) extremes [1, infinity) English: {...} (hits 10/27) (matched long text) constraint (none) extremes [1, infinity) - (hits 10/17) (matched long text) constraint DS = {7} extremes [3, infinity) + (hits 10/17) (matched long text) constraint DS = {9} extremes [3, infinity) (hits 7/7) (matched: 'there is insufficient light ( success )') constraint (none) extremes [1, infinity) - hits 20/170 nti 7 constraint DS = {7} extremes [2, infinity) + hits 20/170 nti 9 constraint DS = {9} extremes [2, infinity) English: , _and/or - (hits 0/71) constraint DS = {7} extremes [3, infinity) + (hits 0/71) constraint DS = {9} extremes [3, infinity) _,/and/or - (hits 20/77) (matched long text) constraint DS = {7} extremes [2, infinity) + (hits 20/77) (matched long text) constraint DS = {9} extremes [2, infinity) hits 27/54 nti 20 constraint (none) extremes [1, infinity) English: + {...} + (hits 10/27) (matched: 'there is sufficient light ( failure )') constraint (none) extremes [1, infinity) - (hits 27/27) (matched: 'there is sufficient light ( failure )') constraint (none) extremes [1, infinity) + (hits 17/17) (matched: 'there is sufficient light ( failure )') constraint (none) extremes [1, infinity) - hits 27/54 nti 6 constraint (none) extremes [1, infinity) + hits 17/34 nti 8 constraint (none) extremes [1, infinity) English: {...} ( - the default ) - (hits 0/3) constraint DS = {6, 31} extremes [7, infinity) + (hits 0/2) constraint DS = {7, 8} extremes [7, infinity) {...} ( - default ) - (hits 0/5) constraint DS = {6, 31} extremes [6, infinity) + (hits 0/3) constraint DS = {7, 8} extremes [6, infinity) {...} ( ) - (hits 18/21) (matched: 'there is sufficient light ( failure )') constraint DS = {6, 31} extremes [4, infinity) + (hits 12/14) (matched: 'there is sufficient light ( failure )') constraint DS = {7, 8} extremes [4, infinity) {...} ( {...} ) - (hits 0/3) constraint DS = {6} extremes [4, infinity) + (hits 0/2) constraint DS = {8} extremes [4, infinity) {...} - (hits 9/9) (matched: 'it is very likely') constraint (none) extremes [1, infinity) + (hits 5/5) (matched: 'it is very likely') constraint (none) extremes [1, infinity) - hits 5/30 nti 9 constraint CS = {9} extremes [3, 4] + hits 12/24 nti 7 constraint CS = {7} extremes [1, 2] English: - it is very likely - (hits 1/2) (matched: 'it is very likely') constraint CS = {9} extremes [4, 4] - it is likely - (hits 1/3) (matched: 'it is likely') constraint CS = {9} extremes [3, 3] - it is possible - (hits 1/2) (matched: 'it is possible') constraint CS = {9} extremes [3, 3] - it is unlikely - (hits 1/1) (matched: 'it is unlikely') constraint CS = {9} extremes [3, 3] - it is very unlikely - (hits 1/1) (matched: 'it is very unlikely') constraint CS = {9} extremes [4, 4] + success + (hits 6/12) (matched: 'success') constraint CS = {7} extremes [1, 1] + failure + (hits 6/6) (matched: 'failure') constraint CS = {7} extremes [1, 1] + no outcome + constraint CS = {7} extremes [2, 2] - internal hits 8/1226 nti 21 constraint (none) extremes [1, infinity) - - hits 35/70 nti 13 constraint (none) extremes [1, infinity) + hits 35/70 nti 14 constraint (none) extremes [1, infinity) English: ( ) - (hits 32/33) (matched long text) constraint DS = {12, 13} extremes [6, infinity) + (hits 32/33) (matched long text) constraint DS = {13, 14} extremes [6, infinity) -- -- - (hits 1/1) (matched long text) constraint DS = {12, 13} extremes [6, infinity) + (hits 1/1) (matched long text) constraint DS = {13, 14} extremes [6, infinity) (hits 2/2) (matched: 'handling the final question') constraint (none) extremes [1, infinity) - hits 35/70 nti 11 constraint (none) extremes [1, infinity) + hits 35/70 nti 12 constraint (none) extremes [1, infinity) English: ( future action ) - (hits 4/19) (matched long text) constraint DS = {11} extremes [5, infinity) + (hits 4/22) (matched long text) constraint DS = {12} extremes [5, infinity) ( {...} ) - (hits 0/17) constraint DS = {11} extremes [4, infinity) + (hits 0/23) constraint DS = {12} extremes [4, infinity) (hits 31/31) (matched: 'printing a refusal to act in the dark') constraint (none) extremes [1, infinity) - hits 35/70 nti 10 constraint (none) extremes [1, infinity) + hits 35/70 nti 11 constraint (none) extremes [1, infinity) English: {...} of/for something/anything - (hits 14/30) (matched: 'printing the plural name of something') constraint DS = {10} extremes [3, infinity) + (hits 14/25) (matched: 'printing the plural name of something') constraint DS = {11} extremes [3, infinity) {...} something/anything - (hits 5/16) (matched: 'printing a locale paragraph about something') constraint DS = {10} extremes [2, infinity) + (hits 5/11) (matched: 'printing a locale paragraph about something') constraint DS = {11} extremes [2, infinity) {...} (hits 16/16) (matched: 'printing a refusal to act in the dark') constraint (none) extremes [1, infinity) - nti 14 constraint DS = {14} extremes [2, infinity) + nti 15 constraint DS = {15} extremes [2, infinity) English: {...} activity - constraint DS = {14} extremes [2, infinity) + constraint DS = {15} extremes [2, infinity) - nti 22 constraint (none) extremes [1, infinity) + nti 16 constraint DS = {16} extremes [2, infinity) English: - - constraint (none) extremes [1, infinity) + before {...} + constraint DS = {16} extremes [2, infinity) + for {...} + constraint DS = {16} extremes [2, infinity) + after {...} + constraint DS = {16} extremes [2, infinity) + + internal hits 1/88 nti 21 constraint (none) extremes [1, infinity) + + hits 432/1426 nti 17 constraint DS = {17} extremes [2, infinity) + English: + (- {###} - in to only + (hits 16/26) (matched: '(- rtrue; - in to only') constraint DS = {17} extremes [6, 6] + (- {###} - in to decide if only + (hits 4/12) (matched: '(- rtrue; - in to decide if only') constraint DS = {17} extremes [8, 8] + (- {###} - in to decide only + (hits 0/7) constraint DS = {17} extremes [7, 7] + (- {###} + (hits 412/415) (matched: '(- {-say:val:K} ') constraint DS = {17} extremes [2, 2] + (- {###} {...} + (hits 0/66) constraint DS = {17} extremes [3, infinity) + + hits 1880/3760 nti 18 constraint (none) extremes [1, infinity) + English: + definition + (hits 88/88) (matched: 'definition') constraint CS = {18} extremes [1, 1] + this is the {... rule} + (hits 58/1642) (matched long text) constraint DS = {18} extremes [5, infinity) + this is the rule + constraint CS = {18} extremes [4, 4] + this is {...} rule + (hits 0/1612) constraint DS = {18} extremes [4, infinity) + this is {...} rules + (hits 0/1612) constraint DS = {18} extremes [4, infinity) + + (hits 0/1648) constraint DS = {19} extremes [2, infinity) + to + constraint CS = {18} extremes [1, 1] + to {...} ( called {...} ) + (hits 0/1548) constraint DS = {18} extremes [6, infinity) + {to ...} ( this is the {### function} inverse to {###} ) + (hits 32/1346) (matched long text) constraint DS = {18} extremes [12, infinity) + {to ...} ( this is the {### function} ) + (hits 8/1418) (matched long text) constraint DS = {18} extremes [9, infinity) + {to ...} ( this is {...} ) + (hits 0/1478) constraint DS = {18} extremes [7, infinity) + to {...} + (hits 952/1658) (matched long text) constraint DS = {18} extremes [2, infinity) + {...} ( this is the {... rule} ) + (hits 562/606) (matched long text) constraint DS = {18} extremes [8, infinity) + {...} ( this is the rule ) + (hits 0/62) constraint DS = {18} extremes [7, infinity) + {...} ( this is {...} rule ) + (hits 0/62) constraint DS = {18} extremes [7, infinity) + {...} ( this is {...} rules ) + (hits 0/62) constraint DS = {18} extremes [7, infinity) + {...} + (hits 180/180) (matched long text) constraint (none) extremes [1, infinity) + + hits 2/1984 nti 19 constraint DS = {19} extremes [3, infinity) + English: + to now {...} + (hits 2/990) (matched long text) constraint DS = {19} extremes [3, infinity) + + hits 0/1984 nti 20 constraint CS = {20} extremes [2, 2] + English: + to begin + constraint CS = {20} extremes [2, 2] + + hits 371/742 nti 23 constraint (none) extremes [1, infinity) + English: + during + (hits 0/334) constraint DS = {23} extremes [3, infinity) + + (hits 371/371) (matched long text) constraint (none) extremes [1, infinity) + + hits 371/742 nti 22 constraint (none) extremes [1, infinity) + English: + {} {when/while ...} + (hits 23/108) (matched long text) constraint DS = {22} extremes [3, infinity) + {} + (hits 348/348) (matched long text) constraint (none) extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - hits 41/82 nti 18 constraint (none) extremes [1, infinity) + hits 371/750 nti 21 constraint (none) extremes [1, infinity) + English: + {***} + (hits 359/371) (matched long text) constraint (none) extremes [1, infinity) +
    rule for {***} + (hits 0/12) constraint DS = {21} extremes [4, infinity) +
    rule {***} + (hits 0/12) constraint DS = {21} extremes [3, infinity) + rule for {***} + (hits 0/12) constraint DS = {21} extremes [3, infinity) + rule {***} + (hits 12/12) (matched long text) constraint DS = {21} extremes [2, infinity) + + hits 92/1496 nti 24 constraint DS = {24} extremes [1, infinity) + English: + of/for {...} + (hits 48/592) (matched long text) constraint DS = {24} extremes [2, infinity) + rule about/for/on {...} + (hits 0/534) constraint DS = {24} extremes [3, infinity) + rule + (hits 44/44) (matched: 'rule') constraint CS = {24} extremes [1, 1] + + nti 25 constraint (none) extremes [1, infinity) + English: + when {***} + constraint DS = {25} extremes [1, infinity) + {...} + constraint (none) extremes [1, infinity) + + hits 3/464 nti 26 constraint DS = {26} extremes [3, infinity) + English: + {...} when/while {...} + (hits 3/26) (matched long text) constraint DS = {26} extremes [3, infinity) + + nti 27 constraint (none) extremes [1, infinity) + English: + when the play begins/ends + constraint CS = {27} extremes [4, 4] + {...} + constraint (none) extremes [1, infinity) + + nti 28 constraint DS = {28} extremes [2, infinity) + English: + in the presence of {...} + constraint DS = {28} extremes [5, infinity) + in {...} + constraint DS = {28} extremes [2, infinity) + + nti 29 constraint DS = {29} extremes [3, infinity) + English: + {...} called {...} {when/while ...} + constraint DS = {29} extremes [5, infinity) + {...} {when/while *** nothing ***} + constraint DS = {29} extremes [3, infinity) + {...} {when/while *** nowhere ***} + constraint DS = {29} extremes [3, infinity) + {...} and {when/while ...} + constraint DS = {29} extremes [4, infinity) + {...} {when/while ...} + constraint DS = {29} extremes [3, infinity) + + nti 31 constraint (none) extremes [1, infinity) + English: + when/while {...} + constraint DS = {31} extremes [3, infinity) + + constraint (none) extremes [1, infinity) + + nti 22 constraint (none) extremes [1, infinity) + English: + + constraint DS = {30} extremes [3, infinity) + + constraint (none) extremes [1, infinity) + + nti 30 constraint DS = {30} extremes [2, infinity) + English: + , _or + constraint DS = {30} extremes [3, infinity) + _,/or + constraint DS = {30} extremes [2, infinity) + + nti 23 constraint (none) extremes [1, infinity) + English: + {......} + constraint (none) extremes [1, infinity) + + hits 41/82 nti 9 constraint (none) extremes [1, infinity) English: not - (hits 1/23) (matched: 'not opening or closing or locking or unlocking') constraint DS = {18} extremes [2, infinity) + (hits 1/25) (matched: 'not opening or closing or locking or unlocking') constraint DS = {9} extremes [2, infinity) (hits 40/40) (matched: 'dropping or throwing or inserting or putting') constraint (none) extremes [1, infinity) - hits 41/82 nti 23 constraint (none) extremes [1, infinity) + hits 41/82 nti 24 constraint (none) extremes [1, infinity) English: {...} (hits 14/41) (matched: 'throwing or inserting or putting') constraint (none) extremes [1, infinity) - (hits 14/15) (matched: 'dropping or throwing or inserting or putting') constraint DS = {17} extremes [3, infinity) + (hits 14/14) (matched: 'dropping or throwing or inserting or putting') constraint DS = {8} extremes [3, infinity) (hits 13/13) (matched: 'an actor smelling') constraint (none) extremes [1, infinity) - hits 28/68 nti 17 constraint DS = {17} extremes [2, infinity) + hits 28/64 nti 8 constraint DS = {8} extremes [2, infinity) English: , _or - (hits 0/20) constraint DS = {17} extremes [3, infinity) + (hits 0/20) constraint DS = {8} extremes [3, infinity) _,/or - (hits 28/33) (matched: 'or throwing or inserting or putting') constraint DS = {17} extremes [2, infinity) + (hits 28/32) (matched: 'or throwing or inserting or putting') constraint DS = {8} extremes [2, infinity) - hits 41/82 nti 16 constraint (none) extremes [1, infinity) + hits 41/82 nti 7 constraint (none) extremes [1, infinity) English: (hits 1/41) (matched: 'listing contents') constraint (none) extremes [1, infinity) of/for - constraint DS = {16} extremes [3, infinity) + constraint DS = {7} extremes [3, infinity) (hits 0/12) constraint (none) extremes [2, infinity) ^ {...} @@ -8076,520 +8237,337 @@ (hits 40/40) (matched: 'an actor smelling') constraint (none) extremes [1, infinity) - hits 3/30 nti 15 constraint (none) extremes [1, infinity) + hits 3/30 nti 6 constraint (none) extremes [1, infinity) English: something/anything - constraint CS = {15} extremes [1, 1] + constraint CS = {6} extremes [1, 1] something/anything else - constraint CS = {15} extremes [2, 2] + constraint CS = {6} extremes [2, 2] (hits 3/15) (matched: 'smelling') constraint (none) extremes [1, infinity) - internal hits 1/88 nti 24 constraint (none) extremes [1, infinity) - internal hits 80/160 nti 25 constraint (none) extremes [0, 0] - hits 438/876 nti 19 constraint (none) extremes [1, infinity) - English: - {***} . {***} - (hits 0/438) constraint DS = {19} extremes [1, infinity) - , {***} - (hits 0/438) constraint DS = {19} extremes [1, infinity) - {***} , - (hits 0/438) constraint DS = {19} extremes [1, infinity) - {***} , , {***} - (hits 0/438) constraint DS = {19} extremes [2, infinity) - {...} - (hits 438/438) (matched long text) constraint (none) extremes [1, infinity) - - hits 432/1426 nti 20 constraint DS = {20} extremes [2, infinity) - English: - (- {###} - in to only - (hits 16/17) (matched: '(- rtrue; - in to only') constraint DS = {20} extremes [6, 6] - (- {###} - in to decide if only - (hits 4/6) (matched: '(- rtrue; - in to decide if only') constraint DS = {20} extremes [8, 8] - (- {###} - in to decide only - (hits 0/3) constraint DS = {20} extremes [7, 7] - (- {###} - (hits 412/413) (matched: '(- {-say:val:K} ') constraint DS = {20} extremes [2, 2] - (- {###} {...} - (hits 0/31) constraint DS = {20} extremes [3, infinity) - - hits 1880/3760 nti 21 constraint (none) extremes [1, infinity) - English: - definition - (hits 88/88) (matched: 'definition') constraint CS = {21} extremes [1, 1] - this is the {... rule} - (hits 58/1616) (matched long text) constraint DS = {21} extremes [5, infinity) - this is the rule - constraint CS = {21} extremes [4, 4] - this is {...} rule - (hits 0/1580) constraint DS = {21} extremes [4, infinity) - this is {...} rules - (hits 0/1580) constraint DS = {21} extremes [4, infinity) - - (hits 0/1596) constraint DS = {19} extremes [2, infinity) - to - constraint CS = {21} extremes [1, 1] - to {...} ( called {...} ) - (hits 0/1534) constraint DS = {21} extremes [6, infinity) - {to ...} ( this is the {### function} inverse to {###} ) - (hits 32/1346) (matched long text) constraint DS = {21} extremes [12, infinity) - {to ...} ( this is the {### function} ) - (hits 8/1418) (matched long text) constraint DS = {21} extremes [9, infinity) - {to ...} ( this is {...} ) - (hits 0/1472) constraint DS = {21} extremes [7, infinity) - to {...} - (hits 952/1630) (matched long text) constraint DS = {21} extremes [2, infinity) - {...} ( this is the {... rule} ) - (hits 562/604) (matched long text) constraint DS = {21} extremes [8, infinity) - {...} ( this is the rule ) - (hits 0/56) constraint DS = {21} extremes [7, infinity) - {...} ( this is {...} rule ) - (hits 0/56) constraint DS = {21} extremes [7, infinity) - {...} ( this is {...} rules ) - (hits 0/56) constraint DS = {21} extremes [7, infinity) - {...} - (hits 180/180) (matched long text) constraint (none) extremes [1, infinity) - - hits 2/1984 nti 22 constraint DS = {22} extremes [3, infinity) - English: - to now {...} - (hits 2/990) (matched long text) constraint DS = {22} extremes [3, infinity) - - hits 0/1984 nti 23 constraint CS = {23} extremes [2, 2] - English: - to begin - constraint CS = {23} extremes [2, 2] - - hits 371/742 nti 26 constraint (none) extremes [1, infinity) - English: - during - (hits 0/158) constraint DS = {26} extremes [3, infinity) - - (hits 371/371) (matched long text) constraint (none) extremes [1, infinity) - - hits 371/742 nti 25 constraint (none) extremes [1, infinity) - English: - {} {when/while ...} - (hits 23/276) (matched long text) constraint DS = {25} extremes [3, infinity) - {} - (hits 348/348) (matched long text) constraint (none) extremes [1, infinity) - {...} - constraint (none) extremes [1, infinity) - - hits 371/750 nti 24 constraint (none) extremes [1, infinity) - English: - {***} - (hits 359/371) (matched long text) constraint (none) extremes [1, infinity) -
    rule for {***} - (hits 0/12) constraint DS = {24} extremes [4, infinity) -
    rule {***} - (hits 0/12) constraint DS = {24} extremes [3, infinity) - rule for {***} - (hits 0/12) constraint DS = {24} extremes [3, infinity) - rule {***} - (hits 12/12) (matched long text) constraint DS = {24} extremes [2, infinity) - - hits 92/1496 nti 27 constraint DS = {27} extremes [1, infinity) - English: - of/for {...} - (hits 48/590) (matched long text) constraint DS = {27} extremes [2, infinity) - rule about/for/on {...} - (hits 0/532) constraint DS = {27} extremes [3, infinity) - rule - (hits 44/44) (matched: 'rule') constraint CS = {27} extremes [1, 1] - - nti 28 constraint (none) extremes [1, infinity) - English: - when {***} - constraint DS = {28} extremes [1, infinity) - {...} - constraint (none) extremes [1, infinity) - - hits 3/464 nti 29 constraint DS = {29} extremes [3, infinity) - English: - {...} when/while {...} - (hits 3/78) (matched long text) constraint DS = {29} extremes [3, infinity) - - nti 30 constraint (none) extremes [1, infinity) - English: - when the play begins/ends - constraint CS = {30} extremes [4, 4] - {...} - constraint (none) extremes [1, infinity) - - nti 31 constraint DS = {31} extremes [2, infinity) - English: - in the presence of {...} - constraint DS = {31} extremes [5, infinity) - in {...} - constraint DS = {31} extremes [2, infinity) - - nti 6 constraint DS = {6} extremes [3, infinity) - English: - {...} called {...} {when/while ...} - constraint DS = {6} extremes [5, infinity) - {...} {when/while *** nothing ***} - constraint DS = {6} extremes [3, infinity) - {...} {when/while *** nowhere ***} - constraint DS = {6} extremes [3, infinity) - {...} and {when/while ...} - constraint DS = {6} extremes [4, infinity) - {...} {when/while ...} - constraint DS = {6} extremes [3, infinity) - - nti 8 constraint (none) extremes [1, infinity) - English: - when/while {...} - constraint DS = {8} extremes [3, infinity) - - constraint (none) extremes [1, infinity) - - nti 26 constraint (none) extremes [1, infinity) - English: - - constraint DS = {7} extremes [3, infinity) - - constraint (none) extremes [1, infinity) - - nti 7 constraint DS = {7} extremes [2, infinity) - English: - , _or - constraint DS = {7} extremes [3, infinity) - _,/or - constraint DS = {7} extremes [2, infinity) - - nti 27 constraint (none) extremes [1, infinity) - English: - {......} - constraint (none) extremes [1, infinity) - - hits 517/1034 nti 11 constraint (none) extremes [1, infinity) + hits 517/1034 nti 12 constraint (none) extremes [1, infinity) English: ( deprecated ) - (hits 1/437) (matched long text) constraint DS = {11} extremes [4, infinity) + (hits 1/436) (matched long text) constraint DS = {12} extremes [4, infinity) - (hits 138/481) (matched long text) constraint DS = {9} extremes [2, infinity) + (hits 138/490) (matched long text) constraint DS = {10} extremes [2, infinity) (hits 378/378) (matched long text) constraint (none) extremes [1, infinity) - hits 400/800 nti 10 constraint (none) extremes [1, infinity) + hits 400/800 nti 11 constraint (none) extremes [1, infinity) English: ( arithmetic operation ) - (hits 16/346) (matched long text) constraint DS = {10} extremes [6, infinity) + (hits 16/344) (matched long text) constraint DS = {11} extremes [6, infinity) ( assignment operation ) - (hits 6/341) (matched long text) constraint DS = {10} extremes [5, infinity) + (hits 6/337) (matched long text) constraint DS = {11} extremes [5, infinity) {let ... be given by ...} - (hits 2/324) (matched long text) constraint DS = {10} extremes [6, infinity) + (hits 2/322) (matched long text) constraint DS = {11} extremes [6, infinity) {let ...} - (hits 4/354) (matched long text) constraint DS = {10} extremes [2, infinity) + (hits 4/343) (matched long text) constraint DS = {11} extremes [2, infinity) {...} -- end - (hits 0/347) constraint DS = {10} extremes [3, infinity) + (hits 0/337) constraint DS = {11} extremes [3, infinity) {...} -- end conditional - (hits 3/340) (matched long text) constraint DS = {10} extremes [4, infinity) + (hits 3/333) (matched long text) constraint DS = {11} extremes [4, infinity) {...} -- end loop - (hits 9/337) (matched long text) constraint DS = {10} extremes [4, infinity) + (hits 9/330) (matched long text) constraint DS = {11} extremes [4, infinity) {...} -- in loop - (hits 2/328) (matched: 'break -- in loop') constraint DS = {10} extremes [4, infinity) + (hits 2/321) (matched: 'break -- in loop') constraint DS = {11} extremes [4, infinity) {...} -- in {###} - (hits 0/326) constraint DS = {10} extremes [4, infinity) + (hits 0/319) constraint DS = {11} extremes [4, infinity) {...} (hits 358/358) (matched long text) constraint (none) extremes [1, infinity) - hits 0/1032 nti 12 constraint DS = {12, 13} extremes [8, infinity) + hits 0/1032 nti 13 constraint DS = {13} extremes [8, infinity) English: ( {......} ) {} ( {......} ) - (hits 0/338) constraint DS = {12, 13} extremes [8, infinity) + (hits 0/338) constraint DS = {13} extremes [8, infinity) - hits 154/994 nti 9 constraint DS = {9} extremes [2, infinity) + hits 154/1012 nti 10 constraint DS = {10} extremes [2, infinity) English: -- running on - (hits 16/442) (matched long text) constraint DS = {9} extremes [4, infinity) + (hits 16/447) (matched long text) constraint DS = {10} extremes [4, infinity) {say otherwise/else} - (hits 2/6) (matched: 'say otherwise') constraint CS = {9} extremes [2, 2] + (hits 2/2) (matched: 'say otherwise') constraint CS = {10} extremes [2, 2] {say otherwise/else if/unless ...} - (hits 0/426) constraint DS = {9} extremes [4, infinity) + (hits 0/431) constraint DS = {10} extremes [4, infinity) {say if/unless ...} - (hits 2/438) (matched: 'say if ( c - condition )') constraint DS = {9} extremes [3, infinity) + (hits 2/447) (matched: 'say if ( c - condition )') constraint DS = {10} extremes [3, infinity) {say end if/unless} - (hits 2/2) (matched: 'say end if') constraint CS = {9} extremes [3, 3] + (hits 2/3) (matched: 'say end if') constraint CS = {10} extremes [3, 3] {say ...} -- beginning {###} - (hits 2/405) (matched: 'say one of -- beginning say_one_of') constraint DS = {9} extremes [5, infinity) + (hits 2/408) (matched: 'say one of -- beginning say_one_of') constraint DS = {10} extremes [5, infinity) {say ...} -- continuing {###} - (hits 1/403) (matched: 'say or -- continuing say_one_of') constraint DS = {9} extremes [5, infinity) + (hits 1/406) (matched: 'say or -- continuing say_one_of') constraint DS = {10} extremes [5, infinity) {say ...} -- ending {###} with marker {###} - (hits 9/350) (matched long text) constraint DS = {9} extremes [8, infinity) + (hits 9/350) (matched long text) constraint DS = {10} extremes [8, infinity) {say ...} -- ending {###} - (hits 1/393) (matched: 'say only -- ending say_first_time') constraint DS = {9} extremes [5, infinity) + (hits 1/396) (matched: 'say only -- ending say_first_time') constraint DS = {10} extremes [5, infinity) {say ...} - (hits 119/462) (matched long text) constraint DS = {9} extremes [2, infinity) + (hits 119/471) (matched long text) constraint DS = {10} extremes [2, infinity) - hits 516/1032 nti 13 constraint DS = {13} extremes [2, infinity) + hits 516/1032 nti 14 constraint DS = {14} extremes [2, infinity) English: to {decide yes/no} - (hits 2/2) (matched: 'to decide yes') constraint CS = {13} extremes [3, 3] + (hits 2/2) (matched: 'to decide yes') constraint CS = {14} extremes [3, 3] to {decide on ...} - (hits 1/467) (matched: 'to decide on ( something - value )') constraint DS = {13} extremes [4, infinity) + (hits 1/467) (matched: 'to decide on ( something - value )') constraint DS = {14} extremes [4, infinity) to decide whether/if the {...} - (hits 12/453) (matched long text) constraint DS = {13} extremes [5, infinity) + (hits 12/453) (matched long text) constraint DS = {14} extremes [5, infinity) to decide whether/if {...} - (hits 39/454) (matched long text) constraint DS = {13} extremes [4, infinity) + (hits 39/454) (matched long text) constraint DS = {14} extremes [4, infinity) to decide what/which is the {...} - (hits 86/380) (matched long text) constraint DS = {13} extremes [7, infinity) + (hits 86/380) (matched long text) constraint DS = {14} extremes [7, infinity) to decide what/which is {...} - (hits 74/304) (matched long text) constraint DS = {13} extremes [6, infinity) + (hits 74/304) (matched long text) constraint DS = {14} extremes [6, infinity) to {...} - (hits 302/302) (matched long text) constraint DS = {13} extremes [2, infinity) + (hits 302/302) (matched long text) constraint DS = {14} extremes [2, infinity) - hits 160/320 nti 28 constraint (none) extremes [1, infinity) + hits 160/320 nti 26 constraint (none) extremes [1, infinity) English: (hits 160/160) (matched: 'relation of objects') constraint (none) extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - hits 2231/4462 nti 15 constraint (none) extremes [1, infinity) + hits 2231/4462 nti 16 constraint (none) extremes [1, infinity) English: ( ) {***} - (hits 0/1757) constraint DS = {15} extremes [2, infinity) + (hits 0/1758) constraint DS = {16} extremes [2, infinity) ( ) {***} - (hits 579/1698) (matched long text) constraint DS = {15} extremes [3, infinity) + (hits 579/1724) (matched long text) constraint DS = {16} extremes [3, infinity) ( {***} - (hits 0/1185) constraint DS = {15} extremes [1, infinity) + (hits 0/1191) constraint DS = {16} extremes [1, infinity) ) {***} - (hits 0/1185) constraint DS = {15} extremes [1, infinity) + (hits 0/1191) constraint DS = {16} extremes [1, infinity) {###} {***} (hits 1652/1652) (matched long text) constraint (none) extremes [1, infinity) - hits 579/1168 nti 14 constraint (none) extremes [1, infinity) + hits 579/1168 nti 15 constraint (none) extremes [1, infinity) English: {***} ( {***} - {......} - (hits 0/584) constraint DS = {14} extremes [3, infinity) + (hits 0/584) constraint DS = {15} extremes [3, infinity) {......} - a nonexisting variable - (hits 0/193) constraint DS = {14} extremes [5, infinity) + (hits 0/193) constraint DS = {15} extremes [5, infinity) {......} - a nonexisting variable - (hits 0/104) constraint DS = {14} extremes [6, infinity) + (hits 0/104) constraint DS = {15} extremes [6, infinity) {......} - a nonexisting that/which varies - (hits 0/65) constraint DS = {14} extremes [7, infinity) + (hits 0/65) constraint DS = {15} extremes [7, infinity) {......} - nonexisting variable - (hits 4/359) (matched: 't - nonexisting variable') constraint DS = {14} extremes [4, infinity) + (hits 4/359) (matched: 't - nonexisting variable') constraint DS = {15} extremes [4, infinity) {......} - nonexisting variable - (hits 4/193) (matched: 'loopvar - nonexisting k variable') constraint DS = {14} extremes [5, infinity) + (hits 4/193) (matched: 'loopvar - nonexisting k variable') constraint DS = {15} extremes [5, infinity) {......} - nonexisting that/which varies - (hits 0/104) constraint DS = {14} extremes [6, infinity) + (hits 0/104) constraint DS = {15} extremes [6, infinity) {......} - {an existing variable} - (hits 0/189) constraint DS = {14} extremes [5, infinity) + (hits 0/189) constraint DS = {15} extremes [5, infinity) {......} - {an existing variable} - (hits 0/104) constraint DS = {14} extremes [6, infinity) + (hits 0/104) constraint DS = {15} extremes [6, infinity) {......} - {an existing that/which varies} - (hits 0/65) constraint DS = {14} extremes [7, infinity) + (hits 0/65) constraint DS = {15} extremes [7, infinity) {......} - {existing variable} - (hits 2/351) (matched: 't - existing variable') constraint DS = {14} extremes [4, infinity) + (hits 2/351) (matched: 't - existing variable') constraint DS = {15} extremes [4, infinity) {......} - {existing variable} - (hits 0/189) constraint DS = {14} extremes [5, infinity) + (hits 0/189) constraint DS = {15} extremes [5, infinity) {......} - {existing that/which varies} - (hits 0/104) constraint DS = {14} extremes [6, infinity) + (hits 0/104) constraint DS = {15} extremes [6, infinity) {......} - a condition - (hits 0/349) constraint DS = {14} extremes [4, infinity) + (hits 0/349) constraint DS = {15} extremes [4, infinity) {......} - condition - (hits 9/574) (matched: 'c - condition') constraint DS = {14} extremes [3, infinity) + (hits 9/574) (matched: 'c - condition') constraint DS = {15} extremes [3, infinity) {......} - a phrase - (hits 0/349) constraint DS = {14} extremes [4, infinity) + (hits 0/349) constraint DS = {15} extremes [4, infinity) {......} - phrase - (hits 0/565) constraint DS = {14} extremes [3, infinity) + (hits 0/565) constraint DS = {15} extremes [3, infinity) {......} - storage - (hits 4/565) (matched: 's - storage') constraint DS = {14} extremes [3, infinity) + (hits 4/565) (matched: 's - storage') constraint DS = {15} extremes [3, infinity) {......} - a table-reference - (hits 0/349) constraint DS = {14} extremes [4, infinity) + (hits 0/349) constraint DS = {15} extremes [4, infinity) {......} - table-reference - (hits 3/561) (matched: 'tr - table-reference') constraint DS = {14} extremes [3, infinity) + (hits 3/561) (matched: 'tr - table-reference') constraint DS = {15} extremes [3, infinity) {......} - - (hits 529/558) (matched long text) constraint DS = {14} extremes [3, infinity) + (hits 529/558) (matched long text) constraint DS = {15} extremes [3, infinity) {......} - - (hits 2/29) (matched long text) constraint DS = {14} extremes [3, infinity) + (hits 2/29) (matched long text) constraint DS = {15} extremes [3, infinity) {......} - {......} - (hits 0/27) constraint DS = {14} extremes [3, infinity) + (hits 0/27) constraint DS = {15} extremes [3, infinity) (hits 22/27) (matched: 'name of kind of enumerated value k') constraint (none) extremes [1, infinity) {......} (hits 0/5) constraint (none) extremes [1, infinity) - internal hits 24/68 nti 29 constraint (none) extremes [1, infinity) + internal hits 24/68 nti 27 constraint (none) extremes [1, infinity) - hits 65/130 nti 30 constraint (none) extremes [1, infinity) + hits 65/130 nti 28 constraint (none) extremes [1, infinity) English: {...} (hits 20/65) (matched long text) constraint (none) extremes [1, infinity) - (hits 20/21) (matched long text) constraint DS = {16} extremes [3, infinity) + (hits 20/23) (matched long text) constraint DS = {17} extremes [3, infinity) (hits 25/25) (matched: 'printing an abbreviated room description') constraint (none) extremes [1, infinity) - hits 40/154 nti 16 constraint DS = {16} extremes [2, infinity) + hits 40/162 nti 17 constraint DS = {17} extremes [2, infinity) English: , _or - (hits 0/73) constraint DS = {16} extremes [3, infinity) + (hits 0/73) constraint DS = {17} extremes [3, infinity) , and/or - (hits 2/73) (matched: ', and/or capitalized') constraint DS = {16} extremes [3, infinity) + (hits 2/73) (matched: ', and/or capitalized') constraint DS = {17} extremes [3, infinity) _,/or - (hits 38/73) (matched long text) constraint DS = {16} extremes [2, infinity) + (hits 38/75) (matched long text) constraint DS = {17} extremes [2, infinity) and/or - (hits 0/35) constraint DS = {16} extremes [2, infinity) + (hits 0/37) constraint DS = {17} extremes [2, infinity) - hits 65/130 nti 31 constraint (none) extremes [1, infinity) + hits 65/130 nti 29 constraint (none) extremes [1, infinity) English: {...} (hits 20/65) (matched: 'without printing a room description') constraint (none) extremes [1, infinity) {...} (hits 45/45) (matched: 'without printing a room description') constraint (none) extremes [1, infinity) - hits 102/204 nti 6 constraint (none) extremes [1, infinity) + hits 102/204 nti 30 constraint (none) extremes [1, infinity) English: {...} (hits 43/102) (matched long text) constraint (none) extremes [1, infinity) - (hits 43/50) (matched long text) constraint DS = {17} extremes [3, infinity) + (hits 43/47) (matched long text) constraint DS = {18} extremes [3, infinity) (hits 16/16) (matched: 'listing marked items only') constraint (none) extremes [1, infinity) - hits 86/356 nti 17 constraint DS = {17} extremes [2, infinity) + hits 86/330 nti 18 constraint DS = {18} extremes [2, infinity) English: , _and - (hits 0/164) constraint DS = {17} extremes [3, infinity) + (hits 0/157) constraint DS = {18} extremes [3, infinity) _,/and - (hits 86/171) (matched long text) constraint DS = {17} extremes [2, infinity) + (hits 86/160) (matched long text) constraint DS = {18} extremes [2, infinity) - hits 102/204 nti 7 constraint (none) extremes [1, infinity) + hits 102/204 nti 31 constraint (none) extremes [1, infinity) English: (hits 102/102) (matched: 'giving brief inventory information') constraint (none) extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - internal hits 102/3322 nti 8 constraint (none) extremes [1, infinity) + internal hits 102/2642 nti 6 constraint (none) extremes [1, infinity) - nti 19 constraint (none) extremes [1, infinity) - English: - {} ( {...} ) - constraint DS = {19} extremes [5, infinity) - {} ( {...} ) - constraint DS = {19} extremes [4, infinity) - {} - constraint (none) extremes [1, infinity) - - nti 18 constraint (none) extremes [1, infinity) - English: - {...} - {...} - {...} - constraint DS = {18} extremes [5, infinity) - {...} - {...} - constraint DS = {18} extremes [3, infinity) - {...} - constraint (none) extremes [1, infinity) - - hits 209/418 nti 9 constraint (none) extremes [1, infinity) + hits 203/406 nti 7 constraint (none) extremes [1, infinity) English: - (hits 14/74) (matched: 'the current working sack') constraint (none) extremes [2, infinity) + (hits 13/73) (matched: 'the current working sack') constraint (none) extremes [2, infinity) - (hits 195/195) (matched: 'item being printed') constraint (none) extremes [1, infinity) + (hits 190/190) (matched: 'item being printed') constraint (none) extremes [1, infinity) - hits 209/418 nti 20 constraint (none) extremes [1, infinity) + hits 203/406 nti 19 constraint (none) extremes [1, infinity) English: {***} - {***} - constraint DS = {20} extremes [1, infinity) + constraint DS = {19} extremes [1, infinity) - (hits 136/209) (matched: 'item being printed') constraint (none) extremes [1, infinity) + (hits 131/203) (matched: 'item being printed') constraint (none) extremes [1, infinity) - (hits 0/73) constraint (none) extremes [1, infinity) + (hits 0/72) constraint (none) extremes [1, infinity) {...} - (hits 73/73) (matched: 'item being printed') constraint (none) extremes [1, infinity) + (hits 72/72) (matched: 'item being printed') constraint (none) extremes [1, infinity) - internal hits 136/418 nti 10 constraint (none) extremes [1, infinity) + internal hits 131/406 nti 8 constraint (none) extremes [1, infinity) - nti 21 constraint DS = {21} extremes [2, infinity) + nti 20 constraint DS = {20} extremes [2, infinity) English: end {...} - constraint DS = {21} extremes [2, infinity) + constraint DS = {20} extremes [2, infinity) - hits 1576/3152 nti 22 constraint (none) extremes [1, infinity) + hits 1236/2472 nti 21 constraint (none) extremes [1, infinity) English: phrase options - (hits 17/17) (matched: 'phrase options') constraint CS = {22} extremes [2, 2] + (hits 17/17) (matched: 'phrase options') constraint CS = {21} extremes [2, 2] - (hits 0/1559) constraint (none) extremes [1, infinity) + (hits 0/1219) constraint (none) extremes [1, infinity) - (hits 1559/1559) (matched: 'something else') constraint (none) extremes [1, infinity) + (hits 1219/1219) (matched: 'something else') constraint (none) extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - internal hits 1559/3118 nti 11 constraint (none) extremes [1, infinity) + internal hits 1219/2438 nti 9 constraint (none) extremes [1, infinity) - hits 44/1880 nti 23 constraint CS = {23} extremes [1, 1] + hits 44/1880 nti 22 constraint CS = {22} extremes [1, 1] English: definition - (hits 44/44) (matched: 'definition') constraint CS = {23} extremes [1, 1] + (hits 44/44) (matched: 'definition') constraint CS = {22} extremes [1, 1] - hits 44/88 nti 26 constraint DS = {26} extremes [3, infinity) + hits 44/88 nti 25 constraint DS = {25} extremes [3, infinity) English: is/are if {...} - (hits 41/41) (matched long text) constraint DS = {26} extremes [5, infinity) + (hits 41/41) (matched long text) constraint DS = {25} extremes [5, infinity) is/are unless {...} - constraint DS = {26} extremes [5, infinity) + constraint DS = {25} extremes [5, infinity) is/are - (hits 3/3) (matched: 'a room is air-conditioned') constraint DS = {26} extremes [3, infinity) + (hits 3/3) (matched: 'a room is air-conditioned') constraint DS = {25} extremes [3, infinity) - hits 44/88 nti 24 constraint (none) extremes [1, infinity) + hits 44/88 nti 23 constraint (none) extremes [1, infinity) English: {...} ( called the {...} ) - (hits 1/1) (matched: 'a thing ( called the item )') constraint DS = {24} extremes [6, infinity) + (hits 1/1) (matched: 'a thing ( called the item )') constraint DS = {23} extremes [6, infinity) {...} ( called {...} ) - constraint DS = {24} extremes [5, infinity) + constraint DS = {23} extremes [5, infinity) {...} (hits 43/43) (matched: 'a list of values') constraint (none) extremes [1, infinity) - hits 44/88 nti 25 constraint (none) extremes [1, infinity) + hits 44/88 nti 24 constraint (none) extremes [1, infinity) English: {...} rather than {...} - (hits 18/18) (matched: 'even rather than odd') constraint DS = {25} extremes [4, infinity) + (hits 18/18) (matched: 'even rather than odd') constraint DS = {24} extremes [4, infinity) {...} (hits 26/26) (matched: 'going on') constraint (none) extremes [1, infinity) - hits 18/86 nti 27 constraint DS = {27} extremes [8, infinity) + hits 18/86 nti 26 constraint DS = {26} extremes [8, infinity) English: i6 routine {} says so ( {...} ) - (hits 10/24) (matched long text) constraint DS = {27} extremes [8, infinity) + (hits 10/24) (matched long text) constraint DS = {26} extremes [8, infinity) i6 routine {} makes it so ( {...} ) - (hits 8/14) (matched long text) constraint DS = {27} extremes [9, infinity) + (hits 8/14) (matched long text) constraint DS = {26} extremes [9, infinity) - hits 1/80 nti 28 constraint DS = {28} extremes [8, infinity) + hits 1/80 nti 27 constraint DS = {27} extremes [8, infinity) English: i6 condition says so ( {...} ) - (hits 1/24) (matched long text) constraint DS = {28} extremes [8, infinity) + (hits 1/24) (matched long text) constraint DS = {27} extremes [8, infinity) - nti 30 constraint DW = {29, 30} extremes [2, infinity) + nti 29 constraint DW = {28, 29} extremes [2, infinity) English: {} - constraint DS = {29} extremes [2, 3] + constraint DS = {28} extremes [2, 3] {} in {} - constraint DS = {29, 30} extremes [4, 5] + constraint DS = {28, 29} extremes [4, 5] when defining - constraint DS = {30} extremes [3, infinity) + constraint DS = {29} extremes [3, infinity) when defining {...} - constraint DS = {30} extremes [3, infinity) + constraint DS = {29} extremes [3, infinity) before the library - constraint CS = {30} extremes [3, 3] + constraint CS = {29} extremes [3, 3] in the preform grammar - constraint CS = {30} extremes [4, 4] + constraint CS = {29} extremes [4, 4] - nti 29 constraint CS = {29} extremes [1, 2] + nti 28 constraint CS = {28} extremes [1, 2] English: before - constraint CS = {29} extremes [1, 1] + constraint CS = {28} extremes [1, 1] instead of - constraint CS = {29} extremes [2, 2] + constraint CS = {28} extremes [2, 2] after - constraint CS = {29} extremes [1, 1] + constraint CS = {28} extremes [1, 1] + + hits 5/30 nti 30 constraint CS = {30} extremes [3, 4] + English: + it is very likely + (hits 1/2) (matched: 'it is very likely') constraint CS = {30} extremes [4, 4] + it is likely + (hits 1/4) (matched: 'it is likely') constraint CS = {30} extremes [3, 3] + it is possible + (hits 1/3) (matched: 'it is possible') constraint CS = {30} extremes [3, 3] + it is unlikely + (hits 1/2) (matched: 'it is unlikely') constraint CS = {30} extremes [3, 3] + it is very unlikely + (hits 1/1) (matched: 'it is very unlikely') constraint CS = {30} extremes [4, 4] nti 10 constraint CS = {10} extremes [1, 1] English: @@ -8621,981 +8599,922 @@ constraint CS = {10} extremes [1, 1] refinery constraint CS = {10} extremes [1, 1] - - hits 4/186 nti 31 constraint CS = {31} extremes [1, 2] - English: - i6-varying-global - (hits 1/3) (matched: 'i6-varying-global') constraint CS = {31} extremes [1, 1] - i6-nothing-constant - (hits 1/2) (matched: 'i6-nothing-constant') constraint CS = {31} extremes [1, 1] - command prompt - (hits 1/1) (matched: 'command prompt') constraint CS = {31} extremes [2, 2] - parameter-object - (hits 1/1) (matched: 'parameter-object') constraint CS = {31} extremes [1, 1] - - hits 0/688 nti 6 constraint DS = {6} extremes [1, 2] - English: - story - (hits 0/29) constraint DS = {6} extremes [2, 2] - this story - (hits 0/2) constraint CS = {6} extremes [2, 2] - story - constraint CS = {6} extremes [1, 1] - - nti 7 constraint DS = {7} extremes [2, infinity) - English: - episode of - constraint DS = {7} extremes [4, 4] - episode {...} - constraint DS = {7} extremes [2, infinity) - - hits 7/186 nti 8 constraint CS = {8} extremes [2, 3] - English: - story title - (hits 1/7) (matched: 'story title') constraint CS = {8} extremes [2, 2] - story author - (hits 1/6) (matched: 'story author') constraint CS = {8} extremes [2, 2] - story headline - (hits 1/5) (matched: 'story headline') constraint CS = {8} extremes [2, 2] - story genre - (hits 1/4) (matched: 'story genre') constraint CS = {8} extremes [2, 2] - story description - (hits 1/3) (matched: 'story description') constraint CS = {8} extremes [2, 2] - story creation year - (hits 1/1) (matched: 'story creation year') constraint CS = {8} extremes [3, 3] - release number - (hits 1/2) (matched: 'release number') constraint CS = {8} extremes [2, 2] - - nti 11 constraint DW = {9, 10, 11} extremes [1, infinity) - English: - - constraint DS = {9, 10} & CW = {9, 10} extremes [2, 3] - {...} - constraint DS = {9} extremes [2, infinity) - - constraint CS = {10} extremes [1, 2] - cover art ( ) - constraint DS = {11} extremes [5, 5] - cover art - constraint CS = {11} extremes [2, 2] - existing story file - constraint CS = {11} extremes [3, 3] - existing story file called {} - constraint DS = {11} extremes [5, 5] - file of {} called {} - constraint DS = {11} extremes [5, 5] - file {} in {} - constraint DS = {11} extremes [4, 4] - file {} - constraint DS = {11} extremes [2, 2] - style sheet {} - constraint DS = {11} extremes [3, 3] - javascript {} - constraint DS = {11} extremes [2, 2] - introductory booklet - constraint CS = {11} extremes [2, 2] - introductory postcard - constraint CS = {11} extremes [2, 2] - website - constraint CS = {11} extremes [1, 1] - separate figures - constraint CS = {11} extremes [2, 2] - separate sounds - constraint CS = {11} extremes [2, 2] - {} website - constraint DS = {11} extremes [2, 2] - interpreter - constraint CS = {11} extremes [1, 1] - {} interpreter - constraint DS = {11} extremes [2, 2] - - nti 9 constraint CS = {9} extremes [1, 1] - English: - private - constraint CS = {9} extremes [1, 1] - public - constraint CS = {9} extremes [1, 1] - - nti 10 constraint CS = {10} extremes [1, 2] - English: - solution + pattern constraint CS = {10} extremes [1, 1] - source text - constraint CS = {10} extremes [2, 2] - library card - constraint CS = {10} extremes [2, 2] - hits 10/292 nti 12 constraint CS = {12} extremes [1, 3] + nti 8 constraint (none) extremes [1, infinity) English: - indefinite article - (hits 1/3) (matched: 'indefinite article') constraint CS = {12} extremes [2, 2] - plural-named - (hits 1/9) (matched: 'plural-named') constraint CS = {12} extremes [1, 1] - proper-named - (hits 1/8) (matched: 'proper-named') constraint CS = {12} extremes [1, 1] - printed name - (hits 1/2) (matched: 'printed name') constraint CS = {12} extremes [2, 2] - printed plural name - (hits 1/2) (matched: 'printed plural name') constraint CS = {12} extremes [3, 3] - publicly-named - (hits 1/7) (matched: 'publicly-named') constraint CS = {12} extremes [1, 1] - privately-named - (hits 1/6) (matched: 'privately-named') constraint CS = {12} extremes [1, 1] - adaptive text viewpoint - (hits 1/1) (matched: 'adaptive text viewpoint') constraint CS = {12} extremes [3, 3] - neuter - (hits 1/5) (matched: 'neuter') constraint CS = {12} extremes [1, 1] - female - (hits 1/4) (matched: 'female') constraint CS = {12} extremes [1, 1] - - hits 12/204 nti 13 constraint CS = {13} extremes [1, 2] - English: - room - (hits 2/10) (matched: 'room') constraint CS = {13} extremes [1, 1] - thing - (hits 2/8) (matched: 'thing') constraint CS = {13} extremes [1, 1] - container - (hits 2/6) (matched: 'container') constraint CS = {13} extremes [1, 1] - supporter - (hits 2/4) (matched: 'supporter') constraint CS = {13} extremes [1, 1] - person - (hits 2/2) (matched: 'person') constraint CS = {13} extremes [1, 1] - player's holdall - (hits 2/2) (matched: 'player's holdall') constraint CS = {13} extremes [2, 2] - - hits 4/292 nti 14 constraint CS = {14} extremes [1, 3] - English: - initial appearance - (hits 1/3) (matched: 'initial appearance') constraint CS = {14} extremes [2, 2] - wearable - (hits 1/5) (matched: 'wearable') constraint CS = {14} extremes [1, 1] - fixed in place - (hits 1/1) (matched: 'fixed in place') constraint CS = {14} extremes [3, 3] - matching key - (hits 1/2) (matched: 'matching key') constraint CS = {14} extremes [2, 2] - - hits 336/61212 nti 15 constraint DS = {15} extremes [1, infinity) - English: - _something/anything {***} - (hits 255/5601) (matched long text) constraint DS = {15} extremes [1, infinity) - _somewhere/anywhere {***} - (hits 0/5346) constraint DS = {15} extremes [1, infinity) - _someone/anyone/somebody/anybody {***} - (hits 57/5346) (matched: 'someone') constraint DS = {15} extremes [1, infinity) - _everything {***} - (hits 0/5289) constraint DS = {15} extremes [1, infinity) - _everywhere {***} - (hits 0/5289) constraint DS = {15} extremes [1, infinity) - _everyone/everybody {***} - (hits 0/5289) constraint DS = {15} extremes [1, infinity) - _nowhere {***} - (hits 24/5289) (matched: 'nowhere') constraint DS = {15} extremes [1, infinity) - _nobody/no-one {***} - (hits 0/5265) constraint DS = {15} extremes [1, infinity) - _no _one {***} - (hits 0/5046) constraint DS = {15} extremes [2, infinity) - - hits 0/2166 nti 16 constraint CS = {16} extremes [1, 1] - English: - nowhere - constraint CS = {16} extremes [1, 1] - - hits 1/334 nti 17 constraint CS = {17} extremes [1, 1] - English: - yourself - (hits 1/1) (matched: 'yourself') constraint CS = {17} extremes [1, 1] - - hits 3/186 nti 18 constraint CS = {18} extremes [1, 3] - English: - player - (hits 1/2) (matched: 'player') constraint CS = {18} extremes [1, 1] - score - (hits 1/1) (matched: 'score') constraint CS = {18} extremes [1, 1] - time of day - (hits 1/1) (matched: 'time of day') constraint CS = {18} extremes [3, 3] - - nti 19 constraint CS = {19} extremes [1, 2] - English: - worn - constraint CS = {19} extremes [1, 1] - carried - constraint CS = {19} extremes [1, 1] - initially carried - constraint CS = {19} extremes [2, 2] - - hits 1/124 nti 20 constraint CS = {20} extremes [1, 1] - English: - device - (hits 1/1) (matched: 'device') constraint CS = {20} extremes [1, 1] - - hits 1/126 nti 21 constraint CS = {21} extremes [1, 1] - English: - backdrop - (hits 1/1) (matched: 'backdrop') constraint CS = {21} extremes [1, 1] - - hits 1/292 nti 22 constraint CS = {22} extremes [1, 1] - English: - scenery - (hits 1/1) (matched: 'scenery') constraint CS = {22} extremes [1, 1] - - nti 23 constraint CS = {23} extremes [1, 1] - English: - everywhere - constraint CS = {23} extremes [1, 1] - - hits 2/188 nti 24 constraint CS = {24} extremes [1, 1] - English: - region - (hits 2/3) (matched: 'region') constraint CS = {24} extremes [1, 1] - - hits 1/292 nti 25 constraint CS = {25} extremes [2, 2] - English: - map region - (hits 1/1) (matched: 'map region') constraint CS = {25} extremes [2, 2] - - hits 19/2126 nti 26 constraint CS = {26} extremes [1, 1] - English: - direction - (hits 13/19) (matched: 'direction') constraint CS = {26} extremes [1, 1] - door - (hits 6/6) (matched: 'door') constraint CS = {26} extremes [1, 1] - - hits 2/24 nti 27 constraint CS = {27} extremes [1, 1] - English: - up - (hits 1/3) (matched: 'up') constraint CS = {27} extremes [1, 1] - down - (hits 1/2) (matched: 'down') constraint CS = {27} extremes [1, 1] - - hits 2/292 nti 28 constraint CS = {28} extremes [1, 2] - English: - opposite - (hits 1/1) (matched: 'opposite') constraint CS = {28} extremes [1, 1] - other side - (hits 1/1) (matched: 'other side') constraint CS = {28} extremes [2, 2] - - hits 0/2166 nti 29 constraint CS = {29} extremes [1, 1] - English: - below - (hits 0/22) constraint CS = {29} extremes [1, 1] - above - (hits 0/22) constraint CS = {29} extremes [1, 1] - - nti 30 constraint DS = {30} extremes [2, infinity) - English: - mapping {...} - constraint DS = {30} extremes [2, infinity) - - nti 31 constraint DS = {31} extremes [2, infinity) - English: - mapped {...} of - constraint DS = {31} extremes [3, infinity) - mapped {...} - constraint DS = {31} extremes [2, infinity) - {...} of - constraint DS = {31} extremes [2, infinity) - {...} from - constraint DS = {31} extremes [2, infinity) - - hits 2/24 nti 6 constraint CS = {6} extremes [1, 1] - English: - inside - (hits 1/2) (matched: 'inside') constraint CS = {6} extremes [1, 1] - outside - (hits 1/1) (matched: 'outside') constraint CS = {6} extremes [1, 1] - - nti 7 constraint (none) extremes [1, 1] - English: - in - constraint CS = {7} extremes [1, 1] - of - constraint CS = {7} extremes [1, 1] -
    - constraint (none) extremes [1, 1] - - nti 12 constraint (none) extremes [1, infinity) - English: - + list {...} + constraint DS = {8} extremes [2, infinity) + constraint (none) extremes [1, infinity) - - nti 12 constraint (none) extremes [1, infinity) - English: - eps file - constraint CS = {12} extremes [2, 2] - mapped as - constraint DS = {12} extremes [4, infinity) - {...} mapped as {...} - constraint DS = {12} extremes [4, infinity) - mapped - constraint DS = {8, 12} extremes [4, infinity) - {...} mapped {...} - constraint DS = {12} extremes [3, infinity) - set to - constraint DS = {12} extremes [4, infinity) - set to {...} - constraint DS = {12} extremes [4, infinity) - {...} set to {...} - constraint DS = {12} extremes [4, infinity) - rubric {} {***} - constraint DS = {12} extremes [2, infinity) + ~~ + constraint DS = {8} extremes [3, infinity) {...} constraint (none) extremes [1, infinity) - nti 8 constraint DS = {8} extremes [2, infinity) + nti 7 constraint (none) extremes [1, infinity) English: - of/from + is {...} + constraint DS = {7} extremes [3, infinity) + = + constraint DS = {7, 31} extremes [3, infinity) + + constraint (none) extremes [1, infinity) + + constraint CS = {31} extremes [1, 1] + experimental {...} + constraint DS = {7} extremes [2, infinity) + + nti 31 constraint CS = {31} extremes [1, 1] + English: + r1 + constraint CS = {31} extremes [1, 1] + r2 + constraint CS = {31} extremes [1, 1] + r3 + constraint CS = {31} extremes [1, 1] + r4 + constraint CS = {31} extremes [1, 1] + r5 + constraint CS = {31} extremes [1, 1] + + hits 4/186 nti 9 constraint CS = {9} extremes [1, 2] + English: + i6-varying-global + (hits 1/3) (matched: 'i6-varying-global') constraint CS = {9} extremes [1, 1] + i6-nothing-constant + (hits 1/2) (matched: 'i6-nothing-constant') constraint CS = {9} extremes [1, 1] + command prompt + (hits 1/1) (matched: 'command prompt') constraint CS = {9} extremes [2, 2] + parameter-object + (hits 1/1) (matched: 'parameter-object') constraint CS = {9} extremes [1, 1] + + hits 0/688 nti 10 constraint DS = {10} extremes [1, 2] + English: + story + (hits 0/4) constraint DS = {10} extremes [2, 2] + this story + constraint CS = {10} extremes [2, 2] + story + constraint CS = {10} extremes [1, 1] + + nti 11 constraint DS = {11} extremes [2, infinity) + English: + episode of + constraint DS = {11} extremes [4, 4] + episode {...} + constraint DS = {11} extremes [2, infinity) + + hits 7/186 nti 12 constraint CS = {12} extremes [2, 3] + English: + story title + (hits 1/9) (matched: 'story title') constraint CS = {12} extremes [2, 2] + story author + (hits 1/8) (matched: 'story author') constraint CS = {12} extremes [2, 2] + story headline + (hits 1/7) (matched: 'story headline') constraint CS = {12} extremes [2, 2] + story genre + (hits 1/6) (matched: 'story genre') constraint CS = {12} extremes [2, 2] + story description + (hits 1/5) (matched: 'story description') constraint CS = {12} extremes [2, 2] + story creation year + (hits 1/1) (matched: 'story creation year') constraint CS = {12} extremes [3, 3] + release number + (hits 1/4) (matched: 'release number') constraint CS = {12} extremes [2, 2] + + nti 15 constraint DW = {13, 14, 15} extremes [1, infinity) + English: + + constraint DS = {13, 14} & CW = {13, 14} extremes [2, 3] + {...} + constraint DS = {13} extremes [2, infinity) + + constraint CS = {14} extremes [1, 2] + cover art ( ) + constraint DS = {15} extremes [5, 5] + cover art + constraint CS = {15} extremes [2, 2] + existing story file + constraint CS = {15} extremes [3, 3] + existing story file called {} + constraint DS = {15} extremes [5, 5] + file of {} called {} + constraint DS = {15} extremes [5, 5] + file {} in {} + constraint DS = {15} extremes [4, 4] + file {} + constraint DS = {15} extremes [2, 2] + style sheet {} + constraint DS = {15} extremes [3, 3] + javascript {} + constraint DS = {15} extremes [2, 2] + introductory booklet + constraint CS = {15} extremes [2, 2] + introductory postcard + constraint CS = {15} extremes [2, 2] + website + constraint CS = {15} extremes [1, 1] + separate figures + constraint CS = {15} extremes [2, 2] + separate sounds + constraint CS = {15} extremes [2, 2] + {} website + constraint DS = {15} extremes [2, 2] + interpreter + constraint CS = {15} extremes [1, 1] + {} interpreter + constraint DS = {15} extremes [2, 2] + + nti 13 constraint CS = {13} extremes [1, 1] + English: + private + constraint CS = {13} extremes [1, 1] + public + constraint CS = {13} extremes [1, 1] + + nti 14 constraint CS = {14} extremes [1, 2] + English: + solution + constraint CS = {14} extremes [1, 1] + source text + constraint CS = {14} extremes [2, 2] + library card + constraint CS = {14} extremes [2, 2] + + hits 12/210 nti 16 constraint CS = {16} extremes [1, 2] + English: + room + (hits 2/10) (matched: 'room') constraint CS = {16} extremes [1, 1] + thing + (hits 2/8) (matched: 'thing') constraint CS = {16} extremes [1, 1] + container + (hits 2/6) (matched: 'container') constraint CS = {16} extremes [1, 1] + supporter + (hits 2/4) (matched: 'supporter') constraint CS = {16} extremes [1, 1] + person + (hits 2/2) (matched: 'person') constraint CS = {16} extremes [1, 1] + player's holdall + (hits 2/2) (matched: 'player's holdall') constraint CS = {16} extremes [2, 2] + + hits 4/292 nti 17 constraint CS = {17} extremes [1, 3] + English: + initial appearance + (hits 1/2) (matched: 'initial appearance') constraint CS = {17} extremes [2, 2] + wearable + (hits 1/1) (matched: 'wearable') constraint CS = {17} extremes [1, 1] + fixed in place + (hits 1/1) (matched: 'fixed in place') constraint CS = {17} extremes [3, 3] + matching key + (hits 1/1) (matched: 'matching key') constraint CS = {17} extremes [2, 2] + + hits 288/54970 nti 18 constraint DS = {18} extremes [1, infinity) + English: + _something/anything {***} + (hits 207/15446) (matched long text) constraint DS = {18} extremes [1, infinity) + _somewhere/anywhere {***} + (hits 0/15239) constraint DS = {18} extremes [1, infinity) + _someone/anyone/somebody/anybody {***} + (hits 57/15239) (matched: 'someone') constraint DS = {18} extremes [1, infinity) + _everything {***} + (hits 0/15182) constraint DS = {18} extremes [1, infinity) + _everywhere {***} + (hits 0/15182) constraint DS = {18} extremes [1, infinity) + _everyone/everybody {***} + (hits 0/15182) constraint DS = {18} extremes [1, infinity) + _nowhere {***} + (hits 24/15182) (matched: 'nowhere') constraint DS = {18} extremes [1, infinity) + _nobody/no-one {***} + (hits 0/15158) constraint DS = {18} extremes [1, infinity) + _no _one {***} + (hits 0/14132) constraint DS = {18} extremes [2, infinity) + + hits 0/2166 nti 19 constraint CS = {19} extremes [1, 1] + English: + nowhere + (hits 0/1) constraint CS = {19} extremes [1, 1] + + hits 2/186 nti 20 constraint CS = {20} extremes [1, 3] + English: + player + (hits 1/1) (matched: 'player') constraint CS = {20} extremes [1, 1] + time of day + (hits 1/1) (matched: 'time of day') constraint CS = {20} extremes [3, 3] + + hits 1/334 nti 21 constraint CS = {21} extremes [1, 1] + English: + yourself + (hits 1/1) (matched: 'yourself') constraint CS = {21} extremes [1, 1] + + nti 22 constraint CS = {22} extremes [1, 2] + English: + worn + constraint CS = {22} extremes [1, 1] + carried + constraint CS = {22} extremes [1, 1] + initially carried + constraint CS = {22} extremes [2, 2] + + hits 1/136 nti 23 constraint CS = {23} extremes [1, 1] + English: + device + (hits 1/1) (matched: 'device') constraint CS = {23} extremes [1, 1] + + hits 1/138 nti 24 constraint CS = {24} extremes [1, 1] + English: + backdrop + (hits 1/1) (matched: 'backdrop') constraint CS = {24} extremes [1, 1] + + hits 1/292 nti 25 constraint CS = {25} extremes [1, 1] + English: + scenery + (hits 1/1) (matched: 'scenery') constraint CS = {25} extremes [1, 1] + + nti 26 constraint CS = {26} extremes [1, 1] + English: + everywhere + constraint CS = {26} extremes [1, 1] + + hits 2/190 nti 27 constraint CS = {27} extremes [1, 1] + English: + region + (hits 2/2) (matched: 'region') constraint CS = {27} extremes [1, 1] + + hits 1/292 nti 28 constraint CS = {28} extremes [2, 2] + English: + map region + (hits 1/1) (matched: 'map region') constraint CS = {28} extremes [2, 2] + + hits 19/2128 nti 29 constraint CS = {29} extremes [1, 1] + English: + direction + (hits 13/45) (matched: 'direction') constraint CS = {29} extremes [1, 1] + door + (hits 6/32) (matched: 'door') constraint CS = {29} extremes [1, 1] + + hits 2/24 nti 30 constraint CS = {30} extremes [1, 1] + English: + up + (hits 1/2) (matched: 'up') constraint CS = {30} extremes [1, 1] + down + (hits 1/1) (matched: 'down') constraint CS = {30} extremes [1, 1] + + hits 2/292 nti 31 constraint CS = {31} extremes [1, 2] + English: + opposite + (hits 1/1) (matched: 'opposite') constraint CS = {31} extremes [1, 1] + other side + (hits 1/1) (matched: 'other side') constraint CS = {31} extremes [2, 2] + + hits 0/2166 nti 6 constraint CS = {6} extremes [1, 1] + English: + below + (hits 0/15) constraint CS = {6} extremes [1, 1] + above + (hits 0/15) constraint CS = {6} extremes [1, 1] + + nti 7 constraint DS = {7} extremes [2, infinity) + English: + mapping {...} + constraint DS = {7} extremes [2, infinity) + + nti 8 constraint DS = {8} extremes [2, infinity) + English: + mapped {...} of constraint DS = {8} extremes [3, infinity) - above + mapped {...} constraint DS = {8} extremes [2, infinity) - below + {...} of + constraint DS = {8} extremes [2, infinity) + {...} from constraint DS = {8} extremes [2, infinity) - nti 10 constraint (none) extremes [1, infinity) + hits 2/24 nti 9 constraint CS = {9} extremes [1, 1] English: - of - constraint DS = {10} extremes [3, infinity) - - constraint (none) extremes [1, infinity) - {...} of - constraint DS = {10} extremes [3, infinity) + inside + (hits 1/2) (matched: 'inside') constraint CS = {9} extremes [1, 1] + outside + (hits 1/1) (matched: 'outside') constraint CS = {9} extremes [1, 1] - nti 13 constraint (none) extremes [1, infinity) - English: - - constraint (none) extremes [2, infinity) - - constraint (none) extremes [1, infinity) - - nti 9 constraint (none) extremes [1, infinity) - English: - first room - constraint CS = {9} extremes [2, 2] - level - constraint DS = {9} extremes [2, 2] - - constraint (none) extremes [1, infinity) - - constraint (none) extremes [1, infinity) - - internal nti 14 constraint (none) extremes [1, infinity) - - nti 15 constraint (none) extremes [1, 1] - English: - - constraint CS = {r0} extremes [1, 1] - - constraint (none) extremes [1, 1] - - constraint CS = {11} extremes [1, 1] - - constraint (none) extremes [1, 1] - {###} - constraint (none) extremes [1, 1] - - nti 11 constraint CS = {11} extremes [1, 1] - English: - on - constraint CS = {11} extremes [1, 1] - off - constraint CS = {11} extremes [1, 1] - - internal nti 16 constraint (none) extremes [1, 1] - - nti 13 constraint DS = {13} extremes [2, infinity) - English: - size {***} - constraint DS = {13} extremes [2, infinity) - font {} {***} - constraint DS = {13} extremes [2, infinity) - colour {} {***} - constraint DS = {13} extremes [2, infinity) - at from {...} - constraint DS = {13} extremes [4, infinity) - at {***} - constraint DS = {13} extremes [2, infinity) - - hits 1/292 nti 14 constraint CS = {14} extremes [1, 1] + hits 1/292 nti 10 constraint CS = {10} extremes [1, 1] English: recurring - (hits 1/5) (matched: 'recurring') constraint CS = {14} extremes [1, 1] + (hits 1/6) (matched: 'recurring') constraint CS = {10} extremes [1, 1] - hits 1/2 nti 15 constraint CS = {15} extremes [2, 2] + hits 1/2 nti 11 constraint CS = {11} extremes [2, 2] English: entire game - (hits 1/1) (matched: 'entire game') constraint CS = {15} extremes [2, 2] + (hits 1/1) (matched: 'entire game') constraint CS = {11} extremes [2, 2] - hits 4/8 nti 17 constraint (none) extremes [1, infinity) + hits 4/8 nti 10 constraint (none) extremes [1, infinity) English: (hits 4/4) (matched: 'the entire game') constraint (none) extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - nti 18 constraint (none) extremes [1, infinity) + nti 11 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) - hits 0/4 nti 16 constraint (none) extremes [1, infinity) + hits 0/4 nti 12 constraint (none) extremes [1, infinity) English: (hits 0/1) constraint DS = {15} extremes [5, infinity) play begins - constraint CS = {16} extremes [2, 2] + constraint CS = {12} extremes [2, 2] play ends - constraint CS = {16} extremes [2, 2] + constraint CS = {12} extremes [2, 2] begins - (hits 0/1) constraint DS = {16} extremes [2, infinity) + (hits 0/2) constraint DS = {12} extremes [2, infinity) ends - (hits 0/1) constraint DS = {16} extremes [2, infinity) + (hits 0/2) constraint DS = {12} extremes [2, infinity) ends - (hits 0/1) constraint DS = {16} extremes [3, infinity) + (hits 0/2) constraint DS = {12} extremes [3, infinity) ends {...} - (hits 0/1) constraint DS = {16} extremes [3, infinity) + (hits 0/2) constraint DS = {12} extremes [3, infinity) (hits 0/2) constraint (none) extremes [1, infinity) - hits 4/8 nti 19 constraint (none) extremes [1, infinity) + hits 4/8 nti 12 constraint (none) extremes [1, infinity) English: (hits 4/4) (matched: 'the entire game') constraint (none) extremes [2, infinity) constraint (none) extremes [1, infinity) - hits 4/8 nti 20 constraint (none) extremes [1, infinity) + hits 4/8 nti 13 constraint (none) extremes [1, infinity) English: (hits 4/4) (matched: 'entire game') constraint (none) extremes [1, infinity) - internal nti 21 constraint (none) extremes [1, infinity) + internal nti 14 constraint (none) extremes [1, infinity) - internal nti 22 constraint (none) extremes [1, infinity) + internal nti 15 constraint (none) extremes [1, infinity) - nti 23 constraint (none) extremes [1, infinity) + nti 16 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) - hits 0/14 nti 17 constraint CS = {17} extremes [1, 1] + hits 2/186 nti 13 constraint CS = {13} extremes [1, 2] + English: + score + (hits 1/2) (matched: 'score') constraint CS = {13} extremes [1, 1] + maximum score + (hits 1/1) (matched: 'maximum score') constraint CS = {13} extremes [2, 2] + + hits 0/14 nti 14 constraint CS = {14} extremes [1, 1] English: rankings - constraint CS = {17} extremes [1, 1] + constraint CS = {14} extremes [1, 1] - hits 2/180 nti 18 constraint CS = {18} extremes [1, 1] + hits 1/180 nti 15 constraint CS = {15} extremes [1, 1] English: waiting - (hits 1/2) (matched: 'waiting') constraint CS = {18} extremes [1, 1] - going - (hits 1/1) (matched: 'going') constraint CS = {18} extremes [1, 1] + (hits 1/1) (matched: 'waiting') constraint CS = {15} extremes [1, 1] - nti 19 constraint DS = {19} extremes [2, infinity) - English: - {...} action - constraint DS = {19} extremes [2, infinity) - - hits 490/20500 nti 24 constraint (none) extremes [1, 1] - English: - - (hits 490/10250) (matched: 'it') constraint (none) extremes [1, 1] - - internal hits 227/664 nti 25 constraint (none) extremes [1, infinity) - - hits 378/10710 nti 20 constraint DS = {20} extremes [2, infinity) - English: - {...} to - (hits 378/476) (matched: 'giving it to') constraint DS = {20} extremes [2, infinity) - - hits 13/26 nti 21 constraint (none) extremes [1, infinity) - English: - ( matched as {} ) - (hits 6/6) (matched: 'room gone from ( matched as from )') constraint DS = {21} extremes [6, infinity) - ( {...} ) - constraint DS = {21} extremes [4, infinity) - - (hits 7/7) (matched: 'abbreviated form allowed') constraint (none) extremes [1, infinity) - - hits 13/26 nti 26 constraint (none) extremes [1, infinity) - English: - - (hits 0/13) constraint (none) extremes [1, infinity) - {...} - (hits 13/13) (matched: 'room gone from') constraint (none) extremes [1, infinity) - - hits 90/1036 nti 27 constraint DS = {22} extremes [1, infinity) + hits 90/1036 nti 17 constraint DS = {16} extremes [1, infinity) English: - (hits 90/222) (matched long text) constraint DS = {22} extremes [2, infinity) + (hits 90/252) (matched long text) constraint DS = {16} extremes [2, infinity) - (hits 0/135) constraint DS = {22} extremes [1, infinity) + (hits 0/163) constraint DS = {16} extremes [1, infinity) - hits 90/520 nti 22 constraint DS = {22} extremes [1, infinity) + hits 90/614 nti 16 constraint DS = {16} extremes [1, infinity) English: action - (hits 90/260) (matched long text) constraint DS = {22} extremes [1, infinity) + (hits 90/307) (matched long text) constraint DS = {16} extremes [1, infinity) action - (hits 0/3) constraint CS = {22} extremes [1, 1] + (hits 0/4) constraint CS = {16} extremes [1, 1] - hits 90/182 nti 28 constraint (none) extremes [0, infinity) + hits 90/182 nti 18 constraint (none) extremes [0, infinity) English: ^ (hits 90/91) (matched long text) constraint (none) extremes [0, infinity) - hits 1/182 nti 23 constraint DS = {23} extremes [1, infinity) + hits 1/182 nti 17 constraint DS = {17} extremes [1, infinity) English: {***} that/which vary/varies - (hits 1/90) (matched: 'name based rule producing nothing that varies') constraint DS = {23} extremes [2, infinity) + (hits 1/91) (matched: 'name based rule producing nothing that varies') constraint DS = {17} extremes [2, infinity) {***} variable - (hits 0/89) constraint DS = {23} extremes [1, infinity) + (hits 0/90) constraint DS = {17} extremes [1, infinity) - hits 90/180 nti 29 constraint (none) extremes [1, infinity) + hits 90/180 nti 19 constraint (none) extremes [1, infinity) English: (hits 0/90) constraint (none) extremes [1, infinity) {...} (hits 90/90) (matched: 'switching the story transcript on') constraint (none) extremes [1, infinity) - hits 128/876 nti 26 constraint DS = {26} extremes [1, infinity) - English: - out of world - (hits 16/16) (matched: 'out of world') constraint CS = {26} extremes [3, 3] - abbreviable - (hits 2/18) (matched: 'abbreviable') constraint CS = {26} extremes [1, 1] - with past participle {...} - (hits 0/177) constraint DS = {26} extremes [4, infinity) - applying to - (hits 104/302) (matched long text) constraint DS = {26} extremes [3, infinity) - requiring light - (hits 6/22) (matched: 'requiring light') constraint CS = {26} extremes [2, 2] - - hits 104/208 nti 25 constraint (none) extremes [1, infinity) - English: - nothing - (hits 45/45) (matched: 'nothing') constraint CS = {25} extremes [1, 1] - one and one - (hits 11/11) (matched: 'one carried thing and one visible thing') constraint DS = {25} extremes [5, infinity) - one and - (hits 0/2) constraint DS = {25} extremes [4, infinity) - and one - (hits 0/2) constraint DS = {25} extremes [4, infinity) - and - (hits 0/7) constraint DS = {25} extremes [3, infinity) - nothing or one - (hits 2/2) (matched: 'nothing or one thing') constraint DS = {25} extremes [4, infinity) - one - (hits 40/46) (matched: 'one visible thing') constraint DS = {25} extremes [2, infinity) - two - (hits 6/6) (matched: 'two things') constraint DS = {25} extremes [2, infinity) - - constraint (none) extremes [1, infinity) - {...} - constraint (none) extremes [1, infinity) - - hits 70/140 nti 30 constraint (none) extremes [1, infinity) - English: - - (hits 70/70) (matched: 'visible thing') constraint (none) extremes [1, infinity) - - hits 70/140 nti 31 constraint (none) extremes [1, infinity) - English: - - (hits 12/12) (matched: 'visible thing') constraint DS = {24} extremes [2, infinity) - - (hits 58/58) (matched: 'infection color') constraint (none) extremes [1, infinity) - - hits 12/24 nti 24 constraint CS = {24} extremes [1, 1] - English: - visible - (hits 6/12) (matched: 'visible') constraint CS = {24} extremes [1, 1] - touchable - (hits 0/6) constraint CS = {24} extremes [1, 1] - carried - (hits 6/6) (matched: 'carried') constraint CS = {24} extremes [1, 1] - - hits 90/180 nti 6 constraint (none) extremes [1, infinity) + hits 90/180 nti 20 constraint (none) extremes [1, infinity) English: (hits 90/90) (matched long text) constraint (none) extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - hits 128/256 nti 7 constraint (none) extremes [1, infinity) + hits 128/256 nti 21 constraint (none) extremes [1, infinity) English: {...} (hits 19/128) (matched: 'applying to nothing or one thing and') constraint (none) extremes [1, infinity) - (hits 19/109) (matched: 'applying to one visible thing and requiring light') constraint DS = {26} extremes [2, infinity) + (hits 19/109) (matched: 'applying to one visible thing and requiring light') constraint DS = {20} extremes [2, infinity) - (hits 90/90) (matched long text) constraint DS = {26} extremes [1, infinity) + (hits 90/90) (matched long text) constraint DS = {20} extremes [1, infinity) - hits 128/1002 nti 27 constraint DS = {26} extremes [1, infinity) + hits 128/1002 nti 21 constraint DS = {20} extremes [1, infinity) English: , and - (hits 0/300) constraint DS = {26, 27} extremes [3, infinity) + (hits 0/303) constraint DS = {20, 21} extremes [3, infinity) and - (hits 19/343) (matched: 'applying to nothing or one thing and') constraint DS = {26, 27} extremes [2, infinity) + (hits 19/339) (matched: 'applying to nothing or one thing and') constraint DS = {20, 21} extremes [2, infinity) , - (hits 0/324) constraint DS = {26, 27} extremes [2, infinity) + (hits 0/320) constraint DS = {20, 21} extremes [2, infinity) - (hits 109/379) (matched long text) constraint DS = {26} extremes [1, infinity) + (hits 109/363) (matched long text) constraint DS = {20} extremes [1, infinity) - hits 958/2310 nti 6 constraint (none) extremes [1, infinity) + hits 128/856 nti 20 constraint DS = {20} extremes [1, infinity) English: - doing something/anything other than - (hits 0/182) constraint DS = {6} extremes [5, infinity) - doing something/anything except - (hits 0/240) constraint DS = {6} extremes [4, infinity) - doing something/anything to/with - (hits 0/240) constraint DS = {6} extremes [4, infinity) - doing something/anything - constraint CS = {6} extremes [2, 2] - doing something/anything {...} - (hits 0/450) constraint DS = {6} extremes [3, infinity) - - (hits 958/1155) (matched long text) constraint (none) extremes [1, infinity) + out of world + (hits 16/79) (matched: 'out of world') constraint CS = {20} extremes [3, 3] + abbreviable + (hits 2/52) (matched: 'abbreviable') constraint CS = {20} extremes [1, 1] + with past participle {...} + (hits 0/177) constraint DS = {20} extremes [4, infinity) + applying to + (hits 104/292) (matched long text) constraint DS = {20} extremes [3, infinity) + requiring light + (hits 6/53) (matched: 'requiring light') constraint CS = {20} extremes [2, 2] - nti 31 constraint (none) extremes [1, infinity) - English: - to/with {} - constraint DS = {31} extremes [3, infinity) - - constraint (none) extremes [1, infinity) - - nti 30 constraint (none) extremes [1, infinity) - English: - _,/or {...} - constraint DS = {30} extremes [2, infinity) - {...} to/with {...} - constraint DS = {30} extremes [3, infinity) - {...} - constraint (none) extremes [1, infinity) - - hits 326/652 nti 8 constraint (none) extremes [1, infinity) - English: - - (hits 0/97) constraint DS = {28} extremes [3, infinity) - - (hits 326/326) (matched long text) constraint (none) extremes [1, infinity) - - hits 326/652 nti 9 constraint (none) extremes [1, infinity) - English: - {...} - (hits 326/326) (matched long text) constraint (none) extremes [1, infinity) - - hits 12/4764 nti 28 constraint DS = {28} extremes [2, infinity) - English: - fixed in place {***} - (hits 0/983) constraint DS = {28} extremes [3, infinity) - is/are/was/were/been/listed in {***} - (hits 0/1425) constraint DS = {28} extremes [2, infinity) - in {...} - (hits 12/1425) (matched: 'in the public library') constraint DS = {28} extremes [2, infinity) - - hits 958/2310 nti 10 constraint (none) extremes [1, infinity) - English: - - (hits 0/447) constraint DS = {29} extremes [3, infinity) - - (hits 958/1155) (matched long text) constraint (none) extremes [1, infinity) - - hits 0/3318 nti 29 constraint DS = {29} extremes [2, infinity) - English: - , _or - (hits 0/702) constraint DS = {29} extremes [3, infinity) - _,/or - (hits 0/1034) constraint DS = {29} extremes [2, infinity) - - hits 958/2310 nti 11 constraint (none) extremes [1, infinity) - English: - - (hits 0/1155) constraint (none) extremes [1, infinity) - - (hits 0/456) constraint DS = {28} extremes [3, infinity) - - (hits 958/1155) (matched long text) constraint (none) extremes [1, infinity) - - internal hits 0/2330 nti 12 constraint (none) extremes [1, infinity) - - internal hits 958/2310 nti 13 constraint (none) extremes [1, infinity) - - hits 556/21224 nti 7 constraint (none) extremes [1, infinity) - English: - asking to try - (hits 0/936) constraint DS = {7} extremes [5, infinity) - trying - (hits 23/1972) (matched long text) constraint DS = {7} extremes [3, infinity) - an actor trying - (hits 0/1551) constraint DS = {7} extremes [4, infinity) - an actor - (hits 408/1949) (matched long text) constraint DS = {7} extremes [3, infinity) - trying - (hits 0/1947) constraint DS = {7} extremes [2, infinity) - - (hits 125/10181) (matched long text) constraint (none) extremes [1, infinity) - - hits 28/2746 nti 13 constraint (none) extremes [1, infinity) - English: - we are asking to try - (hits 0/231) constraint DS = {13} extremes [7, infinity) - asking to try - (hits 0/623) constraint DS = {13} extremes [5, infinity) - trying - (hits 0/1096) constraint DS = {13} extremes [3, infinity) - an actor trying - (hits 0/1001) constraint DS = {13} extremes [4, infinity) - an actor - (hits 3/1096) (matched: 'an actor smelling') constraint DS = {13} extremes [3, infinity) - we are trying - (hits 0/1001) constraint DS = {13} extremes [4, infinity) - trying - (hits 0/1099) constraint DS = {13} extremes [2, infinity) - we are - (hits 0/1093) constraint DS = {13} extremes [3, infinity) - - (hits 25/1370) (matched long text) constraint (none) extremes [1, infinity) - - hits 0/1804 nti 14 constraint DS = {14} extremes [2, infinity) - English: - we are not asking to try - (hits 0/135) constraint DS = {14} extremes [8, infinity) - not asking to try - (hits 0/341) constraint DS = {14} extremes [6, infinity) - not trying - (hits 0/871) constraint DS = {14} extremes [4, infinity) - an actor not trying - (hits 0/525) constraint DS = {14} extremes [5, infinity) - an actor not - (hits 0/871) constraint DS = {14} extremes [4, infinity) - we are not trying - (hits 0/525) constraint DS = {14} extremes [5, infinity) - not trying - (hits 0/901) constraint DS = {14} extremes [3, infinity) - we are not - (hits 0/871) constraint DS = {14} extremes [4, infinity) - not - (hits 0/902) constraint DS = {14} extremes [2, infinity) - - hits 0/2182 nti 11 constraint DS = {11} extremes [3, infinity) - English: - we have asked to try - (hits 0/231) constraint DS = {11} extremes [7, infinity) - has tried - (hits 0/994) constraint DS = {11} extremes [4, infinity) - an actor has tried - (hits 0/619) constraint DS = {11} extremes [5, infinity) - an actor has - (hits 0/994) constraint DS = {11} extremes [4, infinity) - we have tried - (hits 0/994) constraint DS = {11} extremes [4, infinity) - we have - (hits 0/1091) constraint DS = {11} extremes [3, infinity) - - hits 0/1870 nti 12 constraint DS = {12} extremes [4, infinity) - English: - we have not asked to try - (hits 0/136) constraint DS = {12} extremes [8, infinity) - has not tried - (hits 0/592) constraint DS = {12} extremes [5, infinity) - an actor has not tried - (hits 0/402) constraint DS = {12} extremes [6, infinity) - an actor has not - (hits 0/592) constraint DS = {12} extremes [5, infinity) - we have not tried - (hits 0/592) constraint DS = {12} extremes [5, infinity) - we have not - (hits 0/935) constraint DS = {12} extremes [4, infinity) - - hits 150/23102 nti 14 constraint (none) extremes [1, infinity) - English: - - (hits 85/11551) (matched long text) constraint (none) extremes [1, infinity) - - (hits 65/6518) (matched long text) constraint (none) extremes [2, infinity) - - internal hits 76/13036 nti 15 constraint (none) extremes [1, infinity) - - internal hits 584/24122 nti 16 constraint (none) extremes [1, infinity) - - internal nti 17 constraint (none) extremes [1, infinity) - - hits 0/1390 nti 8 constraint CS = {8} extremes [2, 2] - English: - doing it - constraint CS = {8} extremes [2, 2] - - hits 584/1390 nti 11 constraint (none) extremes [1, infinity) - English: - when/while - (hits 11/180) (matched long text) constraint DS = {11} extremes [3, infinity) - - (hits 573/684) (matched long text) constraint (none) extremes [1, infinity) - {...} when/while - (hits 0/65) constraint DS = {11} extremes [3, infinity) - {...} when/while {...} - (hits 0/65) constraint DS = {11} extremes [3, infinity) - - internal hits 19/38 nti 18 constraint (none) extremes [1, infinity) - - hits 584/1406 nti 10 constraint (none) extremes [1, infinity) - English: - in the presence of - (hits 1/45) (matched long text) constraint DS = {10} extremes [6, infinity) - - (hits 583/702) (matched long text) constraint (none) extremes [1, infinity) - - hits 584/1406 nti 9 constraint (none) extremes [1, infinity) - English: - in - (hits 0/254) constraint DS = {9} extremes [2, infinity) - - (hits 584/703) (matched long text) constraint (none) extremes [1, infinity) - - internal hits 584/1406 nti 19 constraint (none) extremes [1, infinity) - - hits 194/444 nti 12 constraint (none) extremes [1, infinity) - English: - something/anything - (hits 78/79) (matched: 'something') constraint CS = {12} extremes [1, 1] - something/anything else - (hits 0/9) constraint CS = {12} extremes [2, 2] - - (hits 116/144) (matched long text) constraint (none) extremes [1, infinity) - - hits 0/18 nti 13 constraint CS = {13} extremes [1, 1] - English: - nowhere - constraint CS = {13} extremes [1, 1] - somewhere - constraint CS = {13} extremes [1, 1] - - hits 5/10 nti 14 constraint CS = {14} extremes [1, 1] - English: - something/anything - (hits 4/5) (matched: 'something') constraint CS = {14} extremes [1, 1] - it - (hits 1/1) (matched: 'it') constraint CS = {14} extremes [1, 1] - - hits 276/1144 nti 20 constraint (none) extremes [1, infinity) - English: - ^ - (hits 0/572) constraint (none) extremes [1, infinity) - ^ - (hits 0/572) constraint (none) extremes [1, infinity) - - (hits 25/572) (matched: 'the current working sack') constraint (none) extremes [1, infinity) - - (hits 42/547) (matched: 'the second noun') constraint (none) extremes [1, infinity) - - (hits 209/505) (matched long text) constraint (none) extremes [1, infinity) - - internal hits 1144/2288 nti 21 constraint (none) extremes [0, 0] - - hits 208/416 nti 18 constraint (none) extremes [1, infinity) + hits 104/208 nti 19 constraint (none) extremes [1, infinity) English: nothing - constraint CS = {18} extremes [1, 1] - + (hits 45/45) (matched: 'nothing') constraint CS = {19} extremes [1, 1] + one and one + (hits 11/11) (matched: 'one carried thing and one visible thing') constraint DS = {19} extremes [5, infinity) + one and + (hits 0/2) constraint DS = {19} extremes [4, infinity) + and one + (hits 0/2) constraint DS = {19} extremes [4, infinity) + and + (hits 0/7) constraint DS = {19} extremes [3, infinity) + nothing or one + (hits 2/2) (matched: 'nothing or one thing') constraint DS = {19} extremes [4, infinity) + one + (hits 40/46) (matched: 'one visible thing') constraint DS = {19} extremes [2, infinity) + two + (hits 6/6) (matched: 'two things') constraint DS = {19} extremes [2, infinity) + + constraint (none) extremes [1, infinity) + {...} + constraint (none) extremes [1, infinity) + + hits 70/140 nti 22 constraint (none) extremes [1, infinity) + English: + + (hits 70/70) (matched: 'visible thing') constraint (none) extremes [1, infinity) + + hits 70/140 nti 23 constraint (none) extremes [1, infinity) + English: + + (hits 12/12) (matched: 'visible thing') constraint DS = {18} extremes [2, infinity) + + (hits 58/58) (matched: 'infection color') constraint (none) extremes [1, infinity) + + hits 12/24 nti 18 constraint CS = {18} extremes [1, 1] + English: + visible + (hits 6/12) (matched: 'visible') constraint CS = {18} extremes [1, 1] + touchable + (hits 0/6) constraint CS = {18} extremes [1, 1] + carried + (hits 6/6) (matched: 'carried') constraint CS = {18} extremes [1, 1] + + hits 13/26 nti 22 constraint (none) extremes [1, infinity) + English: + ( matched as {} ) + (hits 6/6) (matched: 'room gone from ( matched as from )') constraint DS = {22} extremes [6, infinity) + ( {...} ) + constraint DS = {22} extremes [4, infinity) + + (hits 7/7) (matched: 'abbreviated form allowed') constraint (none) extremes [1, infinity) + + hits 13/26 nti 24 constraint (none) extremes [1, infinity) + English: + + (hits 0/13) constraint (none) extremes [1, infinity) + {...} + (hits 13/13) (matched: 'room gone from') constraint (none) extremes [1, infinity) + + nti 23 constraint DS = {23} extremes [2, infinity) + English: + {...} action + constraint DS = {23} extremes [2, infinity) + + nti 24 constraint DS = {24} extremes [2, infinity) + English: + check {...} + constraint DS = {24} extremes [2, infinity) + carry out {...} + constraint DS = {24} extremes [3, infinity) + report {...} + constraint DS = {24} extremes [2, infinity) + + internal hits 227/664 nti 25 constraint (none) extremes [1, infinity) + + hits 378/10710 nti 25 constraint DS = {25} extremes [2, infinity) + English: + {...} to + (hits 378/378) (matched: 'giving it to') constraint DS = {25} extremes [2, infinity) + + hits 595/1406 nti 29 constraint (none) extremes [1, infinity) + English: + doing something/anything other than + (hits 0/98) constraint DS = {29} extremes [5, infinity) + doing something/anything except + (hits 0/134) constraint DS = {29} extremes [4, infinity) + doing something/anything to/with {...} + (hits 0/134) constraint DS = {29} extremes [4, infinity) + doing something/anything + constraint CS = {29} extremes [2, 2] + doing something/anything {...} + (hits 0/278) constraint DS = {29} extremes [3, infinity) + + (hits 595/703) (matched long text) constraint (none) extremes [1, infinity) + + nti 28 constraint (none) extremes [1, infinity) + English: + to/with {} + constraint DS = {28} extremes [3, infinity) + + constraint (none) extremes [1, infinity) + + nti 27 constraint (none) extremes [1, infinity) + English: + _,/or {...} + constraint DS = {27} extremes [2, infinity) + {...} to/with {...} + constraint DS = {27} extremes [3, infinity) + {...} + constraint (none) extremes [1, infinity) + + hits 595/1406 nti 26 constraint (none) extremes [1, infinity) + English: + + (hits 0/101) constraint DS = {26} extremes [3, infinity) + + (hits 595/703) (matched long text) constraint (none) extremes [1, infinity) + + hits 0/1038 nti 26 constraint DS = {26} extremes [2, infinity) + English: + , _or + (hits 0/261) constraint DS = {26} extremes [3, infinity) + _,/or + (hits 0/321) constraint DS = {26} extremes [2, infinity) + + hits 595/1406 nti 27 constraint (none) extremes [1, infinity) + English: + + (hits 0/703) constraint (none) extremes [1, infinity) + + (hits 0/703) constraint (none) extremes [1, infinity) + + (hits 595/703) (matched long text) constraint (none) extremes [1, infinity) + + internal hits 0/1406 nti 28 constraint (none) extremes [1, infinity) + + internal hits 595/1406 nti 29 constraint (none) extremes [1, infinity) + + hits 7/676 nti 30 constraint CS = {30} extremes [1, 1] + English: + is + (hits 7/106) (matched: 'is') constraint CS = {30} extremes [1, 1] + not + (hits 0/99) constraint CS = {30} extremes [1, 1] + + hits 0/662 nti 31 constraint (none) extremes [2, infinity) + English: + _in _the _presence _of {...} + (hits 0/80) constraint DS = {31} extremes [5, infinity) + _in {...} + (hits 0/180) constraint DS = {31} extremes [2, infinity) + {...} + (hits 0/331) constraint (none) extremes [2, infinity) + + internal hits 0/662 nti 30 constraint (none) extremes [1, infinity) + + internal hits 1197/30746 nti 31 constraint (none) extremes [0, 0] + + internal hits 1266/2532 nti 6 constraint (none) extremes [0, 0] + + hits 300/1266 nti 7 constraint (none) extremes [1, infinity) + English: + ^ + (hits 0/633) constraint (none) extremes [1, infinity) + ^ + (hits 0/633) constraint (none) extremes [1, infinity) + + (hits 25/633) (matched: 'the current working sack') constraint (none) extremes [1, infinity) + + (hits 42/608) (matched: 'the second noun') constraint (none) extremes [1, infinity) + + (hits 233/566) (matched long text) constraint (none) extremes [1, infinity) + + internal hits 3/17020 nti 8 constraint (none) extremes [1, infinity) + + hits 28/2670 nti 9 constraint (none) extremes [1, infinity) + English: + + (hits 28/1335) (matched long text) constraint (none) extremes [1, infinity) + + hits 0/2132 nti 10 constraint DS = {14} extremes [2, infinity) + English: + + (hits 0/1066) constraint DS = {14} extremes [2, infinity) + + hits 0/2116 nti 11 constraint DS = {11} extremes [3, infinity) + English: + + (hits 0/1058) constraint DS = {11} extremes [3, infinity) + + hits 0/1862 nti 12 constraint DS = {12} extremes [4, infinity) + English: + + (hits 0/931) constraint DS = {12} extremes [4, infinity) + + hits 556/18368 nti 6 constraint (none) extremes [1, infinity) + English: + asking to try + (hits 0/951) constraint DS = {6} extremes [5, infinity) + trying + (hits 23/2205) (matched long text) constraint DS = {6} extremes [3, infinity) + an actor trying + (hits 0/1618) constraint DS = {6} extremes [4, infinity) + an actor + (hits 408/2182) (matched long text) constraint DS = {6} extremes [3, infinity) + trying + (hits 0/2169) constraint DS = {6} extremes [2, infinity) + + (hits 60/8753) (matched long text) constraint (none) extremes [1, infinity) + + (hits 65/5260) (matched long text) constraint (none) extremes [2, infinity) + + hits 28/2670 nti 13 constraint (none) extremes [1, infinity) + English: + we are asking to try + (hits 0/229) constraint DS = {13} extremes [7, infinity) + asking to try + (hits 0/519) constraint DS = {13} extremes [5, infinity) + trying + (hits 0/864) constraint DS = {13} extremes [3, infinity) + an actor trying + (hits 0/849) constraint DS = {13} extremes [4, infinity) + an actor + (hits 3/864) (matched: 'an actor smelling') constraint DS = {13} extremes [3, infinity) + we are trying + (hits 0/849) constraint DS = {13} extremes [4, infinity) + trying + (hits 0/866) constraint DS = {13} extremes [2, infinity) + we are + (hits 0/861) constraint DS = {13} extremes [3, infinity) + + (hits 25/1332) (matched long text) constraint (none) extremes [1, infinity) + + (hits 0/1082) constraint (none) extremes [2, infinity) + + hits 0/2132 nti 14 constraint DS = {14} extremes [2, infinity) + English: + we are not asking to try + (hits 0/134) constraint DS = {14} extremes [8, infinity) + not asking to try + (hits 0/400) constraint DS = {14} extremes [6, infinity) + not trying + (hits 0/977) constraint DS = {14} extremes [4, infinity) + an actor not trying + (hits 0/607) constraint DS = {14} extremes [5, infinity) + an actor not + (hits 0/977) constraint DS = {14} extremes [4, infinity) + we are not trying + (hits 0/607) constraint DS = {14} extremes [5, infinity) + not trying + (hits 0/1066) constraint DS = {14} extremes [3, infinity) + we are not + (hits 0/977) constraint DS = {14} extremes [4, infinity) + not + (hits 0/1066) constraint DS = {14} extremes [2, infinity) + not + (hits 0/1066) constraint DS = {14} extremes [3, infinity) + + hits 0/2116 nti 11 constraint DS = {11} extremes [3, infinity) + English: + we have asked to try + (hits 0/229) constraint DS = {11} extremes [7, infinity) + has tried + (hits 0/976) constraint DS = {11} extremes [4, infinity) + an actor has tried + (hits 0/608) constraint DS = {11} extremes [5, infinity) + an actor has + (hits 0/976) constraint DS = {11} extremes [4, infinity) + we have tried + (hits 0/976) constraint DS = {11} extremes [4, infinity) + we have + (hits 0/1058) constraint DS = {11} extremes [3, infinity) + + hits 0/1862 nti 12 constraint DS = {12} extremes [4, infinity) + English: + we have not asked to try + (hits 0/135) constraint DS = {12} extremes [8, infinity) + has not tried + (hits 0/590) constraint DS = {12} extremes [5, infinity) + an actor has not tried + (hits 0/399) constraint DS = {12} extremes [6, infinity) + an actor has not + (hits 0/590) constraint DS = {12} extremes [5, infinity) + we have not tried + (hits 0/590) constraint DS = {12} extremes [5, infinity) + we have not + (hits 0/931) constraint DS = {12} extremes [4, infinity) + + internal hits 94/12684 nti 13 constraint (none) extremes [1, infinity) + + internal hits 584/21226 nti 14 constraint (none) extremes [1, infinity) + + internal nti 15 constraint (none) extremes [1, infinity) + + hits 0/1390 nti 6 constraint CS = {6} extremes [2, 2] + English: + doing it + constraint CS = {6} extremes [2, 2] + + hits 584/1390 nti 7 constraint (none) extremes [1, infinity) + English: + when/while + (hits 11/72) (matched long text) constraint DS = {7} extremes [3, infinity) + + (hits 573/684) (matched long text) constraint (none) extremes [1, infinity) + {...} when/while + (hits 0/34) constraint DS = {7} extremes [3, infinity) + {...} when/while {...} + (hits 0/34) constraint DS = {7} extremes [3, infinity) + + internal hits 19/38 nti 16 constraint (none) extremes [1, infinity) + + internal hits 584/1406 nti 17 constraint (none) extremes [1, infinity) + + hits 200/406 nti 8 constraint (none) extremes [1, infinity) + English: + something/anything + (hits 79/80) (matched: 'something') constraint CS = {8} extremes [1, 1] + something/anything else + constraint CS = {8} extremes [2, 2] + + (hits 121/124) (matched long text) constraint (none) extremes [1, infinity) + + hits 5/10 nti 9 constraint CS = {9} extremes [1, 1] + English: + something/anything + (hits 4/5) (matched: 'something') constraint CS = {9} extremes [1, 1] + it + (hits 1/1) (matched: 'it') constraint CS = {9} extremes [1, 1] + + internal hits 0/4000 nti 18 constraint (none) extremes [1, infinity) + + hits 1/180 nti 10 constraint CS = {10} extremes [1, 1] + English: + going + (hits 1/1) (matched: 'going') constraint CS = {10} extremes [1, 1] + + hits 0/16 nti 11 constraint CS = {11} extremes [1, 1] + English: + nowhere + constraint CS = {11} extremes [1, 1] + somewhere + constraint CS = {11} extremes [1, 1] + + hits 21/186 nti 12 constraint DS = {12} extremes [1, infinity) + English: + understood + (hits 16/53) (matched: 'command parser error understood') constraint DS = {12} extremes [2, infinity) + noun + (hits 1/4) (matched: 'noun') constraint CS = {12} extremes [1, 1] + location + (hits 1/3) (matched: 'location') constraint CS = {12} extremes [1, 1] + actor-location + (hits 1/2) (matched: 'actor-location') constraint CS = {12} extremes [1, 1] + second noun + (hits 1/8) (matched: 'second noun') constraint CS = {12} extremes [2, 2] + person asked + (hits 1/7) (matched: 'person asked') constraint CS = {12} extremes [2, 2] + + hits 208/416 nti 16 constraint (none) extremes [1, infinity) + English: + nothing + constraint CS = {16} extremes [1, 1] + (hits 1/208) (matched: 'the infection color property') constraint (none) extremes [1, infinity) - the command/commands - (hits 40/67) (matched long text) constraint DS = {18} extremes [3, infinity) + the command/commands + (hits 40/67) (matched long text) constraint DS = {16} extremes [3, infinity) the verb/verbs {...} - (hits 0/27) constraint DS = {18} extremes [3, infinity) - + (hits 0/27) constraint DS = {16} extremes [3, infinity) + (hits 167/167) (matched long text) constraint (none) extremes [1, infinity) - hits 383/766 nti 22 constraint (none) extremes [1, infinity) + hits 383/766 nti 19 constraint (none) extremes [1, infinity) English: {...} (hits 88/383) (matched long text) constraint (none) extremes [1, infinity) - - (hits 88/88) (matched long text) constraint DS = {17} extremes [3, infinity) - + + (hits 88/88) (matched long text) constraint DS = {15} extremes [3, infinity) + (hits 207/207) (matched: '"n"') constraint (none) extremes [1, infinity) - hits 176/352 nti 17 constraint DS = {17} extremes [2, infinity) + hits 176/352 nti 15 constraint DS = {15} extremes [2, infinity) English: - , _and/or - (hits 0/74) constraint DS = {17} extremes [3, infinity) - _,/and/or - (hits 176/176) (matched long text) constraint DS = {17} extremes [2, infinity) + , _and/or + (hits 0/74) constraint DS = {15} extremes [3, infinity) + _,/and/or + (hits 176/176) (matched long text) constraint DS = {15} extremes [2, infinity) - hits 383/766 nti 23 constraint (none) extremes [1, infinity) + hits 383/766 nti 20 constraint (none) extremes [1, infinity) English: {...} (hits 383/383) (matched: '"n"') constraint (none) extremes [1, infinity) - hits 70/554 nti 24 constraint (none) extremes [1, infinity) + hits 50/514 nti 21 constraint (none) extremes [1, infinity) English: {...} - (hits 69/277) (matched long text) constraint (none) extremes [1, infinity) - - (hits 0/32) constraint DS = {15, 16} extremes [4, infinity) - - (hits 1/52) (matched: 'the infection color property') constraint DS = {15} extremes [2, infinity) + (hits 49/257) (matched long text) constraint (none) extremes [1, infinity) + + (hits 0/25) constraint DS = {13, 14} extremes [4, infinity) + + (hits 1/41) (matched: 'the infection color property') constraint DS = {13} extremes [2, infinity) - hits 69/372 nti 16 constraint DS = {16} extremes [2, infinity) + hits 49/298 nti 14 constraint DS = {14} extremes [2, infinity) English: - , _and/or - (hits 0/122) constraint DS = {16} extremes [3, infinity) - _,/and/or - (hits 69/154) (matched long text) constraint DS = {16} extremes [2, infinity) + , _and/or + (hits 0/98) constraint DS = {14} extremes [3, infinity) + _,/and/or + (hits 49/122) (matched long text) constraint DS = {14} extremes [2, infinity) - hits 1/242 nti 15 constraint DS = {15} extremes [2, infinity) + hits 1/180 nti 13 constraint DS = {13} extremes [2, infinity) English: property - (hits 1/89) (matched: 'the infection color property') constraint DS = {15} extremes [2, infinity) + (hits 1/90) (matched: 'the infection color property') constraint DS = {13} extremes [2, infinity) {...} property - (hits 0/88) constraint DS = {15} extremes [2, infinity) + (hits 0/89) constraint DS = {13} extremes [2, infinity) - hits 167/334 nti 21 constraint (none) extremes [1, infinity) + hits 167/334 nti 19 constraint (none) extremes [1, infinity) English: - when/while {...} - (hits 1/26) (matched: 'yourself when the player is not yourself') constraint DS = {21} extremes [3, infinity) - + when/while {...} + (hits 1/42) (matched: 'yourself when the player is not yourself') constraint DS = {19} extremes [3, infinity) + (hits 166/166) (matched: 'giving it to ( with nouns reversed )') constraint (none) extremes [1, infinity) - hits 167/334 nti 25 constraint (none) extremes [1, infinity) + hits 167/334 nti 22 constraint (none) extremes [1, infinity) English: {...} (hits 0/167) constraint (none) extremes [1, infinity) - - (hits 0/13) constraint DS = {20} extremes [3, infinity) - + + (hits 0/47) constraint DS = {18} extremes [3, infinity) + (hits 167/167) (matched: 'giving it to ( with nouns reversed )') constraint (none) extremes [1, infinity) - hits 0/112 nti 20 constraint DS = {20} extremes [2, infinity) + hits 0/274 nti 18 constraint DS = {18} extremes [2, infinity) English: - , _and/or - (hits 0/30) constraint DS = {20} extremes [3, infinity) - _,/and/or - (hits 0/43) constraint DS = {20} extremes [2, infinity) + , _and/or + (hits 0/41) constraint DS = {18} extremes [3, infinity) + _,/and/or + (hits 0/84) constraint DS = {18} extremes [2, infinity) - hits 167/334 nti 26 constraint (none) extremes [1, infinity) + hits 167/334 nti 23 constraint (none) extremes [1, infinity) English: (hits 167/167) (matched: 'giving it to ( with nouns reversed )') constraint (none) extremes [1, infinity) - hits 167/334 nti 19 constraint (none) extremes [1, infinity) + hits 167/334 nti 17 constraint (none) extremes [1, infinity) English: {...} (hits 0/167) constraint (none) extremes [1, infinity) a mistake - constraint CS = {19} extremes [2, 2] + constraint CS = {17} extremes [2, 2] a mistake ( ) - (hits 0/3) constraint DS = {19} extremes [5, 5] + (hits 0/3) constraint DS = {17} extremes [5, 5] a mistake {...} - (hits 0/36) constraint DS = {19} extremes [3, infinity) + (hits 0/45) constraint DS = {17} extremes [3, infinity) the plural of - (hits 0/11) constraint DS = {19} extremes [4, infinity) + (hits 0/11) constraint DS = {17} extremes [4, infinity) plural of - (hits 0/36) constraint DS = {19} extremes [3, infinity) + (hits 0/45) constraint DS = {17} extremes [3, infinity) (hits 2/73) (matched: '"[ice cream]"') constraint (none) extremes [1, 1] ( with nouns reversed ) - (hits 6/6) (matched: 'giving it to ( with nouns reversed )') constraint DS = {19} extremes [6, infinity) + (hits 6/6) (matched: 'giving it to ( with nouns reversed )') constraint DS = {17} extremes [6, infinity) (hits 159/159) (matched: 'requesting the story file version') constraint (none) extremes [1, infinity) - hits 165/330 nti 27 constraint (none) extremes [1, infinity) + hits 165/330 nti 24 constraint (none) extremes [1, infinity) English: (hits 150/165) (matched: 'requesting the story file version') constraint (none) extremes [1, infinity) @@ -9606,60 +9525,43 @@ {...} constraint (none) extremes [1, infinity) - hits 40/80 nti 22 constraint (none) extremes [1, infinity) + hits 40/80 nti 20 constraint (none) extremes [1, infinity) English: {...} when/while {...} - constraint DS = {22} extremes [3, infinity) + constraint DS = {20} extremes [3, infinity) something new - (hits 3/3) (matched: 'something new') constraint CS = {22} extremes [2, 2] + (hits 3/3) (matched: 'something new') constraint CS = {20} extremes [2, 2] (hits 37/37) (matched: 'take') constraint (none) extremes [1, 1] {...} constraint (none) extremes [1, infinity) - hits 1/2 nti 24 constraint (none) extremes [1, infinity) + hits 1/2 nti 22 constraint (none) extremes [1, infinity) English: - when/while {...} - constraint DS = {24} extremes [3, infinity) - + when/while {...} + (hits 0/1) constraint DS = {22} extremes [3, infinity) + (hits 1/1) (matched: 'referring to an ice cream cone') constraint (none) extremes [1, infinity) - hits 1/2 nti 23 constraint (none) extremes [1, infinity) + hits 1/2 nti 21 constraint (none) extremes [1, infinity) English: - referring to - (hits 1/1) (matched: 'referring to an ice cream cone') constraint DS = {23} extremes [3, infinity) - describing - constraint DS = {23} extremes [2, infinity) + referring to + (hits 1/1) (matched: 'referring to an ice cream cone') constraint DS = {21} extremes [3, infinity) + describing + constraint DS = {21} extremes [2, infinity) {...} constraint (none) extremes [1, infinity) - hits 1/2 nti 28 constraint (none) extremes [1, infinity) + hits 1/2 nti 25 constraint (none) extremes [1, infinity) English: (hits 1/1) (matched: 'an ice cream cone') constraint (none) extremes [1, infinity) - + constraint (none) extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - hits 22/186 nti 25 constraint DS = {25} extremes [1, infinity) - English: - understood - (hits 16/25) (matched: 'command parser error understood') constraint DS = {25} extremes [2, infinity) - noun - (hits 1/4) (matched: 'noun') constraint CS = {25} extremes [1, 1] - location - (hits 1/3) (matched: 'location') constraint CS = {25} extremes [1, 1] - actor-location - (hits 1/2) (matched: 'actor-location') constraint CS = {25} extremes [1, 1] - second noun - (hits 1/3) (matched: 'second noun') constraint CS = {25} extremes [2, 2] - person asked - (hits 1/2) (matched: 'person asked') constraint CS = {25} extremes [2, 2] - maximum score - (hits 1/1) (matched: 'maximum score') constraint CS = {25} extremes [2, 2] - - hits 4/8 nti 29 constraint (none) extremes [1, infinity) + hits 4/8 nti 26 constraint (none) extremes [1, infinity) English: (hits 4/4) (matched: 'the player is not yourself') constraint (none) extremes [1, infinity) @@ -9668,39 +9570,39 @@ {...} constraint (none) extremes [1, infinity) - hits 910/1820 nti 26 constraint (none) extremes [1, infinity) + hits 910/1820 nti 23 constraint (none) extremes [1, infinity) English: {...} , {...} - (hits 340/340) (matched long text) constraint DS = {26} extremes [3, infinity) + (hits 340/370) (matched long text) constraint DS = {23} extremes [3, infinity) (hits 400/526) (matched: 'n') constraint (none) extremes [1, 1] {...} (hits 170/170) (matched: 'a locked lockable thing') constraint (none) extremes [1, infinity) - hits 163/326 nti 28 constraint (none) extremes [1, infinity) + hits 163/326 nti 25 constraint (none) extremes [1, infinity) English: (hits 3/163) (matched: 'flavored ice cream') constraint (none) extremes [1, infinity) any things - (hits 0/5) constraint CS = {28} extremes [2, 2] + constraint CS = {25} extremes [2, 2] any - (hits 2/26) (matched: 'any room') constraint DS = {28} extremes [2, infinity) + (hits 2/28) (matched: 'any room') constraint DS = {25} extremes [2, infinity) anything - (hits 0/92) constraint CS = {28} extremes [1, 1] + (hits 0/92) constraint CS = {25} extremes [1, 1] anybody - (hits 0/92) constraint CS = {28} extremes [1, 1] + (hits 0/92) constraint CS = {25} extremes [1, 1] anyone - (hits 0/92) constraint CS = {28} extremes [1, 1] + (hits 0/92) constraint CS = {25} extremes [1, 1] anywhere - (hits 0/92) constraint CS = {28} extremes [1, 1] + (hits 0/92) constraint CS = {25} extremes [1, 1] something related by reversed - constraint DS = {28} extremes [5, infinity) + constraint DS = {25} extremes [5, infinity) something related by - constraint DS = {28} extremes [4, infinity) + (hits 0/2) constraint DS = {25} extremes [4, infinity) something related by {...} - constraint DS = {28} extremes [4, infinity) + (hits 0/2) constraint DS = {25} extremes [4, infinity) - (hits 138/138) (matched: 'something preferably held') constraint CS = {27} extremes [1, 3] + (hits 138/138) (matched: 'something preferably held') constraint CS = {24} extremes [1, 3] (hits 0/13) constraint (none) extremes [2, infinity) @@ -9710,179 +9612,307 @@ {...} constraint (none) extremes [1, infinity) - hits 138/276 nti 27 constraint CS = {27} extremes [1, 3] + hits 138/276 nti 24 constraint CS = {24} extremes [1, 3] English: something - (hits 88/115) (matched: 'something') constraint CS = {27} extremes [1, 1] + (hits 88/115) (matched: 'something') constraint CS = {24} extremes [1, 1] things - (hits 4/27) (matched: 'things') constraint CS = {27} extremes [1, 1] + (hits 4/27) (matched: 'things') constraint CS = {24} extremes [1, 1] things inside - (hits 4/9) (matched: 'things inside') constraint CS = {27} extremes [2, 2] + (hits 4/9) (matched: 'things inside') constraint CS = {24} extremes [2, 2] things preferably held - (hits 3/14) (matched: 'things preferably held') constraint CS = {27} extremes [3, 3] + (hits 3/14) (matched: 'things preferably held') constraint CS = {24} extremes [3, 3] something preferably held - (hits 11/11) (matched: 'something preferably held') constraint CS = {27} extremes [3, 3] + (hits 11/11) (matched: 'something preferably held') constraint CS = {24} extremes [3, 3] other things - (hits 5/5) (matched: 'other things') constraint CS = {27} extremes [2, 2] + (hits 5/5) (matched: 'other things') constraint CS = {24} extremes [2, 2] someone - (hits 15/23) (matched: 'someone') constraint CS = {27} extremes [1, 1] + (hits 15/23) (matched: 'someone') constraint CS = {24} extremes [1, 1] somebody - (hits 0/8) constraint CS = {27} extremes [1, 1] + (hits 0/8) constraint CS = {24} extremes [1, 1] text - (hits 8/8) (matched: 'text') constraint CS = {27} extremes [1, 1] + (hits 8/8) (matched: 'text') constraint CS = {24} extremes [1, 1] topic - constraint CS = {27} extremes [1, 1] + constraint CS = {24} extremes [1, 1] a topic - constraint CS = {27} extremes [2, 2] + constraint CS = {24} extremes [2, 2] object - constraint CS = {27} extremes [1, 1] + constraint CS = {24} extremes [1, 1] an object - constraint CS = {27} extremes [2, 2] + constraint CS = {24} extremes [2, 2] something held - constraint CS = {27} extremes [2, 2] + constraint CS = {24} extremes [2, 2] things held - constraint CS = {27} extremes [2, 2] + constraint CS = {24} extremes [2, 2] - internal hits 3/326 nti 30 constraint (none) extremes [1, infinity) + internal hits 3/326 nti 27 constraint (none) extremes [1, infinity) - hits 1/4 nti 31 constraint DS = {29} extremes [2, infinity) + hits 1/4 nti 28 constraint DS = {26} extremes [2, infinity) English: - (hits 1/1) (matched: 'the file of cover art ( The cover art. )') constraint DS = {29} extremes [3, infinity) + (hits 1/1) (matched: 'the file of cover art ( The cover art. )') constraint DS = {26} extremes [3, infinity) - constraint DS = {29} extremes [2, infinity) + constraint DS = {26} extremes [2, infinity) - hits 1/2 nti 29 constraint DS = {29} extremes [2, infinity) + hits 1/2 nti 26 constraint DS = {26} extremes [2, infinity) English: file - (hits 1/1) (matched: 'file of cover art ( The cover art. )') constraint DS = {29} extremes [2, infinity) + (hits 1/1) (matched: 'file of cover art ( The cover art. )') constraint DS = {26} extremes [2, infinity) - hits 2/690 nti 30 constraint DS = {30} extremes [2, infinity) + hits 2/690 nti 27 constraint DS = {27} extremes [2, infinity) English: figure {...} - (hits 2/213) (matched: 'figure of cover') constraint DS = {30} extremes [2, infinity) + (hits 2/218) (matched: 'figure of cover') constraint DS = {27} extremes [2, infinity) - hits 1/2 nti 6 constraint (none) extremes [1, infinity) + hits 1/2 nti 29 constraint (none) extremes [1, infinity) English: ( ) - (hits 1/1) (matched: 'of cover art ( The cover art. )') constraint DS = {6} extremes [4, infinity) + (hits 1/1) (matched: 'of cover art ( The cover art. )') constraint DS = {29} extremes [4, infinity) constraint (none) extremes [1, infinity) - hits 1/2 nti 31 constraint (none) extremes [1, infinity) + hits 1/2 nti 28 constraint (none) extremes [1, infinity) English: of cover art - (hits 1/1) (matched: 'of cover art') constraint CS = {31} extremes [3, 3] + (hits 1/1) (matched: 'of cover art') constraint CS = {28} extremes [3, 3] constraint (none) extremes [1, 1] {...} constraint (none) extremes [1, infinity) - nti 7 constraint CS = {7} extremes [3, 3] + nti 30 constraint CS = {30} extremes [3, 3] English: of cover art - constraint CS = {7} extremes [3, 3] + constraint CS = {30} extremes [3, 3] - hits 0/2 nti 6 constraint DS = {8} extremes [2, infinity) + hits 0/2 nti 29 constraint DS = {31} extremes [2, infinity) English: - constraint DS = {8} extremes [3, infinity) + (hits 0/1) constraint DS = {31} extremes [3, infinity) - constraint DS = {8} extremes [2, infinity) + (hits 0/1) constraint DS = {31} extremes [2, infinity) - nti 8 constraint DS = {8} extremes [2, infinity) + hits 0/2 nti 31 constraint DS = {31} extremes [2, infinity) English: file - constraint DS = {8} extremes [2, infinity) + (hits 0/1) constraint DS = {31} extremes [2, infinity) - hits 1/688 nti 9 constraint DS = {9} extremes [2, infinity) + hits 1/688 nti 6 constraint DS = {6} extremes [2, infinity) English: sound {...} - (hits 1/156) (matched: 'sound name understood') constraint DS = {9} extremes [2, infinity) + (hits 1/151) (matched: 'sound name understood') constraint DS = {6} extremes [2, infinity) - nti 10 constraint (none) extremes [1, infinity) + nti 7 constraint (none) extremes [1, infinity) English: ( ) - constraint DS = {10} extremes [4, infinity) + constraint DS = {7} extremes [4, infinity) constraint (none) extremes [1, infinity) - nti 7 constraint (none) extremes [1, infinity) + nti 30 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, 1] {...} constraint (none) extremes [1, infinity) - hits 0/1070 nti 13 constraint (none) extremes [2, infinity) + hits 0/1070 nti 10 constraint (none) extremes [2, infinity) English: (hits 0/509) constraint (none) extremes [2, infinity) text - (hits 0/276) constraint DS = {12, 13} extremes [3, infinity) + (hits 0/268) constraint DS = {9, 10} extremes [3, infinity) binary - (hits 0/276) constraint DS = {12, 13} extremes [3, infinity) + (hits 0/268) constraint DS = {9, 10} extremes [3, infinity) - (hits 0/375) constraint DS = {12} extremes [2, infinity) + (hits 0/294) constraint DS = {9} extremes [2, infinity) - hits 0/750 nti 12 constraint DS = {12} extremes [2, infinity) + hits 0/588 nti 9 constraint DS = {9} extremes [2, infinity) English: {file ...} ( owned by ) - (hits 0/77) constraint DS = {12} extremes [7, infinity) + (hits 0/75) constraint DS = {9} extremes [7, infinity) {file ...} - (hits 0/375) constraint DS = {12} extremes [2, infinity) + (hits 0/294) constraint DS = {9} extremes [2, infinity) - nti 11 constraint (none) extremes [1, infinity) + nti 8 constraint (none) extremes [1, infinity) English: another project - constraint CS = {11} extremes [2, 2] + constraint CS = {8} extremes [2, 2] project {} - constraint DS = {11} extremes [2, 2] + constraint DS = {8} extremes [2, 2] {...} constraint (none) extremes [1, infinity) - nti 8 constraint (none) extremes [1, infinity) + nti 31 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, 1] {...} constraint (none) extremes [1, infinity) - nti 9 constraint DS = {14} extremes [2, infinity) + nti 6 constraint DS = {11} extremes [2, infinity) English: - constraint DS = {14} extremes [3, infinity) + constraint DS = {11} extremes [3, infinity) - constraint DS = {14} extremes [2, infinity) + constraint DS = {11} extremes [2, infinity) - nti 14 constraint DS = {14} extremes [2, infinity) + nti 11 constraint DS = {11} extremes [2, infinity) English: called - constraint DS = {14} extremes [2, infinity) + constraint DS = {11} extremes [2, infinity) - hits 0/688 nti 10 constraint (none) extremes [2, infinity) + hits 0/688 nti 7 constraint (none) extremes [2, infinity) English: (hits 0/330) constraint (none) extremes [2, infinity) - hits 447/2552 nti 15 constraint DS = {12, 15} extremes [6, infinity) + hits 447/2552 nti 12 constraint DS = {12, 13} extremes [6, infinity) English: {...} ( ) - (hits 424/886) (matched long text) constraint DS = {12, 15} extremes [6, infinity) + (hits 424/890) (matched long text) constraint DS = {12, 13} extremes [6, infinity) {...} -- -- - (hits 23/462) (matched long text) constraint DS = {12, 15} extremes [6, infinity) + (hits 23/466) (matched long text) constraint DS = {12, 13} extremes [6, infinity) - hits 480/1188 nti 12 constraint DS = {12} extremes [3, 3] + hits 480/1188 nti 13 constraint DS = {13} extremes [3, 3] English: documented at {###} - (hits 480/522) (matched: 'documented at act_startvm') constraint DS = {12} extremes [3, 3] + (hits 480/494) (matched: 'documented at act_startvm') constraint DS = {13} extremes [3, 3] - nti 16 constraint DS = {16} extremes [2, infinity) + nti 13 constraint DS = {13} extremes [2, infinity) English: understood - constraint DS = {16} extremes [2, infinity) + constraint DS = {13} extremes [2, infinity) - nti 11 constraint (none) extremes [0, 0] + nti 15 constraint (none) extremes [1, infinity) + English: + {} ( {...} ) + constraint DS = {15} extremes [5, infinity) + {} ( {...} ) + constraint DS = {15} extremes [4, infinity) + {} + constraint (none) extremes [1, infinity) - nti 12 constraint (none) extremes [0, 0] + nti 14 constraint (none) extremes [1, infinity) + English: + {...} - {...} - {...} + constraint DS = {14} extremes [5, infinity) + {...} - {...} + constraint DS = {14} extremes [3, infinity) + {...} + constraint (none) extremes [1, infinity) + + nti 16 constraint (none) extremes [1, 1] + English: + in + constraint CS = {16} extremes [1, 1] + of + constraint CS = {16} extremes [1, 1] +
    + constraint (none) extremes [1, 1] + + nti 8 constraint (none) extremes [1, infinity) + English: + + constraint (none) extremes [1, infinity) + + nti 21 constraint (none) extremes [1, infinity) + English: + eps file + constraint CS = {21} extremes [2, 2] + mapped as + constraint DS = {21} extremes [4, infinity) + {...} mapped as {...} + constraint DS = {21} extremes [4, infinity) + mapped + constraint DS = {17, 21} extremes [4, infinity) + {...} mapped {...} + constraint DS = {21} extremes [3, infinity) + set to + constraint DS = {21} extremes [4, infinity) + set to {...} + constraint DS = {21} extremes [4, infinity) + {...} set to {...} + constraint DS = {21} extremes [4, infinity) + rubric {} {***} + constraint DS = {21} extremes [2, infinity) + {...} + constraint (none) extremes [1, infinity) + + nti 17 constraint DS = {17} extremes [2, infinity) + English: + of/from + constraint DS = {17} extremes [3, infinity) + above + constraint DS = {17} extremes [2, infinity) + below + constraint DS = {17} extremes [2, infinity) + + nti 19 constraint (none) extremes [1, infinity) + English: + of + constraint DS = {19} extremes [3, infinity) + + constraint (none) extremes [1, infinity) + {...} of + constraint DS = {19} extremes [3, infinity) + + nti 9 constraint (none) extremes [1, infinity) + English: + + constraint (none) extremes [2, infinity) + + constraint (none) extremes [1, infinity) + + nti 18 constraint (none) extremes [1, infinity) + English: + first room + constraint CS = {18} extremes [2, 2] + level + constraint DS = {18} extremes [2, 2] + + constraint (none) extremes [1, infinity) + + constraint (none) extremes [1, infinity) + + internal nti 10 constraint (none) extremes [1, infinity) + + nti 11 constraint (none) extremes [1, 1] + English: + + constraint CS = {r0} extremes [1, 1] + + constraint (none) extremes [1, 1] + + constraint CS = {20} extremes [1, 1] + + constraint (none) extremes [1, 1] + {###} + constraint (none) extremes [1, 1] + + nti 20 constraint CS = {20} extremes [1, 1] + English: + on + constraint CS = {20} extremes [1, 1] + off + constraint CS = {20} extremes [1, 1] + + internal nti 12 constraint (none) extremes [1, 1] + + nti 22 constraint DS = {22} extremes [2, infinity) + English: + size {***} + constraint DS = {22} extremes [2, infinity) + font {} {***} + constraint DS = {22} extremes [2, infinity) + colour {} {***} + constraint DS = {22} extremes [2, infinity) + at from {...} + constraint DS = {22} extremes [4, infinity) + at {***} + constraint DS = {22} extremes [2, infinity) + + nti 13 constraint (none) extremes [0, 0] + + nti 14 constraint (none) extremes [0, 0] diff --git a/docs/inform7/syntax-diagnostics.txt b/docs/inform7/syntax-diagnostics.txt index 8bbf7b8ef..78854e84d 100644 --- a/docs/inform7/syntax-diagnostics.txt +++ b/docs/inform7/syntax-diagnostics.txt @@ -455,904 +455,892 @@ ROOT_NT HEADING_NT'part three - phrasebook' {heading 3} {under: H3'part three - phrasebook'} {unit: 0} HEADING_NT'chapter 1 - saying' {heading 4} {under: H4'chapter 1 - saying'} {unit: 0} HEADING_NT'section 1 - saying values' {heading 5} {under: H5'section 1 - saying values'} {unit: 0} - RULE_NT'to say ( val - sayable value of kind k ) ( documented at ph_' {unit: 0} + IMPERATIVE_NT'to say ( val - sayable value of kind k ) ( documented at ph_' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-say:val:K} ' - RULE_NT'to say ( something - number ) in words ( documented at phs_n' {unit: 0} + IMPERATIVE_NT'to say ( something - number ) in words ( documented at phs_n' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (number) say__n=({something}); ' - RULE_NT'to say s ( documented at phs_s )' {unit: 0} + IMPERATIVE_NT'to say s ( documented at phs_s )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- STextSubstitution(); ' - RULE_NT'to showme ( val - value ) ( documented at ph_showme )' {unit: 0} + IMPERATIVE_NT'to showme ( val - value ) ( documented at ph_showme )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-show-me:val} ' HEADING_NT'section 2 - saying names' {heading 5} {under: H5'section 2 - saying names'} {unit: 0} - RULE_NT'to say a ( something - object ) ( documented at phs_a )' {unit: 0} + IMPERATIVE_NT'to say a ( something - object ) ( documented at phs_a )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (a) {something}; ' - RULE_NT'to say an ( something - object ) ( documented at phs_a )' {unit: 0} + IMPERATIVE_NT'to say an ( something - object ) ( documented at phs_a )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (a) {something}; ' - RULE_NT'to say a ( something - object ) ( documented at phs_a )' {unit: 0} + IMPERATIVE_NT'to say a ( something - object ) ( documented at phs_a )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CIndefArt({something}); ' - RULE_NT'to say an ( something - object ) ( documented at phs_a )' {unit: 0} + IMPERATIVE_NT'to say an ( something - object ) ( documented at phs_a )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CIndefArt({something}); ' - RULE_NT'to say the ( something - object ) ( documented at phs_the )' {unit: 0} + IMPERATIVE_NT'to say the ( something - object ) ( documented at phs_the )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (the) {something}; ' - RULE_NT'to say the ( something - object ) ( documented at phs_the )' {unit: 0} + IMPERATIVE_NT'to say the ( something - object ) ( documented at phs_the )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (The) {something}; ' HEADING_NT'section 3 - saying special characters' {heading 5} {under: H5'section 3 - saying special characters'} {unit: 0} - RULE_NT'to say bracket -- running on ( documented at phs_bracket )' {unit: 0} + IMPERATIVE_NT'to say bracket -- running on ( documented at phs_bracket )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print "["; ' - RULE_NT'to say close bracket -- running on ( documented at phs_close' {unit: 0} + IMPERATIVE_NT'to say close bracket -- running on ( documented at phs_close' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print "]"; ' - RULE_NT'to say apostrophe/' -- running on ( documented at phs_apostr' {unit: 0} + IMPERATIVE_NT'to say apostrophe/' -- running on ( documented at phs_apostr' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print "'"; ' - RULE_NT'to say quotation mark -- running on ( documented at phs_quot' {unit: 0} + IMPERATIVE_NT'to say quotation mark -- running on ( documented at phs_quot' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print "~"; ' HEADING_NT'section 4 - saying line and paragraph breaks' {heading 5} {under: H5'section 4 - saying line and paragraph breaks'} {unit: 0} - RULE_NT'to say line break -- running on ( documented at phs_linebrea' {unit: 0} + IMPERATIVE_NT'to say line break -- running on ( documented at phs_linebrea' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- new_line; ' - RULE_NT'to say no line break -- running on ( documented at phs_nolin' {unit: 0} + IMPERATIVE_NT'to say no line break -- running on ( documented at phs_nolin' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'do nothing' INVOCATION_NT'do nothing' {phrase invoked: call} - RULE_NT'to say conditional paragraph break -- running on ( documente' {unit: 0} + IMPERATIVE_NT'to say conditional paragraph break -- running on ( documente' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DivideParagraphPoint(); ' - RULE_NT'to say paragraph break -- running on ( documented at phs_par' {unit: 0} + IMPERATIVE_NT'to say paragraph break -- running on ( documented at phs_par' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DivideParagraphPoint(); new_line; ' - RULE_NT'to say run paragraph on -- running on ( documented at phs_ru' {unit: 0} + IMPERATIVE_NT'to say run paragraph on -- running on ( documented at phs_ru' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RunParagraphOn(); ' - RULE_NT'to decide if a paragraph break is pending ( documented at ph' {unit: 0} + IMPERATIVE_NT'to decide if a paragraph break is pending ( documented at ph' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (say__p) ' HEADING_NT'section 5 - saying if and otherwise' {heading 5} {under: H5'section 5 - saying if and otherwise'} {unit: 0} - RULE_NT'to say if ( c - condition ) ( documented at phs_if )' {unit: 0} + IMPERATIVE_NT'to say if ( c - condition ) ( documented at phs_if )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (~~({c})) jump {-label:Say}; ' - RULE_NT'to say unless ( c - condition ) ( documented at phs_unless )' {unit: 0} + IMPERATIVE_NT'to say unless ( c - condition ) ( documented at phs_unless )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if ({c}) jump {-label:Say}; ' - RULE_NT'to say otherwise/else if ( c - condition ) ( documented at p' {unit: 0} + IMPERATIVE_NT'to say otherwise/else if ( c - condition ) ( documented at p' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- jump {-label:SayX}; .{-label:Say}{-counter-up:Say}; if ' - RULE_NT'to say otherwise/else unless ( c - condition ) ( documented ' {unit: 0} + IMPERATIVE_NT'to say otherwise/else unless ( c - condition ) ( documented ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- jump {-label:SayX}; .{-label:Say}{-counter-up:Say}; if ' - RULE_NT'to say otherwise ( documented at phs_otherwise )' {unit: 0} + IMPERATIVE_NT'to say otherwise ( documented at phs_otherwise )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- jump {-label:SayX}; .{-label:Say}{-counter-up:Say}; ' - RULE_NT'to say else ( documented at phs_otherwise )' {unit: 0} + IMPERATIVE_NT'to say else ( documented at phs_otherwise )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- jump {-label:SayX}; .{-label:Say}{-counter-up:Say}; ' - RULE_NT'to say end if ( documented at phs_endif )' {unit: 0} + IMPERATIVE_NT'to say end if ( documented at phs_endif )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- .{-label:Say}{-counter-up:Say}; .{-label:SayX}{-counter' - RULE_NT'to say end unless ( documented at phs_endunless )' {unit: 0} + IMPERATIVE_NT'to say end unless ( documented at phs_endunless )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- .{-label:Say}{-counter-up:Say}; .{-label:SayX}{-counter' HEADING_NT'section 6 - saying one of' {heading 5} {under: H5'section 6 - saying one of'} {unit: 0} - RULE_NT'to say one of -- beginning say_one_of ( documented at phs_on' {unit: 0} + IMPERATIVE_NT'to say one of -- beginning say_one_of ( documented at phs_on' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-counter-makes-array:say_one_of} {-counter-makes-arra' - RULE_NT'to say or -- continuing say_one_of ( documented at phs_or )' {unit: 0} + IMPERATIVE_NT'to say or -- continuing say_one_of ( documented at phs_or )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- @nop; {-segment-count}: ' - RULE_NT'to say at random -- ending say_one_of with marker i7_soo_ran' {unit: 0} + IMPERATIVE_NT'to say at random -- ending say_one_of with marker i7_soo_ran' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say purely at random -- ending say_one_of with marker i7_' {unit: 0} + IMPERATIVE_NT'to say purely at random -- ending say_one_of with marker i7_' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say then at random -- ending say_one_of with marker i7_so' {unit: 0} + IMPERATIVE_NT'to say then at random -- ending say_one_of with marker i7_so' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say then purely at random -- ending say_one_of with marke' {unit: 0} + IMPERATIVE_NT'to say then purely at random -- ending say_one_of with marke' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say sticky random -- ending say_one_of with marker i7_soo' {unit: 0} + IMPERATIVE_NT'to say sticky random -- ending say_one_of with marker i7_soo' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say as decreasingly likely outcomes -- ending say_one_of ' {unit: 0} + IMPERATIVE_NT'to say as decreasingly likely outcomes -- ending say_one_of ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say in random order -- ending say_one_of with marker i7_s' {unit: 0} + IMPERATIVE_NT'to say in random order -- ending say_one_of with marker i7_s' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say cycling -- ending say_one_of with marker i7_soo_cyc (' {unit: 0} + IMPERATIVE_NT'to say cycling -- ending say_one_of with marker i7_soo_cyc (' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say stopping -- ending say_one_of with marker i7_soo_stop' {unit: 0} + IMPERATIVE_NT'to say stopping -- ending say_one_of with marker i7_soo_stop' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say first time -- beginning say_first_time ( documented a' {unit: 0} + IMPERATIVE_NT'to say first time -- beginning say_first_time ( documented a' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-counter-makes-array:say_first_time} if ((say__comp ==' - RULE_NT'to say only -- ending say_first_time ( documented at phs_fir' {unit: 0} + IMPERATIVE_NT'to say only -- ending say_first_time ( documented at phs_fir' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' HEADING_NT'section 7 - saying fonts and visual effects' {heading 5} {under: H5'section 7 - saying fonts and visual effects'} {unit: 0} - RULE_NT'to say bold type -- running on ( documented at phs_bold )' {unit: 0} + IMPERATIVE_NT'to say bold type -- running on ( documented at phs_bold )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- style bold; ' - RULE_NT'to say italic type -- running on ( documented at phs_italic ' {unit: 0} + IMPERATIVE_NT'to say italic type -- running on ( documented at phs_italic ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- style underline; ' - RULE_NT'to say roman type -- running on ( documented at phs_roman )' {unit: 0} + IMPERATIVE_NT'to say roman type -- running on ( documented at phs_roman )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- style roman; ' - RULE_NT'to say fixed letter spacing -- running on ( documented at ph' {unit: 0} + IMPERATIVE_NT'to say fixed letter spacing -- running on ( documented at ph' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- font off; ' - RULE_NT'to say variable letter spacing -- running on ( documented at' {unit: 0} + IMPERATIVE_NT'to say variable letter spacing -- running on ( documented at' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- font on; ' HEADING_NT'section 8 - saying lists of values' {heading 5} {under: H5'section 8 - saying lists of values'} {unit: 0} - RULE_NT'to say ( l - a list of values ) in brace notation ( document' {unit: 0} + IMPERATIVE_NT'to say ( l - a list of values ) in brace notation ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Say({-by-reference:L}, 1); ' - RULE_NT'to say ( l - a list of objects ) with definite articles ( do' {unit: 0} + IMPERATIVE_NT'to say ( l - a list of objects ) with definite articles ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Say({-by-reference:L}, 2); ' - RULE_NT'to say ( l - a list of objects ) with indefinite articles ( ' {unit: 0} + IMPERATIVE_NT'to say ( l - a list of objects ) with indefinite articles ( ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Say({-by-reference:L}, 3); ' HEADING_NT'chapter 2 - conditions and variables' {heading 4} {under: H4'chapter 2 - conditions and variables'} {unit: 0} HEADING_NT'section 1 - conditions' {heading 5} {under: H5'section 1 - conditions'} {unit: 0} - RULE_NT'to now ( cn - condition ) ( documented at ph_now )' {unit: 0} + IMPERATIVE_NT'to now ( cn - condition ) ( documented at ph_now )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {cn} ' - RULE_NT'to decide what truth state is whether or not ( c - condition' {unit: 0} + IMPERATIVE_NT'to decide what truth state is whether or not ( c - condition' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({C}) ' HEADING_NT'section 2 - assigning temporary variables' {heading 5} {under: H5'section 2 - assigning temporary variables'} {unit: 0} - RULE_NT'to let ( t - nonexisting variable ) be ( u - value ) ( assig' {unit: 0} + IMPERATIVE_NT'to let ( t - nonexisting variable ) be ( u - value ) ( assig' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-unprotect:t} {-copy:t:u} ' - RULE_NT'to let ( t - nonexisting variable ) be ( u - name of kind of' {unit: 0} + IMPERATIVE_NT'to let ( t - nonexisting variable ) be ( u - name of kind of' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-unprotect:t} {-initialise:t} ' - RULE_NT'to let ( t - nonexisting variable ) be ( u - description of ' {unit: 0} + IMPERATIVE_NT'to let ( t - nonexisting variable ) be ( u - description of ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-unprotect:t} {-initialise:t} {-now-matches-descr' - RULE_NT'to let ( t - nonexisting variable ) be given by ( q - equati' {unit: 0} + IMPERATIVE_NT'to let ( t - nonexisting variable ) be given by ( q - equati' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-unprotect:t} {-primitive-definition:solve-equation' - RULE_NT'to let ( t - existing variable ) be ( u - value ) ( assignme' {unit: 0} + IMPERATIVE_NT'to let ( t - existing variable ) be ( u - value ) ( assignme' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-copy:t:u} ' - RULE_NT'to let ( t - existing variable ) be given by ( q - equation ' {unit: 0} + IMPERATIVE_NT'to let ( t - existing variable ) be given by ( q - equation ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:solve-equation}; ' HEADING_NT'section 3 - increase and decrease' {heading 5} {under: H5'section 3 - increase and decrease'} {unit: 0} - RULE_NT'to increase ( s - storage ) by ( w - value ) ( assignment op' {unit: 0} + IMPERATIVE_NT'to increase ( s - storage ) by ( w - value ) ( assignment op' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-copy:S:+w}; ' - RULE_NT'to decrease ( s - storage ) by ( w - value ) ( assignment op' {unit: 0} + IMPERATIVE_NT'to decrease ( s - storage ) by ( w - value ) ( assignment op' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-copy:S:-w}; ' - RULE_NT'to increment ( s - storage ) ( documented at ph_increment )' {unit: 0} + IMPERATIVE_NT'to increment ( s - storage ) ( documented at ph_increment )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-copy:S:+}; ' - RULE_NT'to decrement ( s - storage ) ( documented at ph_decrement )' {unit: 0} + IMPERATIVE_NT'to decrement ( s - storage ) ( documented at ph_decrement )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-copy:S:-}; ' HEADING_NT'chapter 2 - arithmetic' {heading 4} {under: H4'chapter 2 - arithmetic'} {unit: 0} HEADING_NT'section 1 - arithmetic operations' {heading 5} {under: H5'section 1 - arithmetic operations'} {unit: 0} - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is remainder after dividing' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is remainder after dividing' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is the square root of ( x -' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is the square root of ( x -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X}) ' - RULE_NT'to decide which arithmetic value is the cube root of ( x - a' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is the cube root of ( x - a' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X}) ' - RULE_NT'to decide which arithmetic value is total ( p - arithmetic v' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is total ( p - arithmetic v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:total-of} ' HEADING_NT'section 2 - saying real numbers ( not for z-machine )' {heading 5} {under: H5'section 2 - saying real numbers ( not for z-machine )'} {unit: 0} - RULE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} + IMPERATIVE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- Float({R}, {N}); ' - RULE_NT'to say ( r - a real number ) in decimal notation ( documente' {unit: 0} + IMPERATIVE_NT'to say ( r - a real number ) in decimal notation ( documente' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FloatDec({R}); ' - RULE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} + IMPERATIVE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FloatDec({R}, {N}); ' - RULE_NT'to say ( r - a real number ) in scientific notation ( docume' {unit: 0} + IMPERATIVE_NT'to say ( r - a real number ) in scientific notation ( docume' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FloatExp({R}); ' - RULE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} + IMPERATIVE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FloatExp({R}, {N}); ' HEADING_NT'section 3 - real arithmetic ( not for z-machine )' {heading 5} {under: H5'section 3 - real arithmetic ( not for z-machine )'} {unit: 0} - RULE_NT'to decide which real number is the reciprocal of ( r - a rea' {unit: 0} + IMPERATIVE_NT'to decide which real number is the reciprocal of ( r - a rea' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Reciprocal({R}) ' - RULE_NT'to decide which real number is the absolute value of ( r - a' {unit: 0} + IMPERATIVE_NT'to decide which real number is the absolute value of ( r - a' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Abs({R}) ' - RULE_NT'to decide which real number is the real square root of ( r -' {unit: 0} + IMPERATIVE_NT'to decide which real number is the real square root of ( r -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Root({R}) ' - RULE_NT'to decide which real number is the real square of ( r - a re' {unit: 0} + IMPERATIVE_NT'to decide which real number is the real square of ( r - a re' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let x be given by x = r^2 where x is a real number' INVOCATION_NT'let x be given by x = r^2 where x is a real number' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'x' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: value} {required: value} + NEW_LOCAL_CONTEXT_NT'x' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: value} {required: value} UNKNOWN_NT'x' - RVALUE_CONTEXT_NT'x = r^2 where x is a real number' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation name'} {required: equation name} + RVALUE_CONTEXT_NT'x = r^2 where x is a real number' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation name'} {required: equation name} CONSTANT_NT'x = r^2 where x is a real number' {kind: equation name} {equation: x = r^2} INVOCATION_LIST_NT'decide on x' INVOCATION_NT'decide on x' {phrase invoked: call} - RVALUE_CONTEXT_NT'x' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'x' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} LOCAL_VARIABLE_NT'x' {local: LV"x"-real number real number} - RULE_NT'to decide which real number is the ceiling of ( r - a real n' {unit: 0} + IMPERATIVE_NT'to decide which real number is the ceiling of ( r - a real n' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Ceiling({R}) ' - RULE_NT'to decide which real number is the floor of ( r - a real num' {unit: 0} + IMPERATIVE_NT'to decide which real number is the floor of ( r - a real num' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Floor({R}) ' - RULE_NT'to decide which number is ( r - a real number ) to the neare' {unit: 0} + IMPERATIVE_NT'to decide which number is ( r - a real number ) to the neare' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_to_NUMBER_TY({R}) ' HEADING_NT'section 4 - exponential functions ( not for z-machine )' {heading 5} {under: H5'section 4 - exponential functions ( not for z-machine )'} {unit: 0} - RULE_NT'to decide which real number is the natural/-- logarithm of (' {unit: 0} + IMPERATIVE_NT'to decide which real number is the natural/-- logarithm of (' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Log({R}) ' - RULE_NT'to decide which real number is the logarithm to base ( n - a' {unit: 0} + IMPERATIVE_NT'to decide which real number is the logarithm to base ( n - a' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_BLog({R}, {N}) ' - RULE_NT'to decide which real number is the exponential of ( r - a re' {unit: 0} + IMPERATIVE_NT'to decide which real number is the exponential of ( r - a re' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Exp({R}) ' - RULE_NT'to decide which real number is ( r - a real number ) to the ' {unit: 0} + IMPERATIVE_NT'to decide which real number is ( r - a real number ) to the ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Pow({R}, {P}) ' HEADING_NT'section 5 - trigonometric functions ( not for z-machine )' {heading 5} {under: H5'section 5 - trigonometric functions ( not for z-machine )'} {unit: 0} - RULE_NT'to decide which real number is ( r - a real number ) degrees' {unit: 0} + IMPERATIVE_NT'to decide which real number is ( r - a real number ) degrees' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Times({R}, $+0.0174532925) ' - RULE_NT'to decide which real number is the sine of ( r - a real numb' {unit: 0} + IMPERATIVE_NT'to decide which real number is the sine of ( r - a real numb' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Sin({R}) ' - RULE_NT'to decide which real number is the cosine of ( r - a real nu' {unit: 0} + IMPERATIVE_NT'to decide which real number is the cosine of ( r - a real nu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Cos({R}) ' - RULE_NT'to decide which real number is the tangent of ( r - a real n' {unit: 0} + IMPERATIVE_NT'to decide which real number is the tangent of ( r - a real n' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Tan({R}) ' - RULE_NT'to decide which real number is the arcsine of ( r - a real n' {unit: 0} + IMPERATIVE_NT'to decide which real number is the arcsine of ( r - a real n' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Arcsin({R}) ' - RULE_NT'to decide which real number is the arccosine of ( r - a real' {unit: 0} + IMPERATIVE_NT'to decide which real number is the arccosine of ( r - a real' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Arccos({R}) ' - RULE_NT'to decide which real number is the arctangent of ( r - a rea' {unit: 0} + IMPERATIVE_NT'to decide which real number is the arctangent of ( r - a rea' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Arctan({R}) ' HEADING_NT'section 6 - trigonometric functions ( not for z-machine )' {heading 5} {under: H5'section 6 - trigonometric functions ( not for z-machine )'} {unit: 0} - RULE_NT'to decide which real number is the hyperbolic sine of ( r - ' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic sine of ( r - ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Sinh({R}) ' - RULE_NT'to decide which real number is the hyperbolic cosine of ( r ' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic cosine of ( r ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Cosh({R}) ' - RULE_NT'to decide which real number is the hyperbolic tangent of ( r' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic tangent of ( r' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Tanh({R}) ' - RULE_NT'to decide which real number is the hyperbolic arcsine of ( r' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic arcsine of ( r' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let x be given by x = log ( r + root ( r^2 + 1 ) ) where x i' INVOCATION_NT'let x be given by x = log ( r + root ( r^2 + 1 ) ) where x i' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'x' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: value} {required: value} + NEW_LOCAL_CONTEXT_NT'x' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: value} {required: value} UNKNOWN_NT'x' - RVALUE_CONTEXT_NT'x = log ( r + root ( r^2 + 1 ) ) where x is a real number' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation name'} {required: equation name} + RVALUE_CONTEXT_NT'x = log ( r + root ( r^2 + 1 ) ) where x is a real number' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation name'} {required: equation name} CONSTANT_NT'x = log ( r + root ( r^2 + 1 ) ) where x is a real number' {kind: equation name} {equation: x = log ( r + root ( r^2 + 1 ) )} INVOCATION_LIST_NT'decide on x' INVOCATION_NT'decide on x' {phrase invoked: call} - RVALUE_CONTEXT_NT'x' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'x' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} LOCAL_VARIABLE_NT'x' {local: LV"x"-real number real number} - RULE_NT'to decide which real number is the hyperbolic arccosine of (' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic arccosine of (' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let x be given by x = log ( r + root ( r^2 - 1 ) ) where x i' INVOCATION_NT'let x be given by x = log ( r + root ( r^2 - 1 ) ) where x i' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'x' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: value} {required: value} + NEW_LOCAL_CONTEXT_NT'x' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: value} {required: value} UNKNOWN_NT'x' - RVALUE_CONTEXT_NT'x = log ( r + root ( r^2 - 1 ) ) where x is a real number' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation name'} {required: equation name} + RVALUE_CONTEXT_NT'x = log ( r + root ( r^2 - 1 ) ) where x is a real number' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation name'} {required: equation name} CONSTANT_NT'x = log ( r + root ( r^2 - 1 ) ) where x is a real number' {kind: equation name} {equation: x = log ( r + root ( r^2 - 1 ) )} INVOCATION_LIST_NT'decide on x' INVOCATION_NT'decide on x' {phrase invoked: call} - RVALUE_CONTEXT_NT'x' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'x' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} LOCAL_VARIABLE_NT'x' {local: LV"x"-real number real number} - RULE_NT'to decide which real number is the hyperbolic arctangent of ' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic arctangent of ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let x be given by x = 0.5* ( log ( 1+r ) - log ( 1-r ) ) whe' INVOCATION_NT'let x be given by x = 0.5* ( log ( 1+r ) - log ( 1-r ) ) whe' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'x' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: value} {required: value} + NEW_LOCAL_CONTEXT_NT'x' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: value} {required: value} UNKNOWN_NT'x' - RVALUE_CONTEXT_NT'x = 0.5* ( log ( 1+r ) - log ( 1-r ) ) where x is a real num' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation name'} {required: equation name} + RVALUE_CONTEXT_NT'x = 0.5* ( log ( 1+r ) - log ( 1-r ) ) where x is a real num' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation name'} {required: equation name} CONSTANT_NT'x = 0.5* ( log ( 1+r ) - log ( 1-r ) ) where x is a real num' {kind: equation name} {equation: x = 0.5* ( log ( 1+r ) - log ( 1-r ) )} INVOCATION_LIST_NT'decide on x' INVOCATION_NT'decide on x' {phrase invoked: call} - RVALUE_CONTEXT_NT'x' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'x' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} LOCAL_VARIABLE_NT'x' {local: LV"x"-real number real number} HEADING_NT'chapter 3 - control' {heading 4} {under: H4'chapter 3 - control'} {unit: 0} HEADING_NT'section 1 - deciding outcomes' {heading 5} {under: H5'section 1 - deciding outcomes'} {unit: 0} - RULE_NT'to decide yes ( documented at ph_yes )' {unit: 0} + IMPERATIVE_NT'to decide yes ( documented at ph_yes )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rtrue; - in to decide if only' - RULE_NT'to decide no ( documented at ph_no )' {unit: 0} + IMPERATIVE_NT'to decide no ( documented at ph_no )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rfalse; - in to decide if only' - RULE_NT'to stop ( documented at ph_stop )' {unit: 0} + IMPERATIVE_NT'to stop ( documented at ph_stop )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rtrue; - in to only' - RULE_NT'to decide on ( something - value ) ( documented at ph_decide' {unit: 0} + IMPERATIVE_NT'to decide on ( something - value ) ( documented at ph_decide' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- return {-return-value:something}; ' HEADING_NT'section 2 - if and unless' {heading 5} {under: H5'section 2 - if and unless'} {unit: 0} - RULE_NT'to if ( c - condition ) begin -- end conditional ( documente' {unit: 0} + IMPERATIVE_NT'to if ( c - condition ) begin -- end conditional ( documente' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {c} ' - RULE_NT'to unless ( c - condition ) begin -- end conditional ( docum' {unit: 0} + IMPERATIVE_NT'to unless ( c - condition ) begin -- end conditional ( docum' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (~~{c}) ' - RULE_NT'to if ( v - value ) is begin -- end conditional ( documented' {unit: 0} + IMPERATIVE_NT'to if ( v - value ) is begin -- end conditional ( documented' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ' - RULE_NT'to do nothing ( documented at ph_nothing )' {unit: 0} + IMPERATIVE_NT'to do nothing ( documented at ph_nothing )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ; ' HEADING_NT'section 3 - while and repeat' {heading 5} {under: H5'section 3 - while and repeat'} {unit: 0} - RULE_NT'to while ( c - condition ) begin -- end loop ( documented at' {unit: 0} + IMPERATIVE_NT'to while ( c - condition ) begin -- end loop ( documented at' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- while {c} ' - RULE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} + IMPERATIVE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- for ({loopvar}={v}: {loopvar}<={w}: {loopvar}++) ' - RULE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} + IMPERATIVE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- for ({loopvar}={v}: {loopvar}<={w}: {loopvar}++) ' - RULE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} + IMPERATIVE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:repeat-through} ' - RULE_NT'to repeat with ( loopvar - nonexisting object variable ) run' {unit: 0} + IMPERATIVE_NT'to repeat with ( loopvar - nonexisting object variable ) run' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:repeat-through-list} ' - RULE_NT'to repeat through ( t - table name ) begin -- end loop ( doc' {unit: 0} + IMPERATIVE_NT'to repeat through ( t - table name ) begin -- end loop ( doc' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- @push {-my:ct_0}; @push {-my:ct_1}; for ({-my:1}={T}' - RULE_NT'to repeat through ( t - table name ) in reverse order begin ' {unit: 0} + IMPERATIVE_NT'to repeat through ( t - table name ) in reverse order begin ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- @push {-my:ct_0}; @push {-my:ct_1}; for ({-my:1}={T}' - RULE_NT'to repeat through ( t - table name ) in ( tc - table column ' {unit: 0} + IMPERATIVE_NT'to repeat through ( t - table name ) in ( tc - table column ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- @push {-my:ct_0}; @push {-my:ct_1}; for ({-my:1}={T}' - RULE_NT'to repeat through ( t - table name ) in reverse ( tc - table' {unit: 0} + IMPERATIVE_NT'to repeat through ( t - table name ) in reverse ( tc - table' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- @push {-my:ct_0}; @push {-my:ct_1}; for ({-my:1}={T}' HEADING_NT'section 4 - loop flow' {heading 5} {under: H5'section 4 - loop flow'} {unit: 0} - RULE_NT'to break -- in loop ( documented at ph_break )' {unit: 0} + IMPERATIVE_NT'to break -- in loop ( documented at ph_break )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:break} ' - RULE_NT'to next -- in loop ( documented at ph_next )' {unit: 0} + IMPERATIVE_NT'to next -- in loop ( documented at ph_next )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- continue; ' HEADING_NT'chapter 4 - values' {heading 4} {under: H4'chapter 4 - values'} {unit: 0} HEADING_NT'section 1 - enumerations' {heading 5} {under: H5'section 1 - enumerations'} {unit: 0} - RULE_NT'to decide which number is number of ( s - description of val' {unit: 0} + IMPERATIVE_NT'to decide which number is number of ( s - description of val' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:number-of} ' - RULE_NT'to decide which k is ( name of kind of enumerated value k ) ' {unit: 0} + IMPERATIVE_NT'to decide which k is ( name of kind of enumerated value k ) ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-next-routine:K}({X}) ' - RULE_NT'to decide which k is ( name of kind of enumerated value k ) ' {unit: 0} + IMPERATIVE_NT'to decide which k is ( name of kind of enumerated value k ) ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-previous-routine:K}({X}) ' - RULE_NT'to decide which k is the first value of ( name of kind of en' {unit: 0} + IMPERATIVE_NT'to decide which k is the first value of ( name of kind of en' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'decide on the default value of k' - RULE_NT'to decide which k is the last value of ( name of kind of enu' {unit: 0} + IMPERATIVE_NT'to decide which k is the last value of ( name of kind of enu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'decide on k before the default value of k' HEADING_NT'section 2 - randomness' {heading 5} {under: H5'section 2 - randomness'} {unit: 0} - RULE_NT'to decide which k is a/-- random ( s - description of values' {unit: 0} + IMPERATIVE_NT'to decide which k is a/-- random ( s - description of values' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:random-of} ' - RULE_NT'to decide which k is a random ( name of kind of arithmetic v' {unit: 0} + IMPERATIVE_NT'to decide which k is a random ( name of kind of arithmetic v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-ranger-routine:K}({first value}, {second value}) ' - RULE_NT'to decide which k is a random ( name of kind of arithmetic v' {unit: 0} + IMPERATIVE_NT'to decide which k is a random ( name of kind of arithmetic v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-ranger-routine:K}({first value}, {second value}) ' - RULE_NT'to decide which k is a random ( name of kind of enumerated v' {unit: 0} + IMPERATIVE_NT'to decide which k is a random ( name of kind of enumerated v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-ranger-routine:K}({first value}, {second value}) ' - RULE_NT'to decide which k is a random ( name of kind of enumerated v' {unit: 0} + IMPERATIVE_NT'to decide which k is a random ( name of kind of enumerated v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-ranger-routine:K}({first value}, {second value}) ' - RULE_NT'to decide whether a random chance of ( n - number ) in ( m -' {unit: 0} + IMPERATIVE_NT'to decide whether a random chance of ( n - number ) in ( m -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (GenerateRandomNumber(1, {M}) <= {N}) ' - RULE_NT'to seed the random-number generator with ( n - number ) ( do' {unit: 0} + IMPERATIVE_NT'to seed the random-number generator with ( n - number ) ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- VM_Seed_RNG({N}); ' HEADING_NT'section 3 - default values' {heading 5} {under: H5'section 3 - default values'} {unit: 0} - RULE_NT'to decide what k is the default value of ( v - name of kind ' {unit: 0} + IMPERATIVE_NT'to decide what k is the default value of ( v - name of kind ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-new:K} ' HEADING_NT'chapter 5 - text' {heading 4} {under: H4'chapter 5 - text'} {unit: 0} HEADING_NT'section 1 - breaking down text' {heading 5} {under: H5'section 1 - breaking down text'} {unit: 0} - RULE_NT'to decide what number is the number of characters in ( t - t' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of characters in ( t - t' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, CHR_BLOB) ' - RULE_NT'to decide what number is the number of words in ( t - text )' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of words in ( t - text )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, WORD_BLOB) ' - RULE_NT'to decide what number is the number of punctuated words in (' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of punctuated words in (' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, PWORD_BLOB) ' - RULE_NT'to decide what number is the number of unpunctuated words in' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of unpunctuated words in' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, UWORD_BLOB) ' - RULE_NT'to decide what number is the number of lines in ( t - text )' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of lines in ( t - text )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, LINE_BLOB) ' - RULE_NT'to decide what number is the number of paragraphs in ( t - t' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of paragraphs in ( t - t' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, PARA_BLOB) ' - RULE_NT'to decide what text is character number ( n - a number ) in ' {unit: 0} + IMPERATIVE_NT'to decide what text is character number ( n - a number ) in ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, CHR' - RULE_NT'to decide what text is word number ( n - a number ) in ( t -' {unit: 0} + IMPERATIVE_NT'to decide what text is word number ( n - a number ) in ( t -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, WOR' - RULE_NT'to decide what text is punctuated word number ( n - a number' {unit: 0} + IMPERATIVE_NT'to decide what text is punctuated word number ( n - a number' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, PWO' - RULE_NT'to decide what text is unpunctuated word number ( n - a numb' {unit: 0} + IMPERATIVE_NT'to decide what text is unpunctuated word number ( n - a numb' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, UWO' - RULE_NT'to decide what text is line number ( n - a number ) in ( t -' {unit: 0} + IMPERATIVE_NT'to decide what text is line number ( n - a number ) in ( t -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, LIN' - RULE_NT'to decide what text is paragraph number ( n - a number ) in ' {unit: 0} + IMPERATIVE_NT'to decide what text is paragraph number ( n - a number ) in ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, PAR' - RULE_NT'to decide what text is the substituted form of ( t - text ) ' {unit: 0} + IMPERATIVE_NT'to decide what text is the substituted form of ( t - text ) ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_SubstitutedForm({-new:text}, {-by-reference:T}) ' HEADING_NT'section 2 - matching and replacing' {heading 5} {under: H5'section 2 - matching and replacing'} {unit: 0} - RULE_NT'to decide if ( t - text ) exactly matches the text ( find - ' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) exactly matches the text ( find - ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(CHR_BLOB,{-by-reference:T},{-by-refer' - RULE_NT'to decide if ( t - text ) matches the text ( find - text ) ,' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) matches the text ( find - text ) ,' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(CHR_BLOB,{-by-reference:T},{-by-refer' - RULE_NT'to decide what number is number of times ( t - text ) matche' {unit: 0} + IMPERATIVE_NT'to decide what number is number of times ( t - text ) matche' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(CHR_BLOB,{-by-reference:T},{-by-refer' - RULE_NT'to replace the text ( find - text ) in ( t - text ) with ( r' {unit: 0} + IMPERATIVE_NT'to replace the text ( find - text ) in ( t - text ) with ( r' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(CHR_BLOB, {-lvalue-by-reference:T}, {' - RULE_NT'to replace the word ( find - text ) in ( t - text ) with ( r' {unit: 0} + IMPERATIVE_NT'to replace the word ( find - text ) in ( t - text ) with ( r' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceText(WORD_BLOB, {-lvalue-by-reference:T},' - RULE_NT'to replace the punctuated word ( find - text ) in ( t - text' {unit: 0} + IMPERATIVE_NT'to replace the punctuated word ( find - text ) in ( t - text' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceText(PWORD_BLOB, {-lvalue-by-reference:T}' - RULE_NT'to replace character number ( n - a number ) in ( t - text )' {unit: 0} + IMPERATIVE_NT'to replace character number ( n - a number ) in ( t - text )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(CHR_BLOB, {-lvalue-by-reference:T}, ' - RULE_NT'to replace word number ( n - a number ) in ( t - text ) with' {unit: 0} + IMPERATIVE_NT'to replace word number ( n - a number ) in ( t - text ) with' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(WORD_BLOB, {-lvalue-by-reference:T},' - RULE_NT'to replace punctuated word number ( n - a number ) in ( t - ' {unit: 0} + IMPERATIVE_NT'to replace punctuated word number ( n - a number ) in ( t - ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(PWORD_BLOB, {-lvalue-by-reference:T}' - RULE_NT'to replace unpunctuated word number ( n - a number ) in ( t ' {unit: 0} + IMPERATIVE_NT'to replace unpunctuated word number ( n - a number ) in ( t ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(UWORD_BLOB, {-lvalue-by-reference:T}' - RULE_NT'to replace line number ( n - a number ) in ( t - text ) with' {unit: 0} + IMPERATIVE_NT'to replace line number ( n - a number ) in ( t - text ) with' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(LINE_BLOB, {-lvalue-by-reference:T},' - RULE_NT'to replace paragraph number ( n - a number ) in ( t - text )' {unit: 0} + IMPERATIVE_NT'to replace paragraph number ( n - a number ) in ( t - text )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(PARA_BLOB, {-lvalue-by-reference:T},' HEADING_NT'section 3 - regular expressions' {heading 5} {under: H5'section 3 - regular expressions'} {unit: 0} - RULE_NT'to decide if ( t - text ) exactly matches the regular expres' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) exactly matches the regular expres' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(REGEXP_BLOB,{-by-reference:T},{-by-re' - RULE_NT'to decide if ( t - text ) matches the regular expression ( f' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) matches the regular expression ( f' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(REGEXP_BLOB,{-by-reference:T},{-by-re' - RULE_NT'to decide what text is text matching regular expression ( do' {unit: 0} + IMPERATIVE_NT'to decide what text is text matching regular expression ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_RE_GetMatchVar(0) ' - RULE_NT'to decide what text is text matching subexpression ( n - a n' {unit: 0} + IMPERATIVE_NT'to decide what text is text matching subexpression ( n - a n' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_RE_GetMatchVar({N}) ' - RULE_NT'to decide what number is number of times ( t - text ) matche' {unit: 0} + IMPERATIVE_NT'to decide what number is number of times ( t - text ) matche' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(REGEXP_BLOB,{-by-reference:T},{-by-re' - RULE_NT'to replace the regular expression ( find - text ) in ( t - t' {unit: 0} + IMPERATIVE_NT'to replace the regular expression ( find - text ) in ( t - t' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(REGEXP_BLOB, {-lvalue-by-reference:T}' HEADING_NT'section 4 - casing of text' {heading 5} {under: H5'section 4 - casing of text'} {unit: 0} - RULE_NT'to decide what text is ( t - text ) in lower case ( document' {unit: 0} + IMPERATIVE_NT'to decide what text is ( t - text ) in lower case ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersToCase({-new:text}, {-by-reference:T},' - RULE_NT'to decide what text is ( t - text ) in upper case ( document' {unit: 0} + IMPERATIVE_NT'to decide what text is ( t - text ) in upper case ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersToCase({-new:text}, {-by-reference:T},' - RULE_NT'to decide what text is ( t - text ) in title case ( document' {unit: 0} + IMPERATIVE_NT'to decide what text is ( t - text ) in title case ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersToCase({-new:text}, {-by-reference:T},' - RULE_NT'to decide what text is ( t - text ) in sentence case ( docum' {unit: 0} + IMPERATIVE_NT'to decide what text is ( t - text ) in sentence case ( docum' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersToCase({-new:text}, {-by-reference:T},' - RULE_NT'to decide if ( t - text ) is in lower case ( documented at p' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) is in lower case ( documented at p' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersOfCase({-by-reference:T}, 0) ' - RULE_NT'to decide if ( t - text ) is in upper case ( documented at p' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) is in upper case ( documented at p' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersOfCase({-by-reference:T}, 1) ' HEADING_NT'section 5 - adaptive text' {heading 5} {under: H5'section 5 - adaptive text'} {unit: 0} - RULE_NT'to say infinitive of ( v - a verb ) ( documented at phs_infi' {unit: 0} + IMPERATIVE_NT'to say infinitive of ( v - a verb ) ( documented at phs_infi' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(1); ' - RULE_NT'to say past participle of ( v - a verb ) ( documented at phs' {unit: 0} + IMPERATIVE_NT'to say past participle of ( v - a verb ) ( documented at phs' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(2); ' - RULE_NT'to say present participle of ( v - a verb ) ( documented at ' {unit: 0} + IMPERATIVE_NT'to say present participle of ( v - a verb ) ( documented at ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(3); ' - RULE_NT'to say adapt ( v - verb ) ( documented at phs_adapt )' {unit: 0} + IMPERATIVE_NT'to say adapt ( v - verb ) ( documented at phs_adapt )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_POS, PNToVP(), story_tense); ' - RULE_NT'to say adapt ( v - verb ) in ( t - grammatical tense ) ( doc' {unit: 0} + IMPERATIVE_NT'to say adapt ( v - verb ) in ( t - grammatical tense ) ( doc' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_POS, PNToVP(), {T}); ' - RULE_NT'to say adapt ( v - verb ) from ( p - narrative viewpoint ) (' {unit: 0} + IMPERATIVE_NT'to say adapt ( v - verb ) from ( p - narrative viewpoint ) (' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_POS, {P}, story_tense); ' - RULE_NT'to say adapt ( v - verb ) in ( t - grammatical tense ) from ' {unit: 0} + IMPERATIVE_NT'to say adapt ( v - verb ) in ( t - grammatical tense ) from ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_POS, {P}, {T}); ' - RULE_NT'to say negate ( v - verb ) ( documented at phs_negate )' {unit: 0} + IMPERATIVE_NT'to say negate ( v - verb ) ( documented at phs_negate )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_NEG, PNToVP(), story_tense); ' - RULE_NT'to say negate ( v - verb ) in ( t - grammatical tense ) ( do' {unit: 0} + IMPERATIVE_NT'to say negate ( v - verb ) in ( t - grammatical tense ) ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_NEG, PNToVP(), {T}); ' - RULE_NT'to say negate ( v - verb ) from ( p - narrative viewpoint ) ' {unit: 0} + IMPERATIVE_NT'to say negate ( v - verb ) from ( p - narrative viewpoint ) ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_NEG, {P}, story_tense); ' - RULE_NT'to say negate ( v - verb ) in ( t - grammatical tense ) from' {unit: 0} + IMPERATIVE_NT'to say negate ( v - verb ) in ( t - grammatical tense ) from' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_NEG, {P}, {T}); ' - RULE_NT'to decide which relation of objects is meaning of ( v - a ve' {unit: 0} + IMPERATIVE_NT'to decide which relation of objects is meaning of ( v - a ve' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_MEANING) ' HEADING_NT'chapter 6 - data structures' {heading 4} {under: H4'chapter 6 - data structures'} {unit: 0} HEADING_NT'section 1 - tables' {heading 5} {under: H5'section 1 - tables'} {unit: 0} - RULE_NT'to choose a/the/-- row ( n - number ) in/from ( t - table na' {unit: 0} + IMPERATIVE_NT'to choose a/the/-- row ( n - number ) in/from ( t - table na' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-my:ct_0} = {T}; {-my:ct_1} = {N}; ' - RULE_NT'to choose a/the/-- row with ( tc - k valued table column ) o' {unit: 0} + IMPERATIVE_NT'to choose a/the/-- row with ( tc - k valued table column ) o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-my:ct_0} = {T}; {-my:ct_1} = TableRowCorr(ct_0, {TC}, ' - RULE_NT'to choose a/the/-- blank row in/from ( t - table name ) ( do' {unit: 0} + IMPERATIVE_NT'to choose a/the/-- blank row in/from ( t - table name ) ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-my:ct_0} = {T}; {-my:ct_1} = TableBlankRow(ct_0); ' - RULE_NT'to choose a/the/-- random row in/from ( t - table name ) ( d' {unit: 0} + IMPERATIVE_NT'to choose a/the/-- random row in/from ( t - table name ) ( d' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-my:ct_0} = {T}; {-my:ct_1} = TableRandomRow(ct_0); ' - RULE_NT'to decide which number is number of rows in/from ( t - table' {unit: 0} + IMPERATIVE_NT'to decide which number is number of rows in/from ( t - table' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableRows({T}) ' - RULE_NT'to decide which number is number of blank rows in/from ( t -' {unit: 0} + IMPERATIVE_NT'to decide which number is number of blank rows in/from ( t -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableBlankRows({T}) ' - RULE_NT'to decide which number is number of filled rows in/from ( t ' {unit: 0} + IMPERATIVE_NT'to decide which number is number of filled rows in/from ( t ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableFilledRows({T}) ' - RULE_NT'to decide if there is ( tr - table-reference ) ( documented ' {unit: 0} + IMPERATIVE_NT'to decide if there is ( tr - table-reference ) ( documented ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-reference-exists:TR}) ' - RULE_NT'to decide if there is no ( tr - table-reference ) ( document' {unit: 0} + IMPERATIVE_NT'to decide if there is no ( tr - table-reference ) ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-reference-exists:TR} == false) ' - RULE_NT'to blank out ( tr - table-reference ) ( documented at ph_bla' {unit: 0} + IMPERATIVE_NT'to blank out ( tr - table-reference ) ( documented at ph_bla' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-by-reference-blank-out:tr}; ' - RULE_NT'to blank out the whole row ( documented at ph_blankoutrow )' {unit: 0} + IMPERATIVE_NT'to blank out the whole row ( documented at ph_blankoutrow )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableBlankOutRow({-my:ct_0}, {-my:ct_1}); ' - RULE_NT'to blank out the whole ( tc - table column ) in/from/of ( t ' {unit: 0} + IMPERATIVE_NT'to blank out the whole ( tc - table column ) in/from/of ( t ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableBlankOutColumn({T}, {TC}); ' - RULE_NT'to blank out the whole of ( t - table name ) ( documented at' {unit: 0} + IMPERATIVE_NT'to blank out the whole of ( t - table name ) ( documented at' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableBlankOutAll({T}); ' - RULE_NT'to showme the contents of ( t - table name ) ( documented at' {unit: 0} + IMPERATIVE_NT'to showme the contents of ( t - table name ) ( documented at' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableDebug({T}); ' - RULE_NT'to say the/-- current table row ( documented at phs_currentt' {unit: 0} + IMPERATIVE_NT'to say the/-- current table row ( documented at phs_currentt' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableRowDebug({-my:ct_0}, {-my:ct_1}); ' - RULE_NT'to say row ( n - number ) in/from ( t - table name ) ( docum' {unit: 0} + IMPERATIVE_NT'to say row ( n - number ) in/from ( t - table name ) ( docum' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableRowDebug({T}, {N}); ' - RULE_NT'to say ( tc - table column ) in/from ( t - table name ) ( do' {unit: 0} + IMPERATIVE_NT'to say ( tc - table column ) in/from ( t - table name ) ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableColumnDebug({T}, {TC}); ' HEADING_NT'section 2 - sorting tables' {heading 5} {under: H5'section 2 - sorting tables'} {unit: 0} - RULE_NT'to sort ( t - table name ) in/into random order ( documented' {unit: 0} + IMPERATIVE_NT'to sort ( t - table name ) in/into random order ( documented' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableShuffle({T}); ' - RULE_NT'to sort ( t - table name ) in/into ( tc - table column ) ord' {unit: 0} + IMPERATIVE_NT'to sort ( t - table name ) in/into ( tc - table column ) ord' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableSort({T}, {TC}, 1); ' - RULE_NT'to sort ( t - table name ) in/into reverse ( tc - table colu' {unit: 0} + IMPERATIVE_NT'to sort ( t - table name ) in/into reverse ( tc - table colu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableSort({T}, {TC}, -1); ' HEADING_NT'section 3 - lists' {heading 5} {under: H5'section 3 - lists'} {unit: 0} - RULE_NT'to add ( new entry - k ) to ( l - list of values of kind k )' {unit: 0} + IMPERATIVE_NT'to add ( new entry - k ) to ( l - list of values of kind k )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_InsertItem({-lvalue-by-reference:L}, {new ent' - RULE_NT'to add ( new entry - k ) at entry ( e - number ) in ( l - li' {unit: 0} + IMPERATIVE_NT'to add ( new entry - k ) at entry ( e - number ) in ( l - li' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_InsertItem({-lvalue-by-reference:L}, {new ent' - RULE_NT'to add ( lx - list of ks ) to ( l - list of values of kind k' {unit: 0} + IMPERATIVE_NT'to add ( lx - list of ks ) to ( l - list of values of kind k' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_AppendList({-lvalue-by-reference:L}, {-by-ref' - RULE_NT'to add ( lx - list of ks ) at entry ( e - number ) in ( l - ' {unit: 0} + IMPERATIVE_NT'to add ( lx - list of ks ) at entry ( e - number ) in ( l - ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_AppendList({-lvalue-by-reference:L}, {-by-ref' - RULE_NT'to remove ( existing entry - k ) from ( l - list of values o' {unit: 0} + IMPERATIVE_NT'to remove ( existing entry - k ) from ( l - list of values o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_RemoveValue({-lvalue-by-reference:L}, {existi' - RULE_NT'to remove ( n - list of ks ) from ( l - list of values of ki' {unit: 0} + IMPERATIVE_NT'to remove ( n - list of ks ) from ( l - list of values of ki' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Remove_List({-lvalue-by-reference:L}, {-by-re' - RULE_NT'to remove entry ( n - number ) from ( l - list of values ) ,' {unit: 0} + IMPERATIVE_NT'to remove entry ( n - number ) from ( l - list of values ) ,' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_RemoveItemRange({-lvalue-by-reference:L}, {N}' - RULE_NT'to remove entries ( n - number ) to ( n2 - number ) from ( l' {unit: 0} + IMPERATIVE_NT'to remove entries ( n - number ) to ( n2 - number ) from ( l' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_RemoveItemRange({-lvalue-by-reference:L}, {N}' - RULE_NT'to decide if ( n - k ) is listed in ( l - list of values of ' {unit: 0} + IMPERATIVE_NT'to decide if ( n - k ) is listed in ( l - list of values of ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (LIST_OF_TY_FindItem({-by-reference:L}, {N})) ' - RULE_NT'to decide if ( n - k ) is not listed in ( l - list of values' {unit: 0} + IMPERATIVE_NT'to decide if ( n - k ) is not listed in ( l - list of values' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (LIST_OF_TY_FindItem({-by-reference:L}, {N}) == false) ' - RULE_NT'to decide what list of ks is the list of ( d - description o' {unit: 0} + IMPERATIVE_NT'to decide what list of ks is the list of ( d - description o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-new-list-of:list of K} ' HEADING_NT'section 4 - length of lists' {heading 5} {under: H5'section 4 - length of lists'} {unit: 0} - RULE_NT'to decide what number is the number of entries in/of ( l - a' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of entries in/of ( l - a' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_GetLength({-by-reference:L}) ' - RULE_NT'to truncate ( l - a list of values ) to ( n - a number ) ent' {unit: 0} + IMPERATIVE_NT'to truncate ( l - a list of values ) to ( n - a number ) ent' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_SetLength({-lvalue-by-reference:L}, {N}, -1, ' - RULE_NT'to truncate ( l - a list of values ) to the first ( n - a nu' {unit: 0} + IMPERATIVE_NT'to truncate ( l - a list of values ) to the first ( n - a nu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_SetLength({-lvalue-by-reference:L}, {N}, -1, ' - RULE_NT'to truncate ( l - a list of values ) to the last ( n - a num' {unit: 0} + IMPERATIVE_NT'to truncate ( l - a list of values ) to the last ( n - a num' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_SetLength({-lvalue-by-reference:L}, {N}, -1, ' - RULE_NT'to extend ( l - a list of values ) to ( n - a number ) entri' {unit: 0} + IMPERATIVE_NT'to extend ( l - a list of values ) to ( n - a number ) entri' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_SetLength({-lvalue-by-reference:L}, {N}, 1); ' - RULE_NT'to change ( l - a list of values ) to have ( n - a number ) ' {unit: 0} + IMPERATIVE_NT'to change ( l - a list of values ) to have ( n - a number ) ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_SetLength({-lvalue-by-reference:L}, {N}, 0); ' HEADING_NT'section 5 - list operations' {heading 5} {under: H5'section 5 - list operations'} {unit: 0} - RULE_NT'to reverse ( l - a list of values ) ( documented at ph_rever' {unit: 0} + IMPERATIVE_NT'to reverse ( l - a list of values ) ( documented at ph_rever' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Reverse({-lvalue-by-reference:L}); ' - RULE_NT'to rotate ( l - a list of values ) ( documented at ph_rotate' {unit: 0} + IMPERATIVE_NT'to rotate ( l - a list of values ) ( documented at ph_rotate' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Rotate({-lvalue-by-reference:L}, 0); ' - RULE_NT'to rotate ( l - a list of values ) backwards ( documented at' {unit: 0} + IMPERATIVE_NT'to rotate ( l - a list of values ) backwards ( documented at' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Rotate({-lvalue-by-reference:L}, 1); ' - RULE_NT'to sort ( l - a list of values ) ( documented at ph_sortlist' {unit: 0} + IMPERATIVE_NT'to sort ( l - a list of values ) ( documented at ph_sortlist' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Sort({-lvalue-by-reference:L}, 1); ' - RULE_NT'to sort ( l - a list of values ) in/into reverse order ( doc' {unit: 0} + IMPERATIVE_NT'to sort ( l - a list of values ) in/into reverse order ( doc' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Sort({-lvalue-by-reference:L}, -1); ' - RULE_NT'to sort ( l - a list of values ) in/into random order ( docu' {unit: 0} + IMPERATIVE_NT'to sort ( l - a list of values ) in/into random order ( docu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Sort({-lvalue-by-reference:L}, 2); ' - RULE_NT'to sort ( l - a list of objects ) in/into ( p - property ) o' {unit: 0} + IMPERATIVE_NT'to sort ( l - a list of objects ) in/into ( p - property ) o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Sort({-lvalue-by-reference:L}, 1, {P}, {-prop' - RULE_NT'to sort ( l - a list of objects ) in/into reverse ( p - prop' {unit: 0} + IMPERATIVE_NT'to sort ( l - a list of objects ) in/into reverse ( p - prop' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Sort({-lvalue-by-reference:L}, -1, {P}, {-pro' HEADING_NT'section 6 - relations' {heading 5} {under: H5'section 6 - relations'} {unit: 0} - RULE_NT'to show relation ( r - relation ) ( documented at ph_showrel' {unit: 0} + IMPERATIVE_NT'to show relation ( r - relation ) ( documented at ph_showrel' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-show-me:R}; RelationTest({-by-reference:R}, RELS_SHOW)' - RULE_NT'to decide which object is next step via ( r - relation of ob' {unit: 0} + IMPERATIVE_NT'to decide which object is next step via ( r - relation of ob' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationRouteTo({-by-reference:R},{O1},{O2},false) ' - RULE_NT'to decide which number is number of steps via ( r - relation' {unit: 0} + IMPERATIVE_NT'to decide which number is number of steps via ( r - relation' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationRouteTo({-by-reference:R},{O1},{O2},true) ' - RULE_NT'to decide which list of ks is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ks is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LIST, {-new:list of' - RULE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LIST, {-new:list of' - RULE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LIST, {-new:list of' - RULE_NT'to decide which list of ks is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ks is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ALL_X, {Y}, ' - RULE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ALL_Y, {X}, ' - RULE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ALL_Y, {X}, ' - RULE_NT'to decide whether ( name of kind of value k ) relates to ( y' {unit: 0} + IMPERATIVE_NT'to decide whether ( name of kind of value k ) relates to ( y' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ANY, {Y}, RL' - RULE_NT'to decide whether ( x - k ) relates to ( name of kind of val' {unit: 0} + IMPERATIVE_NT'to decide whether ( x - k ) relates to ( name of kind of val' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ANY, {X}, RL' - RULE_NT'to decide which k is ( name of kind of value k ) that/which/' {unit: 0} + IMPERATIVE_NT'to decide which k is ( name of kind of value k ) that/which/' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ANY, {Y}, RL' - RULE_NT'to decide which l is ( name of kind of value l ) to which/wh' {unit: 0} + IMPERATIVE_NT'to decide which l is ( name of kind of value l ) to which/wh' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ANY, {X}, RL' - RULE_NT'to decide which l is ( name of kind of value l ) that/which/' {unit: 0} + IMPERATIVE_NT'to decide which l is ( name of kind of value l ) that/which/' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ANY, {X}, RL' HEADING_NT'chapter 7 - functional programming' {heading 4} {under: H4'chapter 7 - functional programming'} {unit: 0} HEADING_NT'section 1 - applying functions' {heading 5} {under: H5'section 1 - applying functions'} {unit: 0} - RULE_NT'to decide whether ( val - k ) matches ( desc - description o' {unit: 0} + IMPERATIVE_NT'to decide whether ( val - k ) matches ( desc - description o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:description-application} ' - RULE_NT'to decide what k is ( function - phrase nothing -> value of ' {unit: 0} + IMPERATIVE_NT'to decide what k is ( function - phrase nothing -> value of ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application} ' - RULE_NT'to decide what l is ( function - phrase value of kind k -> v' {unit: 0} + IMPERATIVE_NT'to decide what l is ( function - phrase value of kind k -> v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application} ' - RULE_NT'to decide what m is ( function - phrase ( value of kind k , ' {unit: 0} + IMPERATIVE_NT'to decide what m is ( function - phrase ( value of kind k , ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application} ' - RULE_NT'to decide what n is ( function - phrase ( value of kind k , ' {unit: 0} + IMPERATIVE_NT'to decide what n is ( function - phrase ( value of kind k , ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application} ' - RULE_NT'to apply ( function - phrase nothing -> nothing ) ( document' {unit: 0} + IMPERATIVE_NT'to apply ( function - phrase nothing -> nothing ) ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application}; ' - RULE_NT'to apply ( function - phrase value of kind k -> nothing ) to' {unit: 0} + IMPERATIVE_NT'to apply ( function - phrase value of kind k -> nothing ) to' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application}; ' - RULE_NT'to apply ( function - phrase ( value of kind k , value of ki' {unit: 0} + IMPERATIVE_NT'to apply ( function - phrase ( value of kind k , value of ki' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application}; ' - RULE_NT'to apply ( function - phrase ( value of kind k , value of ki' {unit: 0} + IMPERATIVE_NT'to apply ( function - phrase ( value of kind k , value of ki' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application}; ' HEADING_NT'section 2 - working with lists' {heading 5} {under: H5'section 2 - working with lists'} {unit: 0} - RULE_NT'to decide what list of l is ( function - phrase k -> value o' {unit: 0} + IMPERATIVE_NT'to decide what list of l is ( function - phrase k -> value o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let the result be a list of ls' {indent: 1} CODE_BLOCK_NT {control structure: RPT} @@ -1361,7 +1349,7 @@ ROOT_NT INVOCATION_LIST_NT'let the mapped item be the function applied to the item' {indent: 2} INVOCATION_LIST_NT'add the mapped item to the result' {indent: 2} INVOCATION_LIST_NT'decide on the result' {indent: 1} - RULE_NT'to decide what k is the ( function - phrase ( k , k ) -> k )' {unit: 0} + IMPERATIVE_NT'to decide what k is the ( function - phrase ( k , k ) -> k )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let the total be a k' {indent: 1} INVOCATION_LIST_NT'let the count be 0' {indent: 1} @@ -1378,7 +1366,7 @@ ROOT_NT INVOCATION_LIST_NT'now the total is the function applied to the total and the i' {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'the total is the function applied to the total and the item' INVOCATION_LIST_NT'decide on the total' {indent: 1} - RULE_NT'to decide what list of k is the filter to ( criterion - desc' {unit: 0} + IMPERATIVE_NT'to decide what list of k is the filter to ( criterion - desc' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let the filtered list be a list of k' {indent: 1} CODE_BLOCK_NT {control structure: RPT} @@ -1391,150 +1379,150 @@ ROOT_NT INVOCATION_LIST_NT'decide on the filtered list' {indent: 1} HEADING_NT'chapter 8 - rulebooks and activities' {heading 4} {under: H4'chapter 8 - rulebooks and activities'} {unit: 0} HEADING_NT'section 1 - carrying out activities' {heading 5} {under: H5'section 1 - carrying out activities'} {unit: 0} - RULE_NT'to carry out the ( a - activity on nothing ) activity ( docu' {unit: 0} + IMPERATIVE_NT'to carry out the ( a - activity on nothing ) activity ( docu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CarryOutActivity({A}); ' - RULE_NT'to carry out the ( a - activity on value of kind k ) activit' {unit: 0} + IMPERATIVE_NT'to carry out the ( a - activity on value of kind k ) activit' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CarryOutActivity({A}, {val}); ' - RULE_NT'to continue the activity ( documented at ph_continueactivity' {unit: 0} + IMPERATIVE_NT'to continue the activity ( documented at ph_continueactivity' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rfalse; - in to only' HEADING_NT'section 2 - advanced activities' {heading 5} {under: H5'section 2 - advanced activities'} {unit: 0} - RULE_NT'to begin the ( a - activity on nothing ) activity ( document' {unit: 0} + IMPERATIVE_NT'to begin the ( a - activity on nothing ) activity ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- BeginActivity({A}); ' - RULE_NT'to begin the ( a - activity on value of kind k ) activity wi' {unit: 0} + IMPERATIVE_NT'to begin the ( a - activity on value of kind k ) activity wi' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- BeginActivity({A}, {val}); ' - RULE_NT'to decide whether handling ( a - activity ) activity ( docum' {unit: 0} + IMPERATIVE_NT'to decide whether handling ( a - activity ) activity ( docum' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (~~(ForActivity({A}))) ' - RULE_NT'to decide whether handling ( a - activity on value of kind k' {unit: 0} + IMPERATIVE_NT'to decide whether handling ( a - activity on value of kind k' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (~~(ForActivity({A}, {val}))) ' - RULE_NT'to end the ( a - activity on nothing ) activity ( documented' {unit: 0} + IMPERATIVE_NT'to end the ( a - activity on nothing ) activity ( documented' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- EndActivity({A}); ' - RULE_NT'to end the ( a - activity on value of kind k ) activity with' {unit: 0} + IMPERATIVE_NT'to end the ( a - activity on value of kind k ) activity with' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- EndActivity({A}, {val}); ' - RULE_NT'to abandon the ( a - activity on nothing ) activity ( docume' {unit: 0} + IMPERATIVE_NT'to abandon the ( a - activity on nothing ) activity ( docume' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- AbandonActivity({A}); ' - RULE_NT'to abandon the ( a - activity on value of kind k ) activity ' {unit: 0} + IMPERATIVE_NT'to abandon the ( a - activity on value of kind k ) activity ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- AbandonActivity({A}, {val}); ' HEADING_NT'section 3 - following rules' {heading 5} {under: H5'section 3 - following rules'} {unit: 0} - RULE_NT'to follow ( rl - a rule ) ( documented at ph_follow )' {unit: 0} + IMPERATIVE_NT'to follow ( rl - a rule ) ( documented at ph_follow )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FollowRulebook({RL}); ' - RULE_NT'to follow ( rl - value of kind k based rule producing a valu' {unit: 0} + IMPERATIVE_NT'to follow ( rl - value of kind k based rule producing a valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FollowRulebook({RL}, {V}, true); ' - RULE_NT'to follow ( rl - a nothing based rule ) ( documented at ph_f' {unit: 0} + IMPERATIVE_NT'to follow ( rl - a nothing based rule ) ( documented at ph_f' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FollowRulebook({RL}); ' - RULE_NT'to decide what k is the ( name of kind k ) produced by ( rl ' {unit: 0} + IMPERATIVE_NT'to decide what k is the ( name of kind k ) produced by ( rl ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ResultOfRule({RL}, 0, true, {-strong-kind:K}) ' - RULE_NT'to decide what l is the ( name of kind l ) produced by ( rl ' {unit: 0} + IMPERATIVE_NT'to decide what l is the ( name of kind l ) produced by ( rl ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ResultOfRule({RL}, {V}, true, {-strong-kind:L}) ' - RULE_NT'to decide what k is the ( name of kind k ) produced by ( rl ' {unit: 0} + IMPERATIVE_NT'to decide what k is the ( name of kind k ) produced by ( rl ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ResultOfRule({RL}, 0, true, {-strong-kind:K}) ' - RULE_NT'to abide by ( rl - a rule ) ( documented at ph_abide )' {unit: 0} + IMPERATIVE_NT'to abide by ( rl - a rule ) ( documented at ph_abide )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (FollowRulebook({RL})) rtrue; - in to only' - RULE_NT'to abide by ( rl - value of kind k based rule producing a va' {unit: 0} + IMPERATIVE_NT'to abide by ( rl - value of kind k based rule producing a va' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (FollowRulebook({RL}, {V}, true)) rtrue; - in to onl' - RULE_NT'to abide by ( rl - a nothing based rule ) ( documented at ph' {unit: 0} + IMPERATIVE_NT'to abide by ( rl - a nothing based rule ) ( documented at ph' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (FollowRulebook({RL})) rtrue; - in to only' HEADING_NT'section 4 - success and failure' {heading 5} {under: H5'section 4 - success and failure'} {unit: 0} - RULE_NT'to make no decision ( documented at ph_nodecision )' {unit: 0} + IMPERATIVE_NT'to make no decision ( documented at ph_nodecision )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rfalse; - in to only' - RULE_NT'to rule succeeds ( documented at ph_succeeds )' {unit: 0} + IMPERATIVE_NT'to rule succeeds ( documented at ph_succeeds )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RulebookSucceeds(); rtrue; - in to only' - RULE_NT'to rule fails ( documented at ph_fails )' {unit: 0} + IMPERATIVE_NT'to rule fails ( documented at ph_fails )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RulebookFails(); rtrue; - in to only' - RULE_NT'to rule succeeds with result ( val - a value ) ( documented ' {unit: 0} + IMPERATIVE_NT'to rule succeeds with result ( val - a value ) ( documented ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RulebookSucceeds({-weak-kind:rule-return-kind},{-return-' - RULE_NT'to decide if rule succeeded ( documented at ph_succeeded )' {unit: 0} + IMPERATIVE_NT'to decide if rule succeeded ( documented at ph_succeeded )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (RulebookSucceeded()) ' - RULE_NT'to decide if rule failed ( documented at ph_failed )' {unit: 0} + IMPERATIVE_NT'to decide if rule failed ( documented at ph_failed )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (RulebookFailed()) ' - RULE_NT'to decide which rulebook outcome is the outcome of the ruleb' {unit: 0} + IMPERATIVE_NT'to decide which rulebook outcome is the outcome of the ruleb' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (ResultOfRule()) ' HEADING_NT'chapter 9 - external files ( not for z-machine )' {heading 4} {under: H4'chapter 9 - external files ( not for z-machine )'} {unit: 0} HEADING_NT'section 1 - files of text' {heading 5} {under: H5'section 1 - files of text'} {unit: 0} - RULE_NT'to write ( t - text ) to ( fn - external file ) ( documented' {unit: 0} + IMPERATIVE_NT'to write ( t - text ) to ( fn - external file ) ( documented' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_PutContents({FN}, {T}, false); ' - RULE_NT'to append ( t - text ) to ( fn - external file ) ( documente' {unit: 0} + IMPERATIVE_NT'to append ( t - text ) to ( fn - external file ) ( documente' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_PutContents({FN}, {T}, true); ' - RULE_NT'to say text of ( fn - external file ) ( documented at ph_say' {unit: 0} + IMPERATIVE_NT'to say text of ( fn - external file ) ( documented at ph_say' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_PrintContents({FN}); say__p = 1; ' HEADING_NT'section 2 - files of data' {heading 5} {under: H5'section 2 - files of data'} {unit: 0} - RULE_NT'to read ( filename - external file ) into ( t - table name )' {unit: 0} + IMPERATIVE_NT'to read ( filename - external file ) into ( t - table name )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_GetTable({filename}, {T}); ' - RULE_NT'to write ( filename - external file ) from ( t - table name ' {unit: 0} + IMPERATIVE_NT'to write ( filename - external file ) from ( t - table name ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_PutTable({filename}, {T}); ' HEADING_NT'section 3 - file handling' {heading 5} {under: H5'section 3 - file handling'} {unit: 0} - RULE_NT'to decide if ( filename - external file ) exists ( documente' {unit: 0} + IMPERATIVE_NT'to decide if ( filename - external file ) exists ( documente' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (FileIO_Exists({filename}, false)) ' - RULE_NT'to decide if ready to read ( filename - external file ) ( do' {unit: 0} + IMPERATIVE_NT'to decide if ready to read ( filename - external file ) ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (FileIO_Ready({filename}, false)) ' - RULE_NT'to mark ( filename - external file ) as ready to read ( docu' {unit: 0} + IMPERATIVE_NT'to mark ( filename - external file ) as ready to read ( docu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_MarkReady({filename}, true); ' - RULE_NT'to mark ( filename - external file ) as not ready to read ( ' {unit: 0} + IMPERATIVE_NT'to mark ( filename - external file ) as not ready to read ( ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_MarkReady({filename}, false); ' HEADING_NT'part four - adjectival definitions' {heading 3} {under: H3'part four - adjectival definitions'} {unit: 0} HEADING_NT'section 1 - miscellaneous useful adjectives' {heading 5} {under: H5'section 1 - miscellaneous useful adjectives'} {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} HEADING_NT'section 2 - adjectives for relations' {heading 5} {under: H5'section 2 - adjectives for relations'} {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} HEADING_NT'section 3 - adjectives for real numbers ( not for z-machine ' {heading 5} {under: H5'section 3 - adjectives for real numbers ( not for z-machine )'} {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} ENDHERE_NT'basic inform' {unit: 0} INCLUSION_NT'include english language by graham nelson' HEADING_NT'version 1 of english language by graham nelson begins here' {heading 0} {under: H0'version 1 of english language by graham nelson begins here'} {includes: English Language by Graham Nelson v1 } {unit: 1} @@ -1703,1095 +1691,877 @@ ROOT_NT VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 3} UNPARSED_NOUN_NT'story viewpoint variable' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'story_viewpoint' - RULE_NT'to say regarding ( item - an object )' {unit: 1} + IMPERATIVE_NT'to say regarding ( item - an object )' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RegardingSingleObject({item}); ' - RULE_NT'to say regarding ( n - a number )' {unit: 1} + IMPERATIVE_NT'to say regarding ( n - a number )' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RegardingNumber({N}); ' - RULE_NT'to say regarding list writer internals' {unit: 1} + IMPERATIVE_NT'to say regarding list writer internals' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RegardingLWI(); ' - RULE_NT'to say regarding ( d - a description of objects )' {unit: 1} + IMPERATIVE_NT'to say regarding ( d - a description of objects )' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-d' - RULE_NT'to decide if the prior naming context is plural' {unit: 1} + IMPERATIVE_NT'to decide if the prior naming context is plural' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ((prior_named_list >= 2) || (prior_named_noun && prior_n' HEADING_NT'section 2 - saying pronouns ( for interactive fiction langua' {heading 5} {under: H5'section 2 - saying pronouns ( for interactive fiction language element only )'} {unit: 1} - RULE_NT'to say we' {unit: 1} + IMPERATIVE_NT'to say we' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person singular' {proposition: << ('story viewpoint' == 'first person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "I"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"I"' INVOCATION_NT'"I"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"I"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"I"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"I"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person singular' {proposition: << ('story viewpoint' == 'second person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "you"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"you"' INVOCATION_NT'"you"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"you"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"you"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"you"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person singular' {proposition: << ('story viewpoint' == 'third person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is male' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is male' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is male' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is male' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is male' {proposition: << male('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "he"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"he"' INVOCATION_NT'"he"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"he"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"he"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"he"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "she"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"she"' INVOCATION_NT'"she"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"she"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"she"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"she"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person plural' {proposition: << ('story viewpoint' == 'first person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "we"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"we"' INVOCATION_NT'"we"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"we"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"we"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"we"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person plural' {proposition: << ('story viewpoint' == 'second person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "you"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"you"' INVOCATION_NT'"you"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"you"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"you"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"you"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person plural' {proposition: << ('story viewpoint' == 'third person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "they"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"they"' INVOCATION_NT'"they"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"they"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"they"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"they"' {kind: text} - RULE_NT'to say us' {unit: 1} + IMPERATIVE_NT'to say us' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person singular' {proposition: << ('story viewpoint' == 'first person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "me"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"me"' INVOCATION_NT'"me"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"me"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"me"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"me"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person singular' {proposition: << ('story viewpoint' == 'second person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "you"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"you"' INVOCATION_NT'"you"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"you"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"you"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"you"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person singular' {proposition: << ('story viewpoint' == 'third person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is male' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is male' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is male' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is male' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is male' {proposition: << male('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "him"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"him"' INVOCATION_NT'"him"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"him"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"him"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"him"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "her"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"her"' INVOCATION_NT'"her"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"her"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"her"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"her"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person plural' {proposition: << ('story viewpoint' == 'first person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "us"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"us"' INVOCATION_NT'"us"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"us"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"us"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"us"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person plural' {proposition: << ('story viewpoint' == 'second person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "you"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"you"' INVOCATION_NT'"you"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"you"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"you"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"you"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person plural' {proposition: << ('story viewpoint' == 'third person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "them"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"them"' INVOCATION_NT'"them"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"them"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"them"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"them"' {kind: text} - RULE_NT'to say ours' {unit: 1} + IMPERATIVE_NT'to say ours' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person singular' {proposition: << ('story viewpoint' == 'first person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "mine"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"mine"' INVOCATION_NT'"mine"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"mine"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"mine"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"mine"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person singular' {proposition: << ('story viewpoint' == 'second person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "yours"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"yours"' INVOCATION_NT'"yours"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"yours"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"yours"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"yours"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person singular' {proposition: << ('story viewpoint' == 'third person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is male' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is male' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is male' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is male' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is male' {proposition: << male('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "his"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"his"' INVOCATION_NT'"his"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"his"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"his"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"his"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "hers"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"hers"' INVOCATION_NT'"hers"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"hers"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"hers"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"hers"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person plural' {proposition: << ('story viewpoint' == 'first person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "ours"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"ours"' INVOCATION_NT'"ours"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"ours"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"ours"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"ours"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person plural' {proposition: << ('story viewpoint' == 'second person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "yours"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"yours"' INVOCATION_NT'"yours"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"yours"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"yours"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"yours"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person plural' {proposition: << ('story viewpoint' == 'third person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "theirs"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"theirs"' INVOCATION_NT'"theirs"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"theirs"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"theirs"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"theirs"' {kind: text} - RULE_NT'to say ourselves' {unit: 1} + IMPERATIVE_NT'to say ourselves' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person singular' {proposition: << ('story viewpoint' == 'first person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "myself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"myself"' INVOCATION_NT'"myself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"myself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"myself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"myself"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person singular' {proposition: << ('story viewpoint' == 'second person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "yourself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"yourself"' INVOCATION_NT'"yourself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"yourself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"yourself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"yourself"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person singular' {proposition: << ('story viewpoint' == 'third person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is male' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is male' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is male' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is male' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is male' {proposition: << male('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "himself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"himself"' INVOCATION_NT'"himself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"himself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"himself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"himself"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "herself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"herself"' INVOCATION_NT'"herself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"herself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"herself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"herself"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person plural' {proposition: << ('story viewpoint' == 'first person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "ourselves"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"ourselves"' INVOCATION_NT'"ourselves"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"ourselves"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"ourselves"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"ourselves"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person plural' {proposition: << ('story viewpoint' == 'second person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "yourselves"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"yourselves"' INVOCATION_NT'"yourselves"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"yourselves"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"yourselves"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"yourselves"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person plural' {proposition: << ('story viewpoint' == 'third person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "themselves"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"themselves"' INVOCATION_NT'"themselves"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"themselves"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"themselves"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"themselves"' {kind: text} - RULE_NT'to say our' {unit: 1} + IMPERATIVE_NT'to say our' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person singular' {proposition: << ('story viewpoint' == 'first person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "my"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"my"' INVOCATION_NT'"my"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"my"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"my"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"my"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person singular' {proposition: << ('story viewpoint' == 'second person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "your"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"your"' INVOCATION_NT'"your"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"your"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"your"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"your"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person singular' {proposition: << ('story viewpoint' == 'third person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is male' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is male' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is male' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is male' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is male' {proposition: << male('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "his"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"his"' INVOCATION_NT'"his"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"his"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"his"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"his"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "her"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"her"' INVOCATION_NT'"her"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"her"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"her"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"her"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person plural' {proposition: << ('story viewpoint' == 'first person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "our"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"our"' INVOCATION_NT'"our"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"our"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"our"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"our"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person plural' {proposition: << ('story viewpoint' == 'second person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "your"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"your"' INVOCATION_NT'"your"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"your"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"your"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"your"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person plural' {proposition: << ('story viewpoint' == 'third person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "their"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"their"' INVOCATION_NT'"their"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"their"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"their"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"their"' {kind: text} - RULE_NT'to say we' {unit: 1} + IMPERATIVE_NT'to say we' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person singular' {proposition: << ('story viewpoint' == 'first person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "I"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"I"' INVOCATION_NT'"I"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"I"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"I"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"I"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person singular' {proposition: << ('story viewpoint' == 'second person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "You"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You"' INVOCATION_NT'"You"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person singular' {proposition: << ('story viewpoint' == 'third person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is male' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is male' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is male' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is male' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is male' {proposition: << male('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "He"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"He"' INVOCATION_NT'"He"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"He"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"He"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"He"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "She"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"She"' INVOCATION_NT'"She"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"She"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"She"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"She"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person plural' {proposition: << ('story viewpoint' == 'first person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "We"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"We"' INVOCATION_NT'"We"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"We"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"We"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"We"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person plural' {proposition: << ('story viewpoint' == 'second person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "You"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You"' INVOCATION_NT'"You"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person plural' {proposition: << ('story viewpoint' == 'third person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "They"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"They"' INVOCATION_NT'"They"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"They"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"They"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"They"' {kind: text} - RULE_NT'to say us' {unit: 1} + IMPERATIVE_NT'to say us' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person singular' {proposition: << ('story viewpoint' == 'first person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Me"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Me"' INVOCATION_NT'"Me"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Me"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Me"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Me"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person singular' {proposition: << ('story viewpoint' == 'second person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "You"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You"' INVOCATION_NT'"You"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person singular' {proposition: << ('story viewpoint' == 'third person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is male' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is male' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is male' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is male' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is male' {proposition: << male('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Him"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Him"' INVOCATION_NT'"Him"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Him"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Him"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Him"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "Her"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Her"' INVOCATION_NT'"Her"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Her"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Her"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Her"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person plural' {proposition: << ('story viewpoint' == 'first person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Us"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Us"' INVOCATION_NT'"Us"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Us"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Us"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Us"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person plural' {proposition: << ('story viewpoint' == 'second person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "You"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You"' INVOCATION_NT'"You"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person plural' {proposition: << ('story viewpoint' == 'third person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Them"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Them"' INVOCATION_NT'"Them"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Them"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Them"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Them"' {kind: text} - RULE_NT'to say ours' {unit: 1} + IMPERATIVE_NT'to say ours' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person singular' {proposition: << ('story viewpoint' == 'first person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Mine"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Mine"' INVOCATION_NT'"Mine"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Mine"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Mine"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Mine"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person singular' {proposition: << ('story viewpoint' == 'second person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Yours"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Yours"' INVOCATION_NT'"Yours"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Yours"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Yours"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Yours"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person singular' {proposition: << ('story viewpoint' == 'third person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is male' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is male' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is male' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is male' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is male' {proposition: << male('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "His"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"His"' INVOCATION_NT'"His"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"His"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"His"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"His"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "Hers"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Hers"' INVOCATION_NT'"Hers"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Hers"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Hers"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Hers"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person plural' {proposition: << ('story viewpoint' == 'first person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Ours"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Ours"' INVOCATION_NT'"Ours"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Ours"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Ours"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Ours"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person plural' {proposition: << ('story viewpoint' == 'second person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Yours"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Yours"' INVOCATION_NT'"Yours"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Yours"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Yours"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Yours"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person plural' {proposition: << ('story viewpoint' == 'third person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Theirs"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Theirs"' INVOCATION_NT'"Theirs"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Theirs"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Theirs"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Theirs"' {kind: text} - RULE_NT'to say ourselves' {unit: 1} + IMPERATIVE_NT'to say ourselves' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person singular' {proposition: << ('story viewpoint' == 'first person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Myself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Myself"' INVOCATION_NT'"Myself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Myself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Myself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Myself"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person singular' {proposition: << ('story viewpoint' == 'second person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Yourself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Yourself"' INVOCATION_NT'"Yourself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Yourself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Yourself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Yourself"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person singular' {proposition: << ('story viewpoint' == 'third person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is male' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is male' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is male' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is male' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is male' {proposition: << male('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Himself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Himself"' INVOCATION_NT'"Himself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Himself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Himself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Himself"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "Herself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Herself"' INVOCATION_NT'"Herself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Herself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Herself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Herself"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person plural' {proposition: << ('story viewpoint' == 'first person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Ourselves"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Ourselves"' INVOCATION_NT'"Ourselves"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Ourselves"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Ourselves"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Ourselves"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person plural' {proposition: << ('story viewpoint' == 'second person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Yourselves"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Yourselves"' INVOCATION_NT'"Yourselves"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Yourselves"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Yourselves"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Yourselves"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person plural' {proposition: << ('story viewpoint' == 'third person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Themselves"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Themselves"' INVOCATION_NT'"Themselves"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Themselves"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Themselves"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Themselves"' {kind: text} - RULE_NT'to say our' {unit: 1} + IMPERATIVE_NT'to say our' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person singular' {proposition: << ('story viewpoint' == 'first person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "My"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"My"' INVOCATION_NT'"My"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"My"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"My"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"My"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person singular' {proposition: << ('story viewpoint' == 'second person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Your"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Your"' INVOCATION_NT'"Your"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Your"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Your"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Your"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person singular' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person singular' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person singular' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person singular' {proposition: << ('story viewpoint' == 'third person singular') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is male' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is male' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is male' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is male' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is male' {proposition: << male('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "His"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"His"' INVOCATION_NT'"His"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"His"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"His"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"His"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "Her"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Her"' INVOCATION_NT'"Her"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Her"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Her"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Her"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is first person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is first person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is first person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is first person plural' {proposition: << ('story viewpoint' == 'first person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Our"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Our"' INVOCATION_NT'"Our"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Our"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Our"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Our"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is second person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is second person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is second person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is second person plural' {proposition: << ('story viewpoint' == 'second person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Your"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Your"' INVOCATION_NT'"Your"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Your"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Your"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Your"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the story viewpoint is third person plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the story viewpoint is third person plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story viewpoint is third person plural' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story viewpoint is third person plural' {proposition: << ('story viewpoint' == 'third person plural') >>} {term: 'story viewpoint'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Their"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Their"' INVOCATION_NT'"Their"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Their"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Their"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Their"' {kind: text} HEADING_NT'section 3 - further pronouns ( for interactive fiction langu' {heading 5} {under: H5'section 3 - further pronouns ( for interactive fiction language element only )'} {unit: 1} - RULE_NT'to say those' {unit: 1} + IMPERATIVE_NT'to say those' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say those in the accusative' {control structure: SAY} INVOCATION_LIST_SAY_NT'those in the accusative' INVOCATION_NT'those in the accusative' {phrase invoked: call} - RVALUE_CONTEXT_NT'accusative' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'grammatical case'} {required: grammatical case} + RVALUE_CONTEXT_NT'accusative' {token check to do: } {token to be parsed against: TEST_VALUE_NT'grammatical case'} {required: grammatical case} CONSTANT_NT'accusative' {kind: grammatical case} {instance: I18'accusative'[grammatical case]} {enumeration: 0}{meaning: {accusative = NAMED_CONSTANT_MC}} - RULE_NT'to say those' {unit: 1} + IMPERATIVE_NT'to say those' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say those in the nominative' {control structure: SAY} INVOCATION_LIST_SAY_NT'those in the nominative' INVOCATION_NT'those in the nominative' {phrase invoked: call} - RVALUE_CONTEXT_NT'nominative' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'grammatical case'} {required: grammatical case} + RVALUE_CONTEXT_NT'nominative' {token check to do: } {token to be parsed against: TEST_VALUE_NT'grammatical case'} {required: grammatical case} CONSTANT_NT'nominative' {kind: grammatical case} {instance: I17'nominative'[grammatical case]} {enumeration: 0}{meaning: {nominative = NAMED_CONSTANT_MC}} - RULE_NT'to say those in ( case - grammatical case )' {unit: 1} + IMPERATIVE_NT'to say those in ( case - grammatical case )' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the case is nominative' {colon_block_command} {indent: 1} INVOCATION_NT'if the case is nominative' {phrase invoked: call} - CONDITION_CONTEXT_NT'case is nominative' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'case is nominative' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'case is nominative' {proposition: << ('case' == 'nominative') >>} {term: 'case'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 2} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 2} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -2800,16 +2570,13 @@ ROOT_NT CODE_BLOCK_NT'say "those"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"those"' INVOCATION_NT'"those"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"those"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"those"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"those"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[we]"' {control structure: SAY} @@ -2819,9 +2586,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -2829,16 +2594,13 @@ ROOT_NT CODE_BLOCK_NT'say "he"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"he"' INVOCATION_NT'"he"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"he"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"he"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"he"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -2846,31 +2608,25 @@ ROOT_NT CODE_BLOCK_NT'say "she"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"she"' INVOCATION_NT'"she"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"she"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"she"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"she"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "that"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"that"' INVOCATION_NT'"that"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"that"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"that"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"that"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} INVOCATION_LIST_NT'let the item be the prior named object' {indent: 2} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 2} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -2879,16 +2635,13 @@ ROOT_NT CODE_BLOCK_NT'say "those"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"those"' INVOCATION_NT'"those"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"those"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"those"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"those"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[we]"' {control structure: SAY} @@ -2898,9 +2651,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -2908,16 +2659,13 @@ ROOT_NT CODE_BLOCK_NT'say "him"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"him"' INVOCATION_NT'"him"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"him"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"him"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"him"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -2925,40 +2673,32 @@ ROOT_NT CODE_BLOCK_NT'say "her"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"her"' INVOCATION_NT'"her"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"her"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"her"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"her"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "that"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"that"' INVOCATION_NT'"that"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"that"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"that"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"that"' {kind: text} - RULE_NT'to say those in ( case - grammatical case )' {unit: 1} + IMPERATIVE_NT'to say those in ( case - grammatical case )' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the case is nominative' {colon_block_command} {indent: 1} INVOCATION_NT'if the case is nominative' {phrase invoked: call} - CONDITION_CONTEXT_NT'case is nominative' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'case is nominative' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'case is nominative' {proposition: << ('case' == 'nominative') >>} {term: 'case'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 2} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 2} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -2967,16 +2707,13 @@ ROOT_NT CODE_BLOCK_NT'say "Those"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Those"' INVOCATION_NT'"Those"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Those"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Those"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Those"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We]"' {control structure: SAY} @@ -2986,9 +2723,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -2996,16 +2731,13 @@ ROOT_NT CODE_BLOCK_NT'say "He"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"He"' INVOCATION_NT'"He"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"He"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"He"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"He"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3013,31 +2745,25 @@ ROOT_NT CODE_BLOCK_NT'say "She"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"She"' INVOCATION_NT'"She"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"She"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"She"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"She"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "That"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"That"' INVOCATION_NT'"That"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"That"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"That"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"That"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} INVOCATION_LIST_NT'let the item be the prior named object' {indent: 2} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 2} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3046,16 +2772,13 @@ ROOT_NT CODE_BLOCK_NT'say "Those"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Those"' INVOCATION_NT'"Those"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Those"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Those"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Those"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We]"' {control structure: SAY} @@ -3065,9 +2788,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3075,16 +2796,13 @@ ROOT_NT CODE_BLOCK_NT'say "Him"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Him"' INVOCATION_NT'"Him"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Him"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Him"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Him"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3092,32 +2810,26 @@ ROOT_NT CODE_BLOCK_NT'say "Her"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Her"' INVOCATION_NT'"Her"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Her"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Her"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Her"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "That"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"That"' INVOCATION_NT'"That"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"That"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"That"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"That"' {kind: text} - RULE_NT'to say they' {unit: 1} + IMPERATIVE_NT'to say they' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3126,16 +2838,13 @@ ROOT_NT CODE_BLOCK_NT'say "they"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"they"' INVOCATION_NT'"they"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"they"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"they"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"they"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[we]"' {control structure: SAY} @@ -3145,9 +2854,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3155,16 +2862,13 @@ ROOT_NT CODE_BLOCK_NT'say "he"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"he"' INVOCATION_NT'"he"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"he"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"he"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"he"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3172,32 +2876,26 @@ ROOT_NT CODE_BLOCK_NT'say "she"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"she"' INVOCATION_NT'"she"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"she"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"she"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"she"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "it"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"it"' INVOCATION_NT'"it"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"it"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"it"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"it"' {kind: text} - RULE_NT'to say they' {unit: 1} + IMPERATIVE_NT'to say they' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3206,16 +2904,13 @@ ROOT_NT CODE_BLOCK_NT'say "They"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"They"' INVOCATION_NT'"They"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"They"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"They"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"They"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We]"' {control structure: SAY} @@ -3225,9 +2920,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3235,16 +2928,13 @@ ROOT_NT CODE_BLOCK_NT'say "He"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"He"' INVOCATION_NT'"He"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"He"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"He"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"He"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3252,32 +2942,26 @@ ROOT_NT CODE_BLOCK_NT'say "She"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"She"' INVOCATION_NT'"She"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"She"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"She"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"She"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "It"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"It"' INVOCATION_NT'"It"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"It"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"It"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"It"' {kind: text} - RULE_NT'to say their' {unit: 1} + IMPERATIVE_NT'to say their' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3286,16 +2970,13 @@ ROOT_NT CODE_BLOCK_NT'say "their"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"their"' INVOCATION_NT'"their"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"their"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"their"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"their"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[our]"' {control structure: SAY} @@ -3305,9 +2986,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3315,16 +2994,13 @@ ROOT_NT CODE_BLOCK_NT'say "his"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"his"' INVOCATION_NT'"his"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"his"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"his"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"his"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3332,32 +3008,26 @@ ROOT_NT CODE_BLOCK_NT'say "her"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"her"' INVOCATION_NT'"her"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"her"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"her"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"her"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "its"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"its"' INVOCATION_NT'"its"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"its"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"its"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"its"' {kind: text} - RULE_NT'to say their' {unit: 1} + IMPERATIVE_NT'to say their' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3366,16 +3036,13 @@ ROOT_NT CODE_BLOCK_NT'say "Their"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Their"' INVOCATION_NT'"Their"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Their"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Their"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Their"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[Our]"' {control structure: SAY} @@ -3385,9 +3052,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3395,16 +3060,13 @@ ROOT_NT CODE_BLOCK_NT'say "His"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"His"' INVOCATION_NT'"His"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"His"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"His"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"His"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3412,32 +3074,26 @@ ROOT_NT CODE_BLOCK_NT'say "Her"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Her"' INVOCATION_NT'"Her"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Her"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Her"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Her"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "Its"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Its"' INVOCATION_NT'"Its"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Its"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Its"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Its"' {kind: text} - RULE_NT'to say them' {unit: 1} + IMPERATIVE_NT'to say them' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3446,16 +3102,13 @@ ROOT_NT CODE_BLOCK_NT'say "them"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"them"' INVOCATION_NT'"them"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"them"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"them"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"them"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[us]"' {control structure: SAY} @@ -3465,9 +3118,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3475,16 +3126,13 @@ ROOT_NT CODE_BLOCK_NT'say "him"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"him"' INVOCATION_NT'"him"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"him"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"him"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"him"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3492,32 +3140,26 @@ ROOT_NT CODE_BLOCK_NT'say "her"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"her"' INVOCATION_NT'"her"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"her"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"her"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"her"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "it"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"it"' INVOCATION_NT'"it"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"it"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"it"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"it"' {kind: text} - RULE_NT'to say them' {unit: 1} + IMPERATIVE_NT'to say them' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3526,16 +3168,13 @@ ROOT_NT CODE_BLOCK_NT'say "Them"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Them"' INVOCATION_NT'"Them"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Them"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Them"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Them"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[Us]"' {control structure: SAY} @@ -3545,9 +3184,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3555,16 +3192,13 @@ ROOT_NT CODE_BLOCK_NT'say "Him"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Him"' INVOCATION_NT'"Him"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Him"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Him"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Him"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3572,32 +3206,26 @@ ROOT_NT CODE_BLOCK_NT'say "Her"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Her"' INVOCATION_NT'"Her"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Her"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Her"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Her"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "It"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"It"' INVOCATION_NT'"It"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"It"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"It"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"It"' {kind: text} - RULE_NT'to say theirs' {unit: 1} + IMPERATIVE_NT'to say theirs' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3606,16 +3234,13 @@ ROOT_NT CODE_BLOCK_NT'say "theirs"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"theirs"' INVOCATION_NT'"theirs"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"theirs"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"theirs"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"theirs"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[ours]"' {control structure: SAY} @@ -3625,9 +3250,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3635,16 +3258,13 @@ ROOT_NT CODE_BLOCK_NT'say "his"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"his"' INVOCATION_NT'"his"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"his"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"his"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"his"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3652,32 +3272,26 @@ ROOT_NT CODE_BLOCK_NT'say "hers"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"hers"' INVOCATION_NT'"hers"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"hers"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"hers"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"hers"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "its"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"its"' INVOCATION_NT'"its"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"its"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"its"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"its"' {kind: text} - RULE_NT'to say theirs' {unit: 1} + IMPERATIVE_NT'to say theirs' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3686,16 +3300,13 @@ ROOT_NT CODE_BLOCK_NT'say "Theirs"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Theirs"' INVOCATION_NT'"Theirs"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Theirs"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Theirs"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Theirs"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[Ours]"' {control structure: SAY} @@ -3705,9 +3316,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3715,16 +3324,13 @@ ROOT_NT CODE_BLOCK_NT'say "His"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"His"' INVOCATION_NT'"His"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"His"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"His"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"His"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3732,32 +3338,26 @@ ROOT_NT CODE_BLOCK_NT'say "Hers"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Hers"' INVOCATION_NT'"Hers"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Hers"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Hers"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Hers"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "Its"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Its"' INVOCATION_NT'"Its"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Its"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Its"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Its"' {kind: text} - RULE_NT'to say themselves' {unit: 1} + IMPERATIVE_NT'to say themselves' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3766,16 +3366,13 @@ ROOT_NT CODE_BLOCK_NT'say "themselves"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"themselves"' INVOCATION_NT'"themselves"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"themselves"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"themselves"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"themselves"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[ourselves]"' {control structure: SAY} @@ -3785,9 +3382,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3795,16 +3390,13 @@ ROOT_NT CODE_BLOCK_NT'say "himself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"himself"' INVOCATION_NT'"himself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"himself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"himself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"himself"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3812,32 +3404,26 @@ ROOT_NT CODE_BLOCK_NT'say "herself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"herself"' INVOCATION_NT'"herself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"herself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"herself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"herself"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "itself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"itself"' INVOCATION_NT'"itself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"itself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"itself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"itself"' {kind: text} - RULE_NT'to say themselves' {unit: 1} + IMPERATIVE_NT'to say themselves' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3846,16 +3432,13 @@ ROOT_NT CODE_BLOCK_NT'say "Themselves"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Themselves"' INVOCATION_NT'"Themselves"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Themselves"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Themselves"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Themselves"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[Ourselves]"' {control structure: SAY} @@ -3865,9 +3448,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3875,16 +3456,13 @@ ROOT_NT CODE_BLOCK_NT'say "Himself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Himself"' INVOCATION_NT'"Himself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Himself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Himself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Himself"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3892,32 +3470,26 @@ ROOT_NT CODE_BLOCK_NT'say "Herself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Herself"' INVOCATION_NT'"Herself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Herself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Herself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Herself"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "Itself"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Itself"' INVOCATION_NT'"Itself"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Itself"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Itself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Itself"' {kind: text} - RULE_NT'to say they're' {unit: 1} + IMPERATIVE_NT'to say they're' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -3926,16 +3498,13 @@ ROOT_NT CODE_BLOCK_NT'say "they"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"they"' INVOCATION_NT'"they"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"they"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"they"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"they"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[we]"' {control structure: SAY} @@ -3945,9 +3514,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3955,16 +3522,13 @@ ROOT_NT CODE_BLOCK_NT'say "he"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"he"' INVOCATION_NT'"he"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"he"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"he"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"he"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -3972,35 +3536,29 @@ ROOT_NT CODE_BLOCK_NT'say "she"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"she"' INVOCATION_NT'"she"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"she"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"she"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"she"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "that"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"that"' INVOCATION_NT'"that"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"that"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"that"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"that"' {kind: text} CODE_BLOCK_NT'say "['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say they're' {unit: 1} + IMPERATIVE_NT'to say they're' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -4009,16 +3567,13 @@ ROOT_NT CODE_BLOCK_NT'say "They"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"They"' INVOCATION_NT'"They"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"They"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"They"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"They"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We]"' {control structure: SAY} @@ -4028,9 +3583,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a male person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a male person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a male person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a male person and item is not neuter' TEST_PROPOSITION_NT'item is a male person' {proposition: << kind=person('item') ^ male('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -4038,16 +3591,13 @@ ROOT_NT CODE_BLOCK_NT'say "He"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"He"' INVOCATION_NT'"He"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"He"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"He"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"He"' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is a female person and item is not neuter' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is a female person and item is not neuter' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is a female person and item is not neuter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is a female person and item is not neuter' TEST_PROPOSITION_NT'item is a female person' {proposition: << kind=person('item') ^ female('item') >>} {term: 'item'} TEST_PROPOSITION_NT'item is not neuter' {proposition: << NOT< neuter('item') NOT> >>} {term: 'item'} @@ -4055,147 +3605,125 @@ ROOT_NT CODE_BLOCK_NT'say "She"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"She"' INVOCATION_NT'"She"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"She"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"She"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"She"' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "That"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"That"' INVOCATION_NT'"That"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"That"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"That"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"That"' {kind: text} CODE_BLOCK_NT'say "['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say it' {unit: 1} + IMPERATIVE_NT'to say it' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]It"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' INVOCATION_NT'regarding nothing' {phrase invoked: call} - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} CONSTANT_NT'nothing' {kind: object} {nothing} INVOCATION_LIST_SAY_NT'"It"' INVOCATION_NT'"It"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"It"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"It"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"It"' {kind: text} - RULE_NT'to say there' {unit: 1} + IMPERATIVE_NT'to say there' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]There"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' INVOCATION_NT'regarding nothing' {phrase invoked: call} - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} CONSTANT_NT'nothing' {kind: object} {nothing} INVOCATION_LIST_SAY_NT'"There"' INVOCATION_NT'"There"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"There"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"There"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"There"' {kind: text} - RULE_NT'to say it' {unit: 1} + IMPERATIVE_NT'to say it' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]it"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' INVOCATION_NT'regarding nothing' {phrase invoked: call} - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} CONSTANT_NT'nothing' {kind: object} {nothing} INVOCATION_LIST_SAY_NT'"it"' INVOCATION_NT'"it"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"it"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"it"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"it"' {kind: text} - RULE_NT'to say there' {unit: 1} + IMPERATIVE_NT'to say there' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]there"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' INVOCATION_NT'regarding nothing' {phrase invoked: call} - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} CONSTANT_NT'nothing' {kind: object} {nothing} INVOCATION_LIST_SAY_NT'"there"' INVOCATION_NT'"there"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"there"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"there"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"there"' {kind: text} - RULE_NT'to say it's' {unit: 1} + IMPERATIVE_NT'to say it's' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]It['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' INVOCATION_NT'regarding nothing' {phrase invoked: call} - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} CONSTANT_NT'nothing' {kind: object} {nothing} INVOCATION_LIST_SAY_NT'"It"' {suppress_newlines} INVOCATION_NT'"It"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"It"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"It"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"It"' {kind: text} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say there's' {unit: 1} + IMPERATIVE_NT'to say there's' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]There['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' INVOCATION_NT'regarding nothing' {phrase invoked: call} - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} CONSTANT_NT'nothing' {kind: object} {nothing} INVOCATION_LIST_SAY_NT'"There"' {suppress_newlines} INVOCATION_NT'"There"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"There"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"There"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"There"' {kind: text} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say it's' {unit: 1} + IMPERATIVE_NT'to say it's' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]it['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' INVOCATION_NT'regarding nothing' {phrase invoked: call} - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} CONSTANT_NT'nothing' {kind: object} {nothing} INVOCATION_LIST_SAY_NT'"it"' {suppress_newlines} INVOCATION_NT'"it"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"it"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"it"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"it"' {kind: text} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say there's' {unit: 1} + IMPERATIVE_NT'to say there's' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]there['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' INVOCATION_NT'regarding nothing' {phrase invoked: call} - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} CONSTANT_NT'nothing' {kind: object} {nothing} INVOCATION_LIST_SAY_NT'"there"' {suppress_newlines} INVOCATION_NT'"there"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"there"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"there"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"there"' {kind: text} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say possessive' {unit: 1} + IMPERATIVE_NT'to say possessive' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[our]"' {control structure: SAY} @@ -4205,9 +3733,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -4216,8 +3742,7 @@ ROOT_NT CODE_BLOCK_NT'say "[the item][apostrophe]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'the item' {suppress_newlines} INVOCATION_NT'the item' {phrase invoked: call} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-object object} INVOCATION_LIST_SAY_NT'apostrophe' INVOCATION_NT'apostrophe' {phrase invoked: call} @@ -4225,32 +3750,26 @@ ROOT_NT CODE_BLOCK_NT'say "[the item][apostrophe]s"' {control structure: SAY} INVOCATION_LIST_SAY_NT'the item' {suppress_newlines} INVOCATION_NT'the item' {phrase invoked: call} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-object object} INVOCATION_LIST_SAY_NT'apostrophe' INVOCATION_NT'apostrophe' {phrase invoked: call} INVOCATION_LIST_SAY_NT'"s"' INVOCATION_NT'"s"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"s"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"s"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"s"' {kind: text} - RULE_NT'to say possessive' {unit: 1} + IMPERATIVE_NT'to say possessive' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'prior named object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'prior named object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'prior named object' {nonlocal: 'prior named object'(var)object}{meaning: {prior named object = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is the player' {proposition: << ('item' == 'the player') >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[Our]"' {control structure: SAY} @@ -4260,9 +3779,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the prior naming context is plural' {colon_block_command} {indent: 1} INVOCATION_NT'if the prior naming context is plural' {phrase invoked: call} - CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'prior naming context is plural' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'prior naming context is plural' PHRASE_TO_DECIDE_VALUE_NT'prior naming context is plural' INVOCATION_LIST_NT'prior naming context is plural' @@ -4271,8 +3788,7 @@ ROOT_NT CODE_BLOCK_NT'say "[The item][apostrophe]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'the item' {suppress_newlines} INVOCATION_NT'the item' {phrase invoked: call} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-object object} INVOCATION_LIST_SAY_NT'apostrophe' INVOCATION_NT'apostrophe' {phrase invoked: call} @@ -4280,15 +3796,13 @@ ROOT_NT CODE_BLOCK_NT'say "[The item][apostrophe]s"' {control structure: SAY} INVOCATION_LIST_SAY_NT'the item' {suppress_newlines} INVOCATION_NT'the item' {phrase invoked: call} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-object object} INVOCATION_LIST_SAY_NT'apostrophe' INVOCATION_NT'apostrophe' {phrase invoked: call} INVOCATION_LIST_SAY_NT'"s"' INVOCATION_NT'"s"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"s"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"s"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"s"' {kind: text} ENDHERE_NT'english language' {unit: 1} INCLUSION_NT'include english language by graham nelson' @@ -4446,9 +3960,9 @@ ROOT_NT VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to wear' UNPARSED_NOUN_NT'wearing relation' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} SENTENCE_NT'the verb to be able to see means the visibility relation' {unit: 2} {classified} VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to be able to see' @@ -4457,16 +3971,16 @@ ROOT_NT VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to be able to touch' UNPARSED_NOUN_NT'touchability relation' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} SENTENCE_NT'the verb to conceal ( he conceals , they conceal , he concea' {unit: 2} {classified} VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to conceal ( he conceals , they conceal , he concealed , it ' UNPARSED_NOUN_NT'concealment relation' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} HEADING_NT'chapter 2 - kinds for the physical world' {heading 4} {under: H4'chapter 2 - kinds for the physical world'} {unit: 2} HEADING_NT'section 1 - kind definitions' {heading 5} {under: H5'section 1 - kind definitions'} {unit: 2} SENTENCE_NT'a room is a kind' {unit: 2} {classified} @@ -4584,7 +4098,7 @@ ROOT_NT VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to be adjacent to' UNPARSED_NOUN_NT'reversed adjacency relation' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} SENTENCE_NT'the verb to be regionally in means the reversed regional-con' {unit: 2} {classified} VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to be regionally in' @@ -6066,16 +5580,14 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the position player in model world rule' UNPARSED_NOUN_NT'first in the startup rulebook' - RULE_NT'this is the declare everything initially unmentioned rule' {unit: 2} + IMPERATIVE_NT'this is the declare everything initially unmentioned rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with item running through things' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with item running through things' {phrase invoked: call} {kind variable declarations: K=thing} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'things' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'things' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'things' {kind: description of things} {proposition: << kind=thing(x) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'now the item is not mentioned' {indent: 2} {control structure: NOW} @@ -6120,12 +5632,11 @@ ROOT_NT VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 2} UNPARSED_NOUN_NT'position player in model world rule' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'POSITION_PLAYER_IN_MODEL_R' - RULE_NT'this is the start in the correct scenes rule' {unit: 2} + IMPERATIVE_NT'this is the start in the correct scenes rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the scene changing rules' INVOCATION_NT'follow the scene changing rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'scene changing rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'scene changing rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'scene changing rules' {kind: rulebook} {rulebook: scene changing}{meaning: {scene changing rules = RULEBOOK_MC}} SENTENCE_NT'the when play begins stage rule is listed in the startup rul' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} @@ -6143,42 +5654,38 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the initial room description rule' UNPARSED_NOUN_NT'in the startup rulebook' - RULE_NT'this is the when play begins stage rule' {unit: 2} + IMPERATIVE_NT'this is the when play begins stage rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the when play begins rulebook' INVOCATION_NT'follow the when play begins rulebook' {phrase invoked: call} - RVALUE_CONTEXT_NT'when play begins rulebook' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'when play begins rulebook' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'when play begins rulebook' {kind: rulebook} {rulebook: when play begins}{meaning: {when play begins rulebook = RULEBOOK_MC}} - RULE_NT'this is the fix baseline scoring rule' {unit: 2} + IMPERATIVE_NT'this is the fix baseline scoring rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the last notified score is the score' {control structure: NOW} CONDITION_CONTEXT_NT'the last notified score is the score' - RULE_NT'this is the display banner rule' {unit: 2} + IMPERATIVE_NT'this is the display banner rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "[banner text]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'banner text' INVOCATION_NT'banner text' {phrase invoked: call} - RULE_NT'this is the initial room description rule' {unit: 2} + IMPERATIVE_NT'this is the initial room description rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'try looking' INVOCATION_NT'try looking' {phrase invoked: call} - RVALUE_CONTEXT_NT'looking' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'looking' {kind: action} {action pattern: } - RULE_NT'a first turn sequence rule ( this is the every turn stage ru' {unit: 2} + RVALUE_CONTEXT_NT'looking' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'looking' {kind: action} {explicit action: } + IMPERATIVE_NT'a first turn sequence rule ( this is the every turn stage ru' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the every turn rules' INVOCATION_NT'follow the every turn rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'every turn rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'every turn rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'every turn rules' {kind: rulebook} {rulebook: every turn}{meaning: {every turn rules = RULEBOOK_MC}} - RULE_NT'a first turn sequence rule' {unit: 2} + IMPERATIVE_NT'a first turn sequence rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the scene changing rules' INVOCATION_NT'follow the scene changing rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'scene changing rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'scene changing rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'scene changing rules' {kind: rulebook} {rulebook: scene changing}{meaning: {scene changing rules = RULEBOOK_MC}} SENTENCE_NT'the generate action rule is listed first in the turn sequenc' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} @@ -6204,12 +5711,11 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the update chronological records rule' UNPARSED_NOUN_NT'in the turn sequence rulebook' - RULE_NT'a last turn sequence rule' {unit: 2} + IMPERATIVE_NT'a last turn sequence rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the scene changing rules' INVOCATION_NT'follow the scene changing rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'scene changing rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'scene changing rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'scene changing rules' {kind: rulebook} {rulebook: scene changing}{meaning: {scene changing rules = RULEBOOK_MC}} SENTENCE_NT'the adjust light rule is listed last in the turn sequence ru' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} @@ -6223,14 +5729,12 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the notify score changes rule' UNPARSED_NOUN_NT'last in the turn sequence rulebook' - RULE_NT'this is the notify score changes rule' {unit: 2} + IMPERATIVE_NT'this is the notify score changes rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the score is not the last notified score' {colon_block_command} {indent: 1} INVOCATION_NT'if the score is not the last notified score' {phrase invoked: call} - CONDITION_CONTEXT_NT'score is not the last notified score' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'score is not the last notified score' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'score is not the last notified score' {proposition: << NOT< ('score' == 'the last notified score') NOT> >>} {term: 'score'} CODE_BLOCK_NT INVOCATION_LIST_NT'issue score notification message' {indent: 2} @@ -6281,20 +5785,18 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the ask the final question rule' UNPARSED_NOUN_NT'last in the shutdown rulebook' - RULE_NT'this is the when play ends stage rule' {unit: 2} + IMPERATIVE_NT'this is the when play ends stage rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the when play ends rulebook' INVOCATION_NT'follow the when play ends rulebook' {phrase invoked: call} - RVALUE_CONTEXT_NT'when play ends rulebook' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'when play ends rulebook' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'when play ends rulebook' {kind: rulebook} {rulebook: when play ends}{meaning: {when play ends rulebook = RULEBOOK_MC}} - RULE_NT'this is the print player's obituary rule' {unit: 2} + IMPERATIVE_NT'this is the print player's obituary rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'carry out the printing the player's obituary activity' INVOCATION_NT'carry out the printing the player's obituary activity' {phrase invoked: call} - RVALUE_CONTEXT_NT'printing the player's obituary' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} - CONSTANT_NT'printing the player's obituary' {kind: activity} {activity: printing the player's obituary}{meaning: {printing the player's obituary = ACTIVITY_MC}} + RVALUE_CONTEXT_NT'printing the player's obituary' {token check to do: } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} + CONSTANT_NT'printing the player's obituary' {kind: activity on objects} {activity: printing the player's obituary}{meaning: {printing the player's obituary = ACTIVITY_MC}} SENTENCE_NT'the resurrect player if asked rule translates into inter as ' {unit: 2} {classified} VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 2} UNPARSED_NOUN_NT'resurrect player if asked rule' {definite 'the' n/m/f s/p nom/acc} @@ -6369,52 +5871,44 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the end action-processing in success rule' UNPARSED_NOUN_NT'last in the action-processing rules' - RULE_NT'this is the set pronouns from items from multiple object lis' {unit: 2} + IMPERATIVE_NT'this is the set pronouns from items from multiple object lis' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the current item from the multiple object list is not not' {colon_block_command} INVOCATION_NT'if the current item from the multiple object list is not not' {phrase invoked: call} - CONDITION_CONTEXT_NT'current item from the multiple object list is not nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'current item from the multiple object list is not nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'current item from the multiple object list is not nothing' {proposition: << NOT< ('current item from the multiple object list' == 'nothing') NOT> >>} {term: 'current item from the multiple object list'} CODE_BLOCK_NT INVOCATION_LIST_NT'set pronouns from the current item from the multiple object ' {results_from_splitting} {indent: 1} INVOCATION_NT'set pronouns from the current item from the multiple object ' {phrase invoked: call} - RVALUE_CONTEXT_NT'current item from the multiple object list' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'current item from the multiple object list' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'current item from the multiple object list' {nonlocal: 'current item from the multiple object list'(var)object}{meaning: {current item from the multiple object list = VARIABLE_MC}} - RULE_NT'this is the announce items from multiple object lists rule' {unit: 2} + IMPERATIVE_NT'this is the announce items from multiple object lists rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the current item from the multiple object list is not not' {colon_block_command} INVOCATION_NT'if the current item from the multiple object list is not not' {phrase invoked: call} - CONDITION_CONTEXT_NT'current item from the multiple object list is not nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'current item from the multiple object list is not nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'current item from the multiple object list is not nothing' {proposition: << NOT< ('current item from the multiple object list' == 'nothing') NOT> >>} {term: 'current item from the multiple object list'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[current item from the multiple object list]: [run para' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[current item from the multiple object list]: [run paragrap' INVOCATION_NT'"[current item from the multiple object list]: [run paragrap' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[current item from the multiple object list]: [run paragrap' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[current item from the multiple object list]: [run paragrap' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[current item from the multiple object list]: [run paragrap' {kind: text} - RULE_NT'this is the before stage rule' {unit: 2} + IMPERATIVE_NT'this is the before stage rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the before rules' INVOCATION_NT'abide by the before rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'before rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'before rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'before rules' {kind: rulebook} {rulebook: before}{meaning: {before rules = RULEBOOK_MC}} - RULE_NT'this is the instead stage rule' {unit: 2} + IMPERATIVE_NT'this is the instead stage rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the instead rules' INVOCATION_NT'abide by the instead rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'instead rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'instead rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'instead rules' {kind: rulebook} {rulebook: instead}{meaning: {instead rules = RULEBOOK_MC}} - RULE_NT'this is the end action-processing in success rule' {unit: 2} + IMPERATIVE_NT'this is the end action-processing in success rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' INVOCATION_NT'rule succeeds' {phrase invoked: call} @@ -6450,19 +5944,16 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the work out details of specific action rule' UNPARSED_NOUN_NT'first in the specific action-processing rules' - RULE_NT'a specific action-processing rule ( this is the investigate ' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the investigate ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the player's action awareness rules' INVOCATION_NT'follow the player's action awareness rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'player's action awareness rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'player's action awareness rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'player's action awareness rules' {kind: rulebook} {rulebook: player's action awareness}{meaning: {player's action awareness rules = RULEBOOK_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if rule succeeded' {colon_block_command} INVOCATION_NT'if rule succeeded' {phrase invoked: call} - CONDITION_CONTEXT_NT'rule succeeded' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'rule succeeded' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'rule succeeded' PHRASE_TO_DECIDE_VALUE_NT'rule succeeded' INVOCATION_LIST_NT'rule succeeded' @@ -6473,56 +5964,46 @@ ROOT_NT CODE_BLOCK_NT'otherwise' {results_from_splitting} {control structure: O} INVOCATION_LIST_NT'now within the player's sight is false' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'within the player's sight is false' - RULE_NT'a specific action-processing rule ( this is the check stage ' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the check stage ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'anonymously abide by the specific check rulebook' INVOCATION_NT'anonymously abide by the specific check rulebook' {phrase invoked: call} - RVALUE_CONTEXT_NT'specific check rulebook' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'specific check rulebook' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} NONLOCAL_VARIABLE_NT'specific check rulebook' {nonlocal: 'specific check rulebook'(var)rulebook} - RULE_NT'a specific action-processing rule ( this is the carry out st' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the carry out st' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the specific carry out rulebook' INVOCATION_NT'follow the specific carry out rulebook' {phrase invoked: call} - RVALUE_CONTEXT_NT'specific carry out rulebook' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'specific carry out rulebook' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} NONLOCAL_VARIABLE_NT'specific carry out rulebook' {nonlocal: 'specific carry out rulebook'(var)rulebook} - RULE_NT'a specific action-processing rule ( this is the after stage ' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the after stage ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if action in world is true' {colon_block_command} INVOCATION_NT'if action in world is true' {phrase invoked: call} - CONDITION_CONTEXT_NT'action in world is true' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action in world is true' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'action in world is true' {proposition: << ('action in world' == 'true') >>} {term: 'action in world'} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the after rules' {results_from_splitting} {indent: 1} INVOCATION_NT'abide by the after rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'after rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'after rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'after rules' {kind: rulebook} {rulebook: after}{meaning: {after rules = RULEBOOK_MC}} - RULE_NT'a specific action-processing rule ( this is the investigate ' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the investigate ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if within the player's sight is false' {colon_block_command} {indent: 1} INVOCATION_NT'if within the player's sight is false' {phrase invoked: call} - CONDITION_CONTEXT_NT'within the player's sight is false' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'within the player's sight is false' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'within the player's sight is false' {proposition: << ('within the player's sight' == 'false') >>} {term: 'within the player's sight'} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the player's action awareness rules' {indent: 2} INVOCATION_NT'follow the player's action awareness rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'player's action awareness rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'player's action awareness rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'player's action awareness rules' {kind: rulebook} {rulebook: player's action awareness}{meaning: {player's action awareness rules = RULEBOOK_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if rule succeeded' {indent: 2} {colon_block_command} INVOCATION_NT'if rule succeeded' {phrase invoked: call} - CONDITION_CONTEXT_NT'rule succeeded' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'rule succeeded' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'rule succeeded' PHRASE_TO_DECIDE_VALUE_NT'rule succeeded' INVOCATION_LIST_NT'rule succeeded' @@ -6530,24 +6011,21 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'now within the player's sight is true' {results_from_splitting} {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'within the player's sight is true' - RULE_NT'a specific action-processing rule ( this is the report stage' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the report stage' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if within the player's sight is true and action keeping sile' {colon_block_command} INVOCATION_NT'if within the player's sight is true and action keeping sile' {phrase invoked: call} - CONDITION_CONTEXT_NT'within the player's sight is true and action keeping silent ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'within the player's sight is true and action keeping silent ' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'within the player's sight is true and action keeping silent ' TEST_PROPOSITION_NT'within the player's sight is true' {proposition: << ('within the player's sight' == 'true') >>} {term: 'within the player's sight'} TEST_PROPOSITION_NT'action keeping silent is false' {proposition: << ('action keeping silent' == 'false') >>} {term: 'action keeping silent'} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the specific report rulebook' {results_from_splitting} {indent: 1} INVOCATION_NT'follow the specific report rulebook' {phrase invoked: call} - RVALUE_CONTEXT_NT'specific report rulebook' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'specific report rulebook' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} NONLOCAL_VARIABLE_NT'specific report rulebook' {nonlocal: 'specific report rulebook'(var)rulebook} - RULE_NT'the last specific action-processing rule' {unit: 2} + IMPERATIVE_NT'the last specific action-processing rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' INVOCATION_NT'rule succeeds' {phrase invoked: call} @@ -6555,54 +6033,46 @@ ROOT_NT VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 2} UNPARSED_NOUN_NT'work out details of specific action rule' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'WORK_OUT_DETAILS_OF_SPECIFIC_R' - RULE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} + IMPERATIVE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' {results_from_splitting} {indent: 1} INVOCATION_NT'rule succeeds' {phrase invoked: call} - RULE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} + IMPERATIVE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is not the actor and the player can see the ac' {colon_block_command} INVOCATION_NT'if the player is not the actor and the player can see the ac' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is not the actor and the player can see the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is not the actor and the player can see the actor' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'player is not the actor and the player can see the actor' TEST_PROPOSITION_NT'player is not the actor' {proposition: << NOT< ('player' == 'the actor') NOT> >>} {term: 'player'} TEST_PROPOSITION_NT'the player can see the actor' {proposition: << can-see('the player', 'the actor') >>} {term: 'the player'} CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' {results_from_splitting} {indent: 1} INVOCATION_NT'rule succeeds' {phrase invoked: call} - RULE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} + IMPERATIVE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a thing and the player can see the noun' {colon_block_command} INVOCATION_NT'if the noun is a thing and the player can see the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a thing and the player can see the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a thing and the player can see the noun' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'noun is a thing and the player can see the noun' TEST_PROPOSITION_NT'noun is a thing' {proposition: << kind=thing('noun') >>} {term: 'noun'} TEST_PROPOSITION_NT'the player can see the noun' {proposition: << can-see('the player', 'the noun') >>} {term: 'the player'} CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' {results_from_splitting} {indent: 1} INVOCATION_NT'rule succeeds' {phrase invoked: call} - RULE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} + IMPERATIVE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is a thing and the player can see the sec' {colon_block_command} INVOCATION_NT'if the second noun is a thing and the player can see the sec' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is a thing and the player can see the second nou' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is a thing and the player can see the second nou' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'second noun is a thing and the player can see the second nou' TEST_PROPOSITION_NT'second noun is a thing' {proposition: << kind=thing('second noun') >>} {term: 'second noun'} TEST_PROPOSITION_NT'the player can see the second noun' {proposition: << can-see('the player', 'the second noun') >>} {term: 'the player'} @@ -6650,14 +6120,12 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the can't act in the dark rule' UNPARSED_NOUN_NT'last in the visibility rules' - RULE_NT'the last visibility rule ( this is the can't act in the dark' {unit: 2} + IMPERATIVE_NT'the last visibility rule ( this is the can't act in the dark' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if in darkness' {colon_block_command} INVOCATION_NT'if in darkness' {phrase invoked: call} - CONDITION_CONTEXT_NT'in darkness' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'in darkness' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'in darkness' PHRASE_TO_DECIDE_VALUE_NT'in darkness' INVOCATION_LIST_NT'in darkness' @@ -6665,7 +6133,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' {results_from_splitting} {indent: 1} INVOCATION_NT'rule succeeds' {phrase invoked: call} - RULE_NT'does the player mean taking something which is carried by th' {unit: 2} + IMPERATIVE_NT'does the player mean taking something which is carried by th' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it is very unlikely' HEADING_NT'section 6 - adjectival definitions' {heading 5} {under: H5'section 6 - adjectival definitions'} {unit: 2} @@ -6692,21 +6160,18 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'text' {indefinite 'a' n/m/f nom/acc s} UNPARSED_NOUN_NT'description' - RULE_NT'when a scene ( called the event ) begins ( this is the scene' {unit: 2} + IMPERATIVE_NT'when a scene ( called the event ) begins ( this is the scene' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the description of the event is not ""' {colon_block_command} INVOCATION_NT'if the description of the event is not ""' {phrase invoked: call} - CONDITION_CONTEXT_NT'description of the event is not ""' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'description of the event is not ""' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'description of the event is not ""' {proposition: << NOT< ('description of the event' == '""') NOT> >>} {term: 'description of the event'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[description of the event][paragraph break]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'description of the event' {suppress_newlines} INVOCATION_NT'description of the event' {phrase invoked: call} {kind variable declarations: K=text} {save self} - RVALUE_CONTEXT_NT'description of the event' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'description of the event' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} PROPERTY_VALUE_NT'description of the event' {record as self} CONSTANT_NT {kind: nothing valued property} {property: 'description'=text}{meaning: {description = PROPERTY_MC}} LOCAL_VARIABLE_NT'the event' {local: LV"event"-scene scene} @@ -6988,14 +6453,12 @@ ROOT_NT UNPARSED_NOUN_NT'standard issuing the response text rule' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'STANDARD_RESPONSE_ISSUING_R' HEADING_NT'section 2 - naming and listing' {heading 5} {under: H5'section 2 - naming and listing'} {unit: 2} - RULE_NT'before printing the name of a thing ( called the item being ' {unit: 2} + IMPERATIVE_NT'before printing the name of a thing ( called the item being ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if expanding text for comparison purposes' {colon_block_command} INVOCATION_NT'if expanding text for comparison purposes' {phrase invoked: call} - CONDITION_CONTEXT_NT'expanding text for comparison purposes' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'expanding text for comparison purposes' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'expanding text for comparison purposes' PHRASE_TO_DECIDE_VALUE_NT'expanding text for comparison purposes' INVOCATION_LIST_NT'expanding text for comparison purposes' @@ -7009,26 +6472,22 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-activity} UNPARSED_NOUN_NT'printing a number of something ( documented at act_pan )' UNPARSED_NOUN_NT'an activity' - RULE_NT'rule for printing a number of something ( called the item ) ' {unit: 2} + IMPERATIVE_NT'rule for printing a number of something ( called the item ) ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "[listing group size in words] "' {control structure: SAY} INVOCATION_LIST_SAY_NT'listing group size in words' INVOCATION_NT'listing group size in words' {phrase invoked: call} - RVALUE_CONTEXT_NT'listing group size' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'number'} {required: number} + RVALUE_CONTEXT_NT'listing group size' {token check to do: } {token to be parsed against: TEST_VALUE_NT'number'} {required: number} NONLOCAL_VARIABLE_NT'listing group size' {nonlocal: 'listing group size'(var)number}{meaning: {listing group size = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} INVOCATION_LIST_NT'carry out the printing the plural name activity with the ite' INVOCATION_NT'carry out the printing the plural name activity with the ite' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'printing the plural name' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'printing the plural name' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'printing the plural name' {kind: activity on objects} {activity: printing the plural name}{meaning: {printing the plural name = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} SENTENCE_NT'the standard printing a number of something rule is listed l' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} @@ -7090,13 +6549,12 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the look around once light available rule' UNPARSED_NOUN_NT'last in for printing the announcement of light' - RULE_NT'this is the look around once light available rule' {unit: 2} + IMPERATIVE_NT'this is the look around once light available rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'try looking' INVOCATION_NT'try looking' {phrase invoked: call} - RVALUE_CONTEXT_NT'looking' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'looking' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'looking' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'looking' {kind: action} {explicit action: } SENTENCE_NT'constructing the status line ( documented at act_csl ) is an' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-activity} UNPARSED_NOUN_NT'constructing the status line ( documented at act_csl )' @@ -7153,36 +6611,35 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-activity} UNPARSED_NOUN_NT'implicitly taking something ( documented at act_implicitly )' UNPARSED_NOUN_NT'an activity' - RULE_NT'rule for deciding whether all includes scenery while taking ' {unit: 2} + IMPERATIVE_NT'rule for deciding whether all includes scenery while taking ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' - RULE_NT'rule for deciding whether all includes people while taking o' {unit: 2} + IMPERATIVE_NT'rule for deciding whether all includes people while taking o' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' - RULE_NT'rule for deciding whether all includes fixed in place things' {unit: 2} + IMPERATIVE_NT'rule for deciding whether all includes fixed in place things' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' - RULE_NT'rule for deciding whether all includes things enclosed by th' {unit: 2} + IMPERATIVE_NT'rule for deciding whether all includes things enclosed by th' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' - RULE_NT'rule for deciding whether all includes a person while droppi' {unit: 2} + IMPERATIVE_NT'rule for deciding whether all includes a person while droppi' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' - RULE_NT'rule for supplying a missing noun while an actor smelling ( ' {unit: 2} + IMPERATIVE_NT'rule for supplying a missing noun while an actor smelling ( ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is the touchability ceiling of the player' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is the touchability ceiling of the player' - RULE_NT'rule for supplying a missing noun while an actor listening (' {unit: 2} + IMPERATIVE_NT'rule for supplying a missing noun while an actor listening (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is the touchability ceiling of the player' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is the touchability ceiling of the player' - RULE_NT'rule for supplying a missing noun while an actor going ( thi' {unit: 2} + IMPERATIVE_NT'rule for supplying a missing noun while an actor going ( thi' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "You'll have to say which compass direction to go in." (' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You'll have to say which compass direction to go in." ( a )' INVOCATION_NT'"You'll have to say which compass direction to go in." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You'll have to say which compass direction to go in." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You'll have to say which compass direction to go in." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You'll have to say which compass direction to go in." ( a )' {kind: text} SENTENCE_NT'the standard implicit taking rule is listed last in for impl' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} @@ -7280,42 +6737,36 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the standard respond to final question rule' UNPARSED_NOUN_NT'last in for handling the final question' - RULE_NT'this is the print the final prompt rule' {unit: 2} + IMPERATIVE_NT'this is the print the final prompt rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "> [run paragraph on]" ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"> [run paragraph on]" ( a )' INVOCATION_NT'"> [run paragraph on]" ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"> [run paragraph on]" ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"> [run paragraph on]" ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"> [run paragraph on]" ( a )' {kind: text} SENTENCE_NT'the read the final answer rule translates into inter as READ' {unit: 2} {classified} VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 2} UNPARSED_NOUN_NT'read the final answer rule' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'READ_FINAL_ANSWER_R' HEADING_NT'section 5 - the final question' {heading 5} {under: H5'section 5 - the final question'} {unit: 2} - RULE_NT'this is the print the final question rule' {unit: 2} + IMPERATIVE_NT'this is the print the final question rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let named options count be 0' {indent: 1} INVOCATION_NT'let named options count be 0' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'named options count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'named options count' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'named options count' - RVALUE_CONTEXT_NT'0' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'0' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'0' {kind: number} {explicit literal} {number: 0} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through the table of final question options' {colon_block_command} {indent: 1} INVOCATION_NT'repeat through the table of final question options' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of final question options' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of final question options' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of final question options' {kind: table name} {table: table_data}{meaning: {table of final question options = TABLE_MC}} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the only if victorious entry is false or the story has en' {colon_block_command} {indent: 2} INVOCATION_NT'if the only if victorious entry is false or the story has en' {phrase invoked: call} - CONDITION_CONTEXT_NT'only if victorious entry is false or the story has ended fin' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'only if victorious entry is false or the story has ended fin' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'only if victorious entry is false or the story has ended fin' TEST_PROPOSITION_NT'only if victorious entry is false' {proposition: << ('only if victorious entry' == 'false') >>} {term: 'only if victorious entry'} TEST_VALUE_NT'the story has ended finally' @@ -7326,16 +6777,13 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if there is a final response rule entry or the final respons' {colon_block_command} {indent: 3} INVOCATION_NT'if there is a final response rule entry or the final respons' {phrase invoked: call} - CONDITION_CONTEXT_NT'there is a final response rule entry or the final response a' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'there is a final response rule entry or the final response a' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'there is a final response rule entry or the final response a' TEST_VALUE_NT'there is a final response rule entry' PHRASE_TO_DECIDE_VALUE_NT'there is a final response rule entry' INVOCATION_LIST_NT'there is a final response rule entry' INVOCATION_NT'there is a final response rule entry' {phrase invoked: call} {resulting: truth state} - LVALUE_TR_CONTEXT_NT'a final response rule entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table'} + LVALUE_TR_CONTEXT_NT'a final response rule entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table'} TABLE_ENTRY_NT'a final response rule entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'final response rule'}{meaning: {final response rule = TABLE_COLUMN_MC}} TEST_PROPOSITION_NT'the final response activity entry is not empty' {proposition: << NOT< empty('the final response activity entry') NOT> >>} {term: 'the final response activity entry'} @@ -7343,58 +6791,46 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if there is a final question wording entry' {indent: 4} {colon_block_command} INVOCATION_NT'if there is a final question wording entry' {phrase invoked: call} - CONDITION_CONTEXT_NT'there is a final question wording entry' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'there is a final question wording entry' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'there is a final question wording entry' PHRASE_TO_DECIDE_VALUE_NT'there is a final question wording entry' INVOCATION_LIST_NT'there is a final question wording entry' INVOCATION_NT'there is a final question wording entry' {phrase invoked: call} {resulting: truth state} - LVALUE_TR_CONTEXT_NT'a final question wording entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table'} + LVALUE_TR_CONTEXT_NT'a final question wording entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table'} TABLE_ENTRY_NT'a final question wording entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'final question wording'}{meaning: {final question wording = TABLE_COLUMN_MC}} CODE_BLOCK_NT INVOCATION_LIST_NT'increase named options count by 1' {results_from_splitting} {indent: 5} INVOCATION_NT'increase named options count by 1' {phrase invoked: call} - LVALUE_CONTEXT_NT'named options count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'named options count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} LOCAL_VARIABLE_NT'named options count' {local: LV"named options count"-number number} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the named options count is less than 1' {indent: 1} {colon_block_command} INVOCATION_NT'if the named options count is less than 1' {phrase invoked: call} - CONDITION_CONTEXT_NT'named options count is less than 1' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'named options count is less than 1' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'named options count is less than 1' {proposition: << less-than('named options count', '1') >>} {term: 'named options count'} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the immediately quit rule' {results_from_splitting} {indent: 2} INVOCATION_NT'abide by the immediately quit rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'immediately quit rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'immediately quit rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'immediately quit rule' {kind: rule} {rule: immediately quit rule}{meaning: {immediately quit rule = MISCELLANEOUS_MC}} CODE_BLOCK_NT'say "Would you like to " ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Would you like to " ( a )' INVOCATION_NT'"Would you like to " ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Would you like to " ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Would you like to " ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Would you like to " ( a )' {kind: text} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through the table of final question options' {colon_block_command} {indent: 1} INVOCATION_NT'repeat through the table of final question options' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of final question options' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of final question options' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of final question options' {kind: table name} {table: table_data}{meaning: {table of final question options = TABLE_MC}} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the only if victorious entry is false or the story has en' {colon_block_command} {indent: 2} INVOCATION_NT'if the only if victorious entry is false or the story has en' {phrase invoked: call} - CONDITION_CONTEXT_NT'only if victorious entry is false or the story has ended fin' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'only if victorious entry is false or the story has ended fin' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'only if victorious entry is false or the story has ended fin' TEST_PROPOSITION_NT'only if victorious entry is false' {proposition: << ('only if victorious entry' == 'false') >>} {term: 'only if victorious entry'} TEST_VALUE_NT'the story has ended finally' @@ -7405,16 +6841,13 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if there is a final response rule entry or the final respons' {colon_block_command} {indent: 3} INVOCATION_NT'if there is a final response rule entry or the final respons' {phrase invoked: call} - CONDITION_CONTEXT_NT'there is a final response rule entry or the final response a' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'there is a final response rule entry or the final response a' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'there is a final response rule entry or the final response a' TEST_VALUE_NT'there is a final response rule entry' PHRASE_TO_DECIDE_VALUE_NT'there is a final response rule entry' INVOCATION_LIST_NT'there is a final response rule entry' INVOCATION_NT'there is a final response rule entry' {phrase invoked: call} {resulting: truth state} - LVALUE_TR_CONTEXT_NT'a final response rule entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table'} + LVALUE_TR_CONTEXT_NT'a final response rule entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table'} TABLE_ENTRY_NT'a final response rule entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'final response rule'}{meaning: {final response rule = TABLE_COLUMN_MC}} TEST_PROPOSITION_NT'the final response activity entry is not empty' {proposition: << NOT< empty('the final response activity entry') NOT> >>} {term: 'the final response activity entry'} @@ -7422,75 +6855,60 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if there is a final question wording entry' {colon_block_command} {indent: 4} INVOCATION_NT'if there is a final question wording entry' {phrase invoked: call} - CONDITION_CONTEXT_NT'there is a final question wording entry' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'there is a final question wording entry' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'there is a final question wording entry' PHRASE_TO_DECIDE_VALUE_NT'there is a final question wording entry' INVOCATION_LIST_NT'there is a final question wording entry' INVOCATION_NT'there is a final question wording entry' {phrase invoked: call} {resulting: truth state} - LVALUE_TR_CONTEXT_NT'a final question wording entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table'} + LVALUE_TR_CONTEXT_NT'a final question wording entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table'} TABLE_ENTRY_NT'a final question wording entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'final question wording'}{meaning: {final question wording = TABLE_COLUMN_MC}} CODE_BLOCK_NT CODE_BLOCK_NT'say final question wording entry' {control structure: SAY} INVOCATION_LIST_SAY_NT'final question wording entry' INVOCATION_NT'final question wording entry' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'final question wording entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'final question wording entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} TABLE_ENTRY_NT'final question wording entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'final question wording'}{meaning: {final question wording = TABLE_COLUMN_MC}} INVOCATION_LIST_NT'decrease named options count by 1' {indent: 5} INVOCATION_NT'decrease named options count by 1' {phrase invoked: call} - LVALUE_CONTEXT_NT'named options count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'named options count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} LOCAL_VARIABLE_NT'named options count' {local: LV"named options count"-number number} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the named options count is 1' {colon_block_command} {indent: 5} INVOCATION_NT'if the named options count is 1' {phrase invoked: call} - CONDITION_CONTEXT_NT'named options count is 1' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'named options count is 1' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'named options count is 1' {proposition: << ('named options count' == '1') >>} {term: 'named options count'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the serial comma option is active' {indent: 6} {colon_block_command} INVOCATION_NT'if the serial comma option is active' {phrase invoked: call} - CONDITION_CONTEXT_NT'serial comma option is active' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'serial comma option is active' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'serial comma option is active' {proposition: << active('serial comma option') >>} {term: 'serial comma option'} CODE_BLOCK_NT CODE_BLOCK_NT'say ","' {control structure: SAY} INVOCATION_LIST_SAY_NT'","' INVOCATION_NT'","' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'","' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'","' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'","' {kind: text} CODE_BLOCK_NT'say " or " ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'" or " ( b )' INVOCATION_NT'" or " ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" or " ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" or " ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" or " ( b )' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the named options count is 0' {colon_block_command} {indent: 5} INVOCATION_NT'if the named options count is 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'named options count is 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'named options count is 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'named options count is 0' {proposition: << ('named options count' == '0') >>} {term: 'named options count'} CODE_BLOCK_NT CODE_BLOCK_NT'say "?[line break]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"?"' {suppress_newlines} INVOCATION_NT'"?"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"?"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"?"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"?"' {kind: text} INVOCATION_LIST_SAY_NT'line break' INVOCATION_NT'line break' {phrase invoked: call} @@ -7498,24 +6916,20 @@ ROOT_NT CODE_BLOCK_NT'say ", "' {control structure: SAY} INVOCATION_LIST_SAY_NT'", "' INVOCATION_NT'", "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", "' {kind: text} - RULE_NT'this is the standard respond to final question rule' {unit: 2} + IMPERATIVE_NT'this is the standard respond to final question rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through the table of final question options' {colon_block_command} {indent: 1} INVOCATION_NT'repeat through the table of final question options' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of final question options' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of final question options' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of final question options' {kind: table name} {table: table_data}{meaning: {table of final question options = TABLE_MC}} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the only if victorious entry is false or the story has en' {colon_block_command} {indent: 2} INVOCATION_NT'if the only if victorious entry is false or the story has en' {phrase invoked: call} - CONDITION_CONTEXT_NT'only if victorious entry is false or the story has ended fin' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'only if victorious entry is false or the story has ended fin' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'only if victorious entry is false or the story has ended fin' TEST_PROPOSITION_NT'only if victorious entry is false' {proposition: << ('only if victorious entry' == 'false') >>} {term: 'only if victorious entry'} TEST_VALUE_NT'the story has ended finally' @@ -7526,16 +6940,13 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if there is a final response rule entry or the final respons' {colon_block_command} {indent: 3} INVOCATION_NT'if there is a final response rule entry or the final respons' {phrase invoked: call} - CONDITION_CONTEXT_NT'there is a final response rule entry or the final response a' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'there is a final response rule entry or the final response a' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'there is a final response rule entry or the final response a' TEST_VALUE_NT'there is a final response rule entry' PHRASE_TO_DECIDE_VALUE_NT'there is a final response rule entry' INVOCATION_LIST_NT'there is a final response rule entry' INVOCATION_NT'there is a final response rule entry' {phrase invoked: call} {resulting: truth state} - LVALUE_TR_CONTEXT_NT'a final response rule entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table'} + LVALUE_TR_CONTEXT_NT'a final response rule entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table'} TABLE_ENTRY_NT'a final response rule entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'final response rule'}{meaning: {final response rule = TABLE_COLUMN_MC}} TEST_PROPOSITION_NT'the final response activity entry is not empty' {proposition: << NOT< empty('the final response activity entry') NOT> >>} {term: 'the final response activity entry'} @@ -7543,47 +6954,38 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player's command matches the topic entry' {colon_block_command} {indent: 4} INVOCATION_NT'if the player's command matches the topic entry' {phrase invoked: call} - CONDITION_CONTEXT_NT'player's command matches the topic entry' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player's command matches the topic entry' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'player's command matches the topic entry' PHRASE_TO_DECIDE_VALUE_NT'player's command matches the topic entry' INVOCATION_LIST_NT'player's command matches the topic entry' INVOCATION_NT'player's command matches the topic entry' {phrase invoked: call} {resulting: truth state} - RVALUE_CONTEXT_NT'player's command' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} + RVALUE_CONTEXT_NT'player's command' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} NONLOCAL_VARIABLE_NT'player's command' {nonlocal: 'player's command'(var)snippet}{meaning: {player's command = VARIABLE_MC}} - RVALUE_CONTEXT_NT'topic entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a topic'} {required: topic} + RVALUE_CONTEXT_NT'topic entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a topic'} {required: topic} TABLE_ENTRY_NT'topic entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'topic'}{meaning: {topic = TABLE_COLUMN_MC}} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if there is a final response rule entry' {indent: 5} {colon_block_command} INVOCATION_NT'if there is a final response rule entry' {phrase invoked: call} - CONDITION_CONTEXT_NT'there is a final response rule entry' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'there is a final response rule entry' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'there is a final response rule entry' PHRASE_TO_DECIDE_VALUE_NT'there is a final response rule entry' INVOCATION_LIST_NT'there is a final response rule entry' INVOCATION_NT'there is a final response rule entry' {phrase invoked: call} {resulting: truth state} - LVALUE_TR_CONTEXT_NT'a final response rule entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table'} + LVALUE_TR_CONTEXT_NT'a final response rule entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table'} TABLE_ENTRY_NT'a final response rule entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'final response rule'}{meaning: {final response rule = TABLE_COLUMN_MC}} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by final response rule entry' {results_from_splitting} {indent: 6} INVOCATION_NT'abide by final response rule entry' {phrase invoked: call} - RVALUE_CONTEXT_NT'final response rule entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'final response rule entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} TABLE_ENTRY_NT'final response rule entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'final response rule'}{meaning: {final response rule = TABLE_COLUMN_MC}} CODE_BLOCK_NT'otherwise' {results_from_splitting} {indent: 5} {control structure: O} INVOCATION_LIST_NT'carry out the final response activity entry activity' {indent: 6} INVOCATION_NT'carry out the final response activity entry activity' {phrase invoked: call} - RVALUE_CONTEXT_NT'final response activity entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} + RVALUE_CONTEXT_NT'final response activity entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} TABLE_ENTRY_NT'final response activity entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'final response activity'}{meaning: {final response activity = TABLE_COLUMN_MC}} INVOCATION_LIST_NT'rule succeeds' {indent: 5} @@ -7591,39 +6993,32 @@ ROOT_NT CODE_BLOCK_NT'say "Please give one of the answers above." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Please give one of the answers above." ( a )' INVOCATION_NT'"Please give one of the answers above." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Please give one of the answers above." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Please give one of the answers above." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Please give one of the answers above." ( a )' {kind: text} HEADING_NT'section 6 - final question options' {heading 5} {under: H5'section 6 - final question options'} {unit: 2} TABLE_NT'table of final question options final question wording only ' {unit: 2} HEADING_NT'section 7 - locale descriptions - unindexed' {heading 5} {under: H5'section 7 - locale descriptions - unindexed'} {unit: 2} TABLE_NT'table of locale priorities notable-object ( an object ) loca' {unit: 2} - RULE_NT'to describe locale for ( o - object )' {unit: 2} + IMPERATIVE_NT'to describe locale for ( o - object )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'carry out the printing the locale description activity with ' INVOCATION_NT'carry out the printing the locale description activity with ' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'printing the locale description' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'printing the locale description' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'printing the locale description' {kind: activity on objects} {activity: printing the locale description}{meaning: {printing the locale description = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'o' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'o' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'o' {local: LV"o"-object object} - RULE_NT'to set the/-- locale priority of ( o - an object ) to ( n - ' {unit: 2} + IMPERATIVE_NT'to set the/-- locale priority of ( o - an object ) to ( n - ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if o is a thing' {colon_block_command} {indent: 1} INVOCATION_NT'if o is a thing' {phrase invoked: call} - CONDITION_CONTEXT_NT'o is a thing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'o is a thing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'o is a thing' {proposition: << kind=thing('o') >>} {term: 'o'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if n is at most 0' {indent: 2} {colon_block_command} INVOCATION_NT'if n is at most 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'n is at most 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'n is at most 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'n is at most 0' {proposition: << at-most('n', '0') >>} {term: 'n'} CODE_BLOCK_NT INVOCATION_LIST_NT'now o is mentioned' {results_from_splitting} {indent: 3} {control structure: NOW} @@ -7631,15 +7026,12 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if there is a notable-object of o in the table of locale pri' {colon_block_command} {indent: 2} INVOCATION_NT'if there is a notable-object of o in the table of locale pri' {phrase invoked: call} - CONDITION_CONTEXT_NT'there is a notable-object of o in the table of locale priori' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'there is a notable-object of o in the table of locale priori' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'there is a notable-object of o in the table of locale priori' PHRASE_TO_DECIDE_VALUE_NT'there is a notable-object of o in the table of locale priori' INVOCATION_LIST_NT'there is a notable-object of o in the table of locale priori' INVOCATION_NT'there is a notable-object of o in the table of locale priori' {phrase invoked: call} {resulting: truth state} - LVALUE_TR_CONTEXT_NT'a notable-object of o in the table of locale priorities' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table'} + LVALUE_TR_CONTEXT_NT'a notable-object of o in the table of locale priorities' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table'} TABLE_ENTRY_NT'a notable-object of o in the table of locale priorities' CONSTANT_NT {kind: nothing valued table column} {table column: 'notable-object'}{meaning: {notable-object = TABLE_COLUMN_MC}} CONSTANT_NT {kind: nothing valued table column} {table column: 'notable-object'}{meaning: {notable-object = TABLE_COLUMN_MC}} @@ -7648,21 +7040,16 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'choose row with a notable-object of o in the table of locale' {indent: 3} INVOCATION_NT'choose row with a notable-object of o in the table of locale' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'a notable-object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: table column} + RVALUE_CONTEXT_NT'a notable-object' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: table column} CONSTANT_NT'a notable-object' {kind: nothing valued table column} {table column: 'notable-object'}{meaning: {notable-object = TABLE_COLUMN_MC}} - RVALUE_CONTEXT_NT'o' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'o' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'o' {local: LV"o"-object object} - RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of locale priorities' {kind: table name} {table: table_data}{meaning: {table of locale priorities = TABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if n is at most 0' {indent: 3} {colon_block_command} INVOCATION_NT'if n is at most 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'n is at most 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'n is at most 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'n is at most 0' {proposition: << at-most('n', '0') >>} {term: 'n'} CODE_BLOCK_NT INVOCATION_LIST_NT'blank out the whole row' {results_from_splitting} {indent: 4} @@ -7674,15 +7061,12 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if n is greater than 0' {colon_block_command} {indent: 3} INVOCATION_NT'if n is greater than 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'n is greater than 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'n is greater than 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'n is greater than 0' {proposition: << greater-than('n', '0') >>} {term: 'n'} CODE_BLOCK_NT INVOCATION_LIST_NT'choose a blank row in the table of locale priorities' {indent: 4} INVOCATION_NT'choose a blank row in the table of locale priorities' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of locale priorities' {kind: table name} {table: table_data}{meaning: {table of locale priorities = TABLE_MC}} INVOCATION_LIST_NT'now the notable-object entry is o' {indent: 4} {control structure: NOW} CONDITION_CONTEXT_NT'the notable-object entry is o' @@ -7696,101 +7080,83 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'locale paragraph count' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'locale paragraph count' {nonlocal: 'locale paragraph count'(var)number}} {created here} COMMON_NOUN_NT'number that varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=numbers variable-pointer(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before printing the locale description ( this is the initial' {unit: 2} + IMPERATIVE_NT'before printing the locale description ( this is the initial' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the locale paragraph count is 0' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the locale paragraph count is 0' CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through the table of locale priorities' {colon_block_command} {indent: 1} INVOCATION_NT'repeat through the table of locale priorities' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of locale priorities' {kind: table name} {table: table_data}{meaning: {table of locale priorities = TABLE_MC}} CODE_BLOCK_NT INVOCATION_LIST_NT'blank out the whole row' {indent: 2} INVOCATION_NT'blank out the whole row' {phrase invoked: call} - RULE_NT'before printing the locale description ( this is the find no' {unit: 2} + IMPERATIVE_NT'before printing the locale description ( this is the find no' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the domain be the parameter-object' INVOCATION_NT'let the domain be the parameter-object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'domain' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'domain' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'domain' - RVALUE_CONTEXT_NT'parameter-object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'parameter-object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'parameter-object' {nonlocal: 'parameter-object'(var)object}{meaning: {parameter-object = VARIABLE_MC}} INVOCATION_LIST_NT'carry out the choosing notable locale objects activity with ' INVOCATION_NT'carry out the choosing notable locale objects activity with ' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'choosing notable locale objects' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'choosing notable locale objects' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'choosing notable locale objects' {kind: activity on objects} {activity: choosing notable locale objects}{meaning: {choosing notable locale objects = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'domain' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'domain' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'domain' {local: LV"domain"-object object} INVOCATION_LIST_NT'continue the activity' INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing the locale description ( this is the interestin' {unit: 2} + IMPERATIVE_NT'for printing the locale description ( this is the interestin' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the domain be the parameter-object' {indent: 1} INVOCATION_NT'let the domain be the parameter-object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'domain' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'domain' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'domain' - RVALUE_CONTEXT_NT'parameter-object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'parameter-object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'parameter-object' {nonlocal: 'parameter-object'(var)object}{meaning: {parameter-object = VARIABLE_MC}} INVOCATION_LIST_NT'sort the table of locale priorities in locale description pr' {indent: 1} INVOCATION_NT'sort the table of locale priorities in locale description pr' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of locale priorities' {kind: table name} {table: table_data}{meaning: {table of locale priorities = TABLE_MC}} - RVALUE_CONTEXT_NT'locale description priority' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table column'} {required: table column} + RVALUE_CONTEXT_NT'locale description priority' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table column'} {required: table column} CONSTANT_NT'locale description priority' {kind: nothing valued table column} {table column: 'locale description priority'}{meaning: {locale description priority = TABLE_COLUMN_MC}} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through the table of locale priorities' {colon_block_command} {indent: 1} INVOCATION_NT'repeat through the table of locale priorities' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of locale priorities' {kind: table name} {table: table_data}{meaning: {table of locale priorities = TABLE_MC}} CODE_BLOCK_NT INVOCATION_LIST_NT'carry out the printing a locale paragraph about activity wit' {indent: 2} INVOCATION_NT'carry out the printing a locale paragraph about activity wit' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'printing a locale paragraph about' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'printing a locale paragraph about' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'printing a locale paragraph about' {kind: activity on objects} {activity: printing a locale paragraph about}{meaning: {printing a locale paragraph about = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'notable-object entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'notable-object entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} TABLE_ENTRY_NT'notable-object entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'notable-object'}{meaning: {notable-object = TABLE_COLUMN_MC}} INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing the locale description ( this is the you-can-al' {unit: 2} + IMPERATIVE_NT'for printing the locale description ( this is the you-can-al' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the domain be the parameter-object' {indent: 1} INVOCATION_NT'let the domain be the parameter-object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'domain' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'domain' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'domain' - RVALUE_CONTEXT_NT'parameter-object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'parameter-object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'parameter-object' {nonlocal: 'parameter-object'(var)object}{meaning: {parameter-object = VARIABLE_MC}} INVOCATION_LIST_NT'let the mentionable count be 0' {indent: 1} INVOCATION_NT'let the mentionable count be 0' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'mentionable count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'mentionable count' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'mentionable count' - RVALUE_CONTEXT_NT'0' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'0' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'0' {kind: number} {explicit literal} {number: 0} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with item running through things' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with item running through things' {phrase invoked: call} {kind variable declarations: K=thing} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'things' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'things' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'things' {kind: description of things} {proposition: << kind=thing(x) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'now the item is not marked for listing' {indent: 2} {control structure: NOW} @@ -7798,119 +7164,93 @@ ROOT_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through the table of locale priorities' {colon_block_command} {indent: 1} INVOCATION_NT'repeat through the table of locale priorities' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of locale priorities' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of locale priorities' {kind: table name} {table: table_data}{meaning: {table of locale priorities = TABLE_MC}} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the locale description priority entry is greater than 0' {indent: 2} {colon_block_command} INVOCATION_NT'if the locale description priority entry is greater than 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'locale description priority entry is greater than 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'locale description priority entry is greater than 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'locale description priority entry is greater than 0' {proposition: << greater-than('locale description priority entry', '0') >>} {term: 'locale description priority entry'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the notable-object entry is marked for listing' {results_from_splitting} {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'the notable-object entry is marked for listing' INVOCATION_LIST_NT'increase the mentionable count by 1' {indent: 2} INVOCATION_NT'increase the mentionable count by 1' {phrase invoked: call} - LVALUE_CONTEXT_NT'mentionable count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'mentionable count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} LOCAL_VARIABLE_NT'mentionable count' {local: LV"mentionable count"-number number} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the mentionable count is greater than 0' {colon_block_command} {indent: 1} INVOCATION_NT'if the mentionable count is greater than 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'mentionable count is greater than 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'mentionable count is greater than 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'mentionable count is greater than 0' {proposition: << greater-than('mentionable count', '0') >>} {term: 'mentionable count'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with item running through things' {colon_block_command} {indent: 2} INVOCATION_NT'repeat with item running through things' {phrase invoked: call} {kind variable declarations: K=thing} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'things' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'things' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'things' {kind: description of things} {proposition: << kind=thing(x) >>} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is mentioned' {colon_block_command} {indent: 3} INVOCATION_NT'if the item is mentioned' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is mentioned' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is mentioned' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is mentioned' {proposition: << mentioned('item') >>} {term: 'item'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the item is not marked for listing' {indent: 4} {control structure: NOW} CONDITION_CONTEXT_NT'the item is not marked for listing' INVOCATION_LIST_NT'begin the listing nondescript items activity with the domain' {indent: 2} INVOCATION_NT'begin the listing nondescript items activity with the domain' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'listing nondescript items' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'listing nondescript items' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'listing nondescript items' {kind: activity on objects} {activity: listing nondescript items}{meaning: {listing nondescript items = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'domain' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'domain' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'domain' {local: LV"domain"-object object} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of marked for listing things is 0' {colon_block_command} {indent: 2} INVOCATION_NT'if the number of marked for listing things is 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of marked for listing things is 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of marked for listing things is 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of marked for listing things is 0' {proposition: << ('number of marked for listing things' == '0') >>} {term: 'number of marked for listing things'} CODE_BLOCK_NT INVOCATION_LIST_NT'abandon the listing nondescript items activity with the doma' {indent: 3} INVOCATION_NT'abandon the listing nondescript items activity with the doma' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'listing nondescript items' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'listing nondescript items' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'listing nondescript items' {kind: activity on objects} {activity: listing nondescript items}{meaning: {listing nondescript items = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'domain' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'domain' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'domain' {local: LV"domain"-object object} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if handling the listing nondescript items activity with the ' {colon_block_command} {indent: 3} INVOCATION_NT'if handling the listing nondescript items activity with the ' {phrase invoked: call} - CONDITION_CONTEXT_NT'handling the listing nondescript items activity with the dom' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'handling the listing nondescript items activity with the dom' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'handling the listing nondescript items activity with the dom' PHRASE_TO_DECIDE_VALUE_NT'handling the listing nondescript items activity with the dom' INVOCATION_LIST_NT'handling the listing nondescript items activity with the dom' INVOCATION_NT'handling the listing nondescript items activity with the dom' {phrase invoked: call} {resulting: truth state} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'listing nondescript items' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'listing nondescript items' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'listing nondescript items' {kind: activity on objects} {activity: listing nondescript items}{meaning: {listing nondescript items = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'domain' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'domain' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'domain' {local: LV"domain"-object object} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the domain is the location' {colon_block_command} {indent: 4} INVOCATION_NT'if the domain is the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'domain is the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'domain is the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'domain is the location' {proposition: << ('domain' == 'the location') >>} {term: 'domain'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] " ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] " ( a )' INVOCATION_NT'"[We] " ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] " ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] " ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] " ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the domain is a supporter or the domain is an animal' {colon_block_command} {indent: 4} INVOCATION_NT'if the domain is a supporter or the domain is an animal' {phrase invoked: call} - CONDITION_CONTEXT_NT'domain is a supporter or the domain is an animal' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'domain is a supporter or the domain is an animal' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'domain is a supporter or the domain is an animal' TEST_PROPOSITION_NT'domain is a supporter' {proposition: << kind=supporter('domain') >>} {term: 'domain'} TEST_PROPOSITION_NT'the domain is an animal' {proposition: << kind=animal('the domain') >>} {term: 'the domain'} @@ -7918,77 +7258,61 @@ ROOT_NT CODE_BLOCK_NT'say "On [the domain] [we] " ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"On [the domain] [we] " ( b )' INVOCATION_NT'"On [the domain] [we] " ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"On [the domain] [we] " ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"On [the domain] [we] " ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"On [the domain] [we] " ( b )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 4} {control structure: O} CODE_BLOCK_NT'say "In [the domain] [we] " ( c )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"In [the domain] [we] " ( c )' INVOCATION_NT'"In [the domain] [we] " ( c )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"In [the domain] [we] " ( c )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"In [the domain] [we] " ( c )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"In [the domain] [we] " ( c )' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the locale paragraph count is greater than 0' {colon_block_command} {indent: 4} INVOCATION_NT'if the locale paragraph count is greater than 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'locale paragraph count is greater than 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'locale paragraph count is greater than 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'locale paragraph count is greater than 0' {proposition: << greater-than('locale paragraph count', '0') >>} {term: 'locale paragraph count'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the player][can] also see " ( d )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the player][can] also see " ( d )' INVOCATION_NT'"[regarding the player][can] also see " ( d )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the player][can] also see " ( d )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the player][can] also see " ( d )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the player][can] also see " ( d )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 4} {control structure: O} CODE_BLOCK_NT'say "[regarding the player][can] see " ( e )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the player][can] see " ( e )' INVOCATION_NT'"[regarding the player][can] see " ( e )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the player][can] see " ( e )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the player][can] see " ( e )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the player][can] see " ( e )' {kind: text} INVOCATION_LIST_NT'let the common holder be nothing' {indent: 4} INVOCATION_NT'let the common holder be nothing' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'common holder' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'common holder' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'common holder' - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'nothing' {kind: object} {nothing} INVOCATION_LIST_NT'let contents form of list be true' {indent: 4} INVOCATION_NT'let contents form of list be true' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'contents form of list' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: truth state} {required: value} + NEW_LOCAL_CONTEXT_NT'contents form of list' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: truth state} {required: value} UNKNOWN_NT'contents form of list' - RVALUE_CONTEXT_NT'true' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'true' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'true' {kind: truth state} {explicit literal} {number: 1} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with list item running through marked for listing thi' {colon_block_command} {indent: 4} INVOCATION_NT'repeat with list item running through marked for listing thi' {phrase invoked: call} {kind variable declarations: K=thing} - NEW_LOCAL_CONTEXT_NT'list item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} + NEW_LOCAL_CONTEXT_NT'list item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} UNKNOWN_NT'list item' - RVALUE_CONTEXT_NT'marked for listing things' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'marked for listing things' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'marked for listing things' {kind: description of things} {proposition: << kind=thing(x) ^ marked for listing(x) >>} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the list item is not the common holder' {colon_block_command} {indent: 5} INVOCATION_NT'if the holder of the list item is not the common holder' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the list item is not the common holder' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the list item is not the common holder' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'holder of the list item is not the common holder' {proposition: << NOT< ('holder of the list item' == 'the common holder') NOT> >>} {term: 'holder of the list item'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the common holder is nothing' {indent: 6} {colon_block_command} INVOCATION_NT'if the common holder is nothing' {phrase invoked: call} - CONDITION_CONTEXT_NT'common holder is nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'common holder is nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'common holder is nothing' {proposition: << ('common holder' == 'nothing') >>} {term: 'common holder'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the common holder is the holder of the list item' {results_from_splitting} {indent: 7} {control structure: NOW} @@ -7999,59 +7323,48 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the list item is mentioned' {indent: 5} {colon_block_command} INVOCATION_NT'if the list item is mentioned' {phrase invoked: call} - CONDITION_CONTEXT_NT'list item is mentioned' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'list item is mentioned' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'list item is mentioned' {proposition: << mentioned('list item') >>} {term: 'list item'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the list item is not marked for listing' {results_from_splitting} {indent: 6} {control structure: NOW} CONDITION_CONTEXT_NT'the list item is not marked for listing' INVOCATION_LIST_NT'filter list recursion to unmentioned things' {indent: 4} INVOCATION_NT'filter list recursion to unmentioned things' {phrase invoked: call} - RVALUE_CONTEXT_NT'unmentioned things' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'unmentioned things' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'unmentioned things' {kind: description of things} {proposition: << kind=thing(x) ^ unmentioned(x) >>} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if contents form of list is true and the common holder is no' {indent: 4} {colon_block_command} INVOCATION_NT'if contents form of list is true and the common holder is no' {phrase invoked: call} - CONDITION_CONTEXT_NT'contents form of list is true and the common holder is not n' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'contents form of list is true and the common holder is not n' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'contents form of list is true and the common holder is not n' TEST_PROPOSITION_NT'contents form of list is true' {proposition: << ('contents form of list' == 'true') >>} {term: 'contents form of list'} TEST_PROPOSITION_NT'the common holder is not nothing' {proposition: << NOT< ('the common holder' == 'nothing') NOT> >>} {term: 'the common holder'} CODE_BLOCK_NT INVOCATION_LIST_NT'list the contents of the common holder , as a sentence , inc' {results_from_splitting} {indent: 5} INVOCATION_NT'list the contents of the common holder' {phrase invoked: call} {phrase options invoked: as a sentence , including contents , giving brief inventory information , tersely , not listing concealed items , listing marked items only} - RVALUE_CONTEXT_NT'common holder' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'common holder' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'common holder' {local: LV object} CODE_BLOCK_NT'otherwise' {results_from_splitting} {indent: 4} {control structure: O} CODE_BLOCK_NT'say "[a list of marked for listing things including contents' {control structure: SAY} INVOCATION_LIST_SAY_NT'a list of marked for listing things including contents' INVOCATION_NT'a list of marked for listing things including contents' {phrase invoked: call} - RVALUE_CONTEXT_NT'marked for listing things' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'marked for listing things' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'marked for listing things' {kind: description of things} {proposition: << kind=thing(x) ^ marked for listing(x) >>} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the domain is the location' {indent: 4} {colon_block_command} INVOCATION_NT'if the domain is the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'domain is the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'domain is the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'domain is the location' {proposition: << ('domain' == 'the location') >>} {term: 'domain'} CODE_BLOCK_NT CODE_BLOCK_NT'say " here" ( f )' {control structure: SAY} INVOCATION_LIST_SAY_NT'" here" ( f )' INVOCATION_NT'" here" ( f )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" here" ( f )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" here" ( f )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" here" ( f )' {kind: text} CODE_BLOCK_NT'say ".[paragraph break]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' {suppress_newlines} INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} INVOCATION_LIST_SAY_NT'paragraph break' INVOCATION_NT'paragraph break' {phrase invoked: call} @@ -8059,11 +7372,9 @@ ROOT_NT INVOCATION_NT'unfilter list recursion' {phrase invoked: call} INVOCATION_LIST_NT'end the listing nondescript items activity with the domain' {indent: 3} INVOCATION_NT'end the listing nondescript items activity with the domain' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'listing nondescript items' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'listing nondescript items' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'listing nondescript items' {kind: activity on objects} {activity: listing nondescript items}{meaning: {listing nondescript items = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'domain' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'domain' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'domain' {local: LV"domain"-object object} INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} @@ -8071,44 +7382,35 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-activity} UNPARSED_NOUN_NT'choosing notable locale objects of something ( documented at' UNPARSED_NOUN_NT'an activity' - RULE_NT'for choosing notable locale objects ( this is the standard n' {unit: 2} + IMPERATIVE_NT'for choosing notable locale objects ( this is the standard n' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the domain be the parameter-object' {indent: 1} INVOCATION_NT'let the domain be the parameter-object' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'domain' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'domain' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'domain' - RVALUE_CONTEXT_NT'parameter-object' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'parameter-object' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'parameter-object' {nonlocal: 'parameter-object'(var)object}{meaning: {parameter-object = VARIABLE_MC}} INVOCATION_LIST_NT'let the held item be the first thing held by the domain' {indent: 1} INVOCATION_NT'let the held item be the first thing held by the domain' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'held item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'held item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'held item' - RVALUE_CONTEXT_NT'first thing held by the domain' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'first thing held by the domain' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'first thing held by the domain' INVOCATION_LIST_NT'first thing held by the domain' INVOCATION_NT'first thing held by the domain' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'domain' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'domain' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'domain' {local: LV"domain"-object object} CODE_BLOCK_NT {control structure: WHI} INVOCATION_LIST_NT'while the held item is a thing' {colon_block_command} {indent: 1} INVOCATION_NT'while the held item is a thing' {phrase invoked: call} - CONDITION_CONTEXT_NT'held item is a thing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'held item is a thing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'held item is a thing' {proposition: << kind=thing('held item') >>} {term: 'held item'} CODE_BLOCK_NT INVOCATION_LIST_NT'set the locale priority of the held item to 5' {indent: 2} INVOCATION_NT'set the locale priority of the held item to 5' {phrase invoked: call} - RVALUE_CONTEXT_NT'held item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'held item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'held item' {local: LV"held item"-object object} - RVALUE_CONTEXT_NT'5' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} + RVALUE_CONTEXT_NT'5' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} CONSTANT_NT'5' {kind: number} {explicit literal} {number: 5} INVOCATION_LIST_NT'now the held item is the next thing held after the held item' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the held item is the next thing held after the held item' @@ -8118,99 +7420,80 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-activity} UNPARSED_NOUN_NT'printing a locale paragraph about something ( documented at ' UNPARSED_NOUN_NT'an activity' - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item encloses the player' {colon_block_command} INVOCATION_NT'if the item encloses the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'item encloses the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item encloses the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item encloses the player' {proposition: << encloses('item', 'the player') >>} {term: 'item'} CODE_BLOCK_NT INVOCATION_LIST_NT'set the locale priority of the item to 0' {results_from_splitting} {indent: 1} INVOCATION_NT'set the locale priority of the item to 0' {phrase invoked: call} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} - RVALUE_CONTEXT_NT'0' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} + RVALUE_CONTEXT_NT'0' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} CONSTANT_NT'0' {kind: number} {explicit literal} {number: 0} INVOCATION_LIST_NT'continue the activity' INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is scenery' {colon_block_command} INVOCATION_NT'if the item is scenery' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is scenery' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is scenery' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is scenery' {proposition: << scenery('item') >>} {term: 'item'} CODE_BLOCK_NT INVOCATION_LIST_NT'set the locale priority of the item to 0' {results_from_splitting} {indent: 1} INVOCATION_NT'set the locale priority of the item to 0' {phrase invoked: call} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} - RVALUE_CONTEXT_NT'0' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} + RVALUE_CONTEXT_NT'0' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} CONSTANT_NT'0' {kind: number} {explicit literal} {number: 0} INVOCATION_LIST_NT'continue the activity' INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is undescribed' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is undescribed' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is undescribed' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is undescribed' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is undescribed' {proposition: << undescribed('item') >>} {term: 'item'} CODE_BLOCK_NT INVOCATION_LIST_NT'set the locale priority of the item to 0' {indent: 2} INVOCATION_NT'set the locale priority of the item to 0' {phrase invoked: call} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} - RVALUE_CONTEXT_NT'0' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} + RVALUE_CONTEXT_NT'0' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} CONSTANT_NT'0' {kind: number} {explicit literal} {number: 0} INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is not mentioned' {colon_block_command} INVOCATION_NT'if the item is not mentioned' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is not mentioned' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is not mentioned' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is not mentioned' {proposition: << NOT< mentioned('item') NOT> >>} {term: 'item'} CODE_BLOCK_NT INVOCATION_LIST_NT'set pronouns from the item' {results_from_splitting} {indent: 1} INVOCATION_NT'set pronouns from the item' {phrase invoked: call} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} INVOCATION_LIST_NT'continue the activity' INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is not mentioned' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is not mentioned' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is not mentioned' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is not mentioned' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is not mentioned' {proposition: << NOT< mentioned('item') NOT> >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if a paragraph break is pending' {indent: 2} {colon_block_command} INVOCATION_NT'if a paragraph break is pending' {phrase invoked: call} - CONDITION_CONTEXT_NT'a paragraph break is pending' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'a paragraph break is pending' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'a paragraph break is pending' PHRASE_TO_DECIDE_VALUE_NT'a paragraph break is pending' INVOCATION_LIST_NT'a paragraph break is pending' @@ -8221,18 +7504,14 @@ ROOT_NT INVOCATION_NT'conditional paragraph break' {phrase invoked: call} INVOCATION_LIST_NT'carry out the writing a paragraph about activity with the it' {indent: 2} INVOCATION_NT'carry out the writing a paragraph about activity with the it' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'writing a paragraph about' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'writing a paragraph about' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'writing a paragraph about' {kind: activity on objects} {activity: writing a paragraph about}{meaning: {writing a paragraph about = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if a paragraph break is pending' {colon_block_command} {indent: 2} INVOCATION_NT'if a paragraph break is pending' {phrase invoked: call} - CONDITION_CONTEXT_NT'a paragraph break is pending' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'a paragraph break is pending' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'a paragraph break is pending' PHRASE_TO_DECIDE_VALUE_NT'a paragraph break is pending' INVOCATION_LIST_NT'a paragraph break is pending' @@ -8240,11 +7519,9 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'increase the locale paragraph count by 1' {indent: 3} INVOCATION_NT'increase the locale paragraph count by 1' {phrase invoked: call} - LVALUE_CONTEXT_NT'locale paragraph count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'locale paragraph count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} NONLOCAL_VARIABLE_NT'locale paragraph count' {nonlocal: 'locale paragraph count'(var)number}{meaning: {locale paragraph count = VARIABLE_MC}} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} INVOCATION_LIST_NT'now the item is mentioned' {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'the item is mentioned' @@ -8253,22 +7530,18 @@ ROOT_NT INVOCATION_NT'conditional paragraph break' {phrase invoked: call} INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is not mentioned' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is not mentioned' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is not mentioned' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is not mentioned' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'item is not mentioned' {proposition: << NOT< mentioned('item') NOT> >>} {term: 'item'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item provides the property initial appearance and the' {colon_block_command} {indent: 2} INVOCATION_NT'if the item provides the property initial appearance and the' {phrase invoked: call} - CONDITION_CONTEXT_NT'item provides the property initial appearance and the item i' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item provides the property initial appearance and the item i' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item provides the property initial appearance and the item i' TEST_PROPOSITION_NT'item provides the property initial appearance' {proposition: << provides('item', 'the property initial appearance') >>} {term: 'item'} LOGICAL_AND_NT @@ -8277,17 +7550,14 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'increase the locale paragraph count by 1' {indent: 3} INVOCATION_NT'increase the locale paragraph count by 1' {phrase invoked: call} - LVALUE_CONTEXT_NT'locale paragraph count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'locale paragraph count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} NONLOCAL_VARIABLE_NT'locale paragraph count' {nonlocal: 'locale paragraph count'(var)number}{meaning: {locale paragraph count = VARIABLE_MC}} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} CODE_BLOCK_NT'say "[initial appearance of the item]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'initial appearance of the item' INVOCATION_NT'initial appearance of the item' {phrase invoked: call} {kind variable declarations: K=text} {save self} - RVALUE_CONTEXT_NT'initial appearance of the item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'initial appearance of the item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} PROPERTY_VALUE_NT'initial appearance of the item' {record as self} CONSTANT_NT {kind: nothing valued property} {property: 'initial appearance'=text}{meaning: {initial appearance = PROPERTY_MC}} LOCAL_VARIABLE_NT'the item' {local: LV"item"-thing thing} @@ -8297,19 +7567,15 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if a locale-supportable thing is on the item' {colon_block_command} {indent: 3} INVOCATION_NT'if a locale-supportable thing is on the item' {phrase invoked: call} - CONDITION_CONTEXT_NT'a locale-supportable thing is on the item' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'a locale-supportable thing is on the item' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'a locale-supportable thing is on the item' {proposition: << Exists x : kind=thing(x) ^ locale-supportable(x) ^ ('the item' == ) >>} {term: x} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with possibility running through things on the item' {colon_block_command} {indent: 4} INVOCATION_NT'repeat with possibility running through things on the item' {phrase invoked: call} {kind variable declarations: K=thing} - NEW_LOCAL_CONTEXT_NT'possibility' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} + NEW_LOCAL_CONTEXT_NT'possibility' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} UNKNOWN_NT'possibility' - RVALUE_CONTEXT_NT'things on the item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'things on the item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'things on the item' {kind: description of things} {proposition: << kind=thing(x) ^ (const_0 == ) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'now the possibility is marked for listing' {indent: 5} {control structure: NOW} @@ -8317,9 +7583,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the possibility is mentioned' {colon_block_command} {indent: 5} INVOCATION_NT'if the possibility is mentioned' {phrase invoked: call} - CONDITION_CONTEXT_NT'possibility is mentioned' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'possibility is mentioned' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'possibility is mentioned' {proposition: << mentioned('possibility') >>} {term: 'possibility'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the possibility is not marked for listing' {indent: 6} {control structure: NOW} @@ -8327,19 +7591,16 @@ ROOT_NT CODE_BLOCK_NT'say "On [the item] " ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"On [the item] " ( a )' INVOCATION_NT'"On [the item] " ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"On [the item] " ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"On [the item] " ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"On [the item] " ( a )' {kind: text} INVOCATION_LIST_NT'list the contents of the item , as a sentence , including co' {indent: 4} INVOCATION_NT'list the contents of the item' {phrase invoked: call} {phrase options invoked: as a sentence , including contents , giving brief inventory information , tersely , not listing concealed items , prefacing with is/are , listing marked items only} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} CODE_BLOCK_NT'say ".[paragraph break]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' {suppress_newlines} INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} INVOCATION_LIST_SAY_NT'paragraph break' INVOCATION_NT'paragraph break' {phrase invoked: call} @@ -8347,24 +7608,20 @@ ROOT_NT CONDITION_CONTEXT_NT'the item is mentioned' INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a supporter ( called t' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a supporter ( called t' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with item running through not handled things on the t' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with item running through not handled things on the t' {phrase invoked: call} {kind variable declarations: K=thing} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'not handled things on the tabletop which provide the propert' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'not handled things on the tabletop which provide the propert' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'not handled things on the tabletop which provide the propert' {kind: description of things} {proposition: << kind=thing(x) ^ not-handled(x) ^ kind=supporter(const_0) ^ provides(const_1, 'the property initial appearance') ^ (const_2 == ) >>} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is not a person and the initial appearance of th' {colon_block_command} {indent: 2} INVOCATION_NT'if the item is not a person and the initial appearance of th' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is not a person and the initial appearance of the item ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is not a person and the initial appearance of the item ' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is not a person and the initial appearance of the item ' TEST_PROPOSITION_NT'item is not a person' {proposition: << NOT< kind=person('item') NOT> >>} {term: 'item'} LOGICAL_AND_NT @@ -8376,8 +7633,7 @@ ROOT_NT CODE_BLOCK_NT'say initial appearance of the item' {control structure: SAY} INVOCATION_LIST_SAY_NT'initial appearance of the item' INVOCATION_NT'initial appearance of the item' {phrase invoked: call} {kind variable declarations: K=text} {save self} - RVALUE_CONTEXT_NT'initial appearance of the item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'initial appearance of the item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} PROPERTY_VALUE_NT'initial appearance of the item' {record as self} CONSTANT_NT {kind: nothing valued property} {property: 'initial appearance'=text}{meaning: {initial appearance = PROPERTY_MC}} LOCAL_VARIABLE_NT'the item' {local: LV thing} @@ -8386,15 +7642,13 @@ ROOT_NT INVOCATION_NT'paragraph break' {phrase invoked: call} INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'definition' {unit: 2} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is scenery and the item does not enclose the pla' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is scenery and the item does not enclose the pla' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is scenery and the item does not enclose the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is scenery and the item does not enclose the player' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is scenery and the item does not enclose the player' TEST_PROPOSITION_NT'item is scenery' {proposition: << scenery('item') >>} {term: 'item'} TEST_PROPOSITION_NT'the item does not enclose the player' {proposition: << NOT< encloses('the item', 'the player') NOT> >>} {term: 'the item'} @@ -8402,24 +7656,19 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if a locale-supportable thing is on the item' {colon_block_command} {indent: 2} INVOCATION_NT'if a locale-supportable thing is on the item' {phrase invoked: call} - CONDITION_CONTEXT_NT'a locale-supportable thing is on the item' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'a locale-supportable thing is on the item' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'a locale-supportable thing is on the item' {proposition: << Exists x : kind=thing(x) ^ locale-supportable(x) ^ ('the item' == ) >>} {term: x} CODE_BLOCK_NT INVOCATION_LIST_NT'set pronouns from the item' {indent: 3} INVOCATION_NT'set pronouns from the item' {phrase invoked: call} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with possibility running through things on the item' {colon_block_command} {indent: 3} INVOCATION_NT'repeat with possibility running through things on the item' {phrase invoked: call} {kind variable declarations: K=thing} - NEW_LOCAL_CONTEXT_NT'possibility' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} + NEW_LOCAL_CONTEXT_NT'possibility' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} UNKNOWN_NT'possibility' - RVALUE_CONTEXT_NT'things on the item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'things on the item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'things on the item' {kind: description of things} {proposition: << kind=thing(x) ^ (const_0 == ) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'now the possibility is marked for listing' {indent: 4} {control structure: NOW} @@ -8427,50 +7676,41 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the possibility is mentioned' {colon_block_command} {indent: 4} INVOCATION_NT'if the possibility is mentioned' {phrase invoked: call} - CONDITION_CONTEXT_NT'possibility is mentioned' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'possibility is mentioned' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'possibility is mentioned' {proposition: << mentioned('possibility') >>} {term: 'possibility'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the possibility is not marked for listing' {indent: 5} {control structure: NOW} CONDITION_CONTEXT_NT'the possibility is not marked for listing' INVOCATION_LIST_NT'increase the locale paragraph count by 1' {indent: 3} INVOCATION_NT'increase the locale paragraph count by 1' {phrase invoked: call} - LVALUE_CONTEXT_NT'locale paragraph count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'locale paragraph count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} NONLOCAL_VARIABLE_NT'locale paragraph count' {nonlocal: 'locale paragraph count'(var)number}{meaning: {locale paragraph count = VARIABLE_MC}} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} CODE_BLOCK_NT'say "On [the item] " ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"On [the item] " ( a )' INVOCATION_NT'"On [the item] " ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"On [the item] " ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"On [the item] " ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"On [the item] " ( a )' {kind: text} INVOCATION_LIST_NT'list the contents of the item , as a sentence , including co' {indent: 3} INVOCATION_NT'list the contents of the item' {phrase invoked: call} {phrase options invoked: as a sentence , including contents , giving brief inventory information , tersely , not listing concealed items , prefacing with is/are , listing marked items only} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} CODE_BLOCK_NT'say ".[paragraph break]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' {suppress_newlines} INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} INVOCATION_LIST_SAY_NT'paragraph break' INVOCATION_NT'paragraph break' {phrase invoked: call} INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is mentioned and the item is not undescribed and' {colon_block_command} {indent: 1} INVOCATION_NT'if the item is mentioned and the item is not undescribed and' {phrase invoked: call} - CONDITION_CONTEXT_NT'item is mentioned and the item is not undescribed and the it' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'item is mentioned and the item is not undescribed and the it' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'item is mentioned and the item is not undescribed and the it' TEST_PROPOSITION_NT'item is mentioned' {proposition: << mentioned('item') >>} {term: 'item'} LOGICAL_AND_NT @@ -8482,24 +7722,19 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if a locale-supportable thing is on the item' {colon_block_command} {indent: 2} INVOCATION_NT'if a locale-supportable thing is on the item' {phrase invoked: call} - CONDITION_CONTEXT_NT'a locale-supportable thing is on the item' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'a locale-supportable thing is on the item' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'a locale-supportable thing is on the item' {proposition: << Exists x : kind=thing(x) ^ locale-supportable(x) ^ ('the item' == ) >>} {term: x} CODE_BLOCK_NT INVOCATION_LIST_NT'set pronouns from the item' {indent: 3} INVOCATION_NT'set pronouns from the item' {phrase invoked: call} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with possibility running through things on the item' {colon_block_command} {indent: 3} INVOCATION_NT'repeat with possibility running through things on the item' {phrase invoked: call} {kind variable declarations: K=thing} - NEW_LOCAL_CONTEXT_NT'possibility' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} + NEW_LOCAL_CONTEXT_NT'possibility' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} UNKNOWN_NT'possibility' - RVALUE_CONTEXT_NT'things on the item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'things on the item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'things on the item' {kind: description of things} {proposition: << kind=thing(x) ^ (const_0 == ) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'now the possibility is marked for listing' {indent: 4} {control structure: NOW} @@ -8507,37 +7742,30 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the possibility is mentioned' {colon_block_command} {indent: 4} INVOCATION_NT'if the possibility is mentioned' {phrase invoked: call} - CONDITION_CONTEXT_NT'possibility is mentioned' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'possibility is mentioned' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'possibility is mentioned' {proposition: << mentioned('possibility') >>} {term: 'possibility'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the possibility is not marked for listing' {indent: 5} {control structure: NOW} CONDITION_CONTEXT_NT'the possibility is not marked for listing' INVOCATION_LIST_NT'increase the locale paragraph count by 1' {indent: 3} INVOCATION_NT'increase the locale paragraph count by 1' {phrase invoked: call} - LVALUE_CONTEXT_NT'locale paragraph count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'locale paragraph count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} NONLOCAL_VARIABLE_NT'locale paragraph count' {nonlocal: 'locale paragraph count'(var)number}{meaning: {locale paragraph count = VARIABLE_MC}} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} CODE_BLOCK_NT'say "On [the item] " ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"On [the item] " ( a )' INVOCATION_NT'"On [the item] " ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"On [the item] " ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"On [the item] " ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"On [the item] " ( a )' {kind: text} INVOCATION_LIST_NT'list the contents of the item , as a sentence , including co' {indent: 3} INVOCATION_NT'list the contents of the item' {phrase invoked: call} {phrase options invoked: as a sentence , including contents , giving brief inventory information , tersely , not listing concealed items , prefacing with is/are , listing marked items only} - RVALUE_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} CODE_BLOCK_NT'say ".[paragraph break]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' {suppress_newlines} INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} INVOCATION_LIST_SAY_NT'paragraph break' INVOCATION_NT'paragraph break' {phrase invoked: call} @@ -8709,44 +7937,37 @@ ROOT_NT PROPER_NOUN_NT'Taking an inventory of one's immediate possessions: the thin' {refined} {eval: CONSTANT_NT'Taking an inventory of one's immediate possessions: the thin' {kind: text}} - RULE_NT'carry out taking inventory ( this is the print empty invento' {unit: 2} + IMPERATIVE_NT'carry out taking inventory ( this is the print empty invento' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the first thing held by the player is nothing' {colon_block_command} INVOCATION_NT'if the first thing held by the player is nothing' {phrase invoked: call} - CONDITION_CONTEXT_NT'first thing held by the player is nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'first thing held by the player is nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'first thing held by the player is nothing' {proposition: << ('first thing held by the player' == 'nothing') >>} {term: 'first thing held by the player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [are] carrying nothing." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [are] carrying nothing." ( a )' INVOCATION_NT'"[We] [are] carrying nothing." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [are] carrying nothing." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [are] carrying nothing." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [are] carrying nothing." ( a )' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out taking inventory ( this is the print standard inve' {unit: 2} + IMPERATIVE_NT'carry out taking inventory ( this is the print standard inve' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [are] carrying:[line break]" ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [are] carrying:[line break]" ( a )' INVOCATION_NT'"[We] [are] carrying:[line break]" ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [are] carrying:[line break]" ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [are] carrying:[line break]" ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [are] carrying:[line break]" ( a )' {kind: text} INVOCATION_LIST_NT'list the contents of the player , with newlines , indented ,' INVOCATION_NT'list the contents of the player' {phrase invoked: call} {phrase options invoked: with newlines , indented , including contents , giving inventory information , with extra indentation} - RVALUE_CONTEXT_NT'player' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'player' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'player' {nonlocal: 'player'(var)person}{meaning: {player = VARIABLE_MC}} - RULE_NT'report an actor taking inventory ( this is the report other ' {unit: 2} + IMPERATIVE_NT'report an actor taking inventory ( this is the report other ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the player and the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is not the player and the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is not the player and the action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is not the player and the action is not silent' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'actor is not the player and the action is not silent' TEST_PROPOSITION_NT'actor is not the player' {proposition: << NOT< ('actor' == 'the player') NOT> >>} {term: 'actor'} TEST_VALUE_NT'the action is not silent' @@ -8757,8 +7978,7 @@ ROOT_NT CODE_BLOCK_NT'say "[The actor] [look] through [their] possessions." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [look] through [their] possessions." ( a )' INVOCATION_NT'"[The actor] [look] through [their] possessions." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [look] through [their] possessions." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [look] through [their] possessions." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [look] through [their] possessions." ( a )' {kind: text} SENTENCE_NT'taking is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -8776,121 +7996,97 @@ ROOT_NT PROPER_NOUN_NT'The taking action is the only way an action in the Standard ' {refined} {eval: CONSTANT_NT'The taking action is the only way an action in the Standard ' {kind: text}} - RULE_NT'check an actor taking ( this is the can't take yourself rule' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take yourself rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the noun' {proposition: << ('actor' == 'the noun') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {indent: 2} {colon_block_command} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [are] always self-possessed." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [are] always self-possessed." ( a )' INVOCATION_NT'"[We] [are] always self-possessed." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [are] always self-possessed." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [are] always self-possessed." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [are] always self-possessed." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take other people ' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take other people ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a person' {proposition: << kind=person('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {indent: 2} {colon_block_command} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "I don't suppose [the noun] [would care] for that." ( a ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"I don't suppose [the noun] [would care] for that." ( a )' INVOCATION_NT'"I don't suppose [the noun] [would care] for that." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"I don't suppose [the noun] [would care] for that." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"I don't suppose [the noun] [would care] for that." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"I don't suppose [the noun] [would care] for that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take component par' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take component par' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is part of something ( called the whole )' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is part of something ( called the whole )' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is part of something ( called the whole )' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is part of something ( called the whole )' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is part of something ( called the whole )' {proposition: << kind=thing_c(<(*1.component_parent) : 'noun'>) ^ called='whole':thing(<(*1.component_parent) : 'noun'>) >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][Those] [seem] to be a part of [the' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][Those] [seem] to be a part of [the who' INVOCATION_NT'"[regarding the noun][Those] [seem] to be a part of [the who' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][Those] [seem] to be a part of [the who' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][Those] [seem] to be a part of [the who' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][Those] [seem] to be a part of [the who' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take people's poss' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take people's poss' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the local ceiling be the common ancestor of the actor wi' {indent: 1} INVOCATION_NT'let the local ceiling be the common ancestor of the actor wi' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'local ceiling' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'local ceiling' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'local ceiling' - RVALUE_CONTEXT_NT'common ancestor of the actor with the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'common ancestor of the actor with the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'common ancestor of the actor with the noun' INVOCATION_LIST_NT'common ancestor of the actor with the noun' INVOCATION_NT'common ancestor of the actor with the noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_NT'let the owner be the not-counting-parts holder of the noun' {indent: 1} INVOCATION_NT'let the owner be the not-counting-parts holder of the noun' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'owner' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'owner' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'owner' - RVALUE_CONTEXT_NT'not-counting-parts holder of the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'not-counting-parts holder of the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'not-counting-parts holder of the noun' INVOCATION_LIST_NT'not-counting-parts holder of the noun' INVOCATION_NT'not-counting-parts holder of the noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: WHI} INVOCATION_LIST_NT'while the owner is not nothing and the owner is not the loca' {colon_block_command} {indent: 1} INVOCATION_NT'while the owner is not nothing and the owner is not the loca' {phrase invoked: call} - CONDITION_CONTEXT_NT'owner is not nothing and the owner is not the local ceiling' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'owner is not nothing and the owner is not the local ceiling' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'owner is not nothing and the owner is not the local ceiling' TEST_PROPOSITION_NT'owner is not nothing' {proposition: << NOT< ('owner' == 'nothing') NOT> >>} {term: 'owner'} TEST_PROPOSITION_NT'the owner is not the local ceiling' {proposition: << NOT< ('the owner' == 'the local ceiling') NOT> >>} {term: 'the owner'} @@ -8898,129 +8094,101 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the owner is a person' {colon_block_command} {indent: 2} INVOCATION_NT'if the owner is a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'owner is a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'owner is a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'owner is a person' {proposition: << kind=person('owner') >>} {term: 'owner'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 3} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][Those] [seem] to belong to [the ow' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][Those] [seem] to belong to [the owner]' INVOCATION_NT'"[regarding the noun][Those] [seem] to belong to [the owner]' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][Those] [seem] to belong to [the owner]' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][Those] [seem] to belong to [the owner]' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][Those] [seem] to belong to [the owner]' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'let the owner be the not-counting-parts holder of the owner' {indent: 2} INVOCATION_NT'let the owner be the not-counting-parts holder of the owner' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'owner' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'owner' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'owner' {local: LV"owner"-object object} - RVALUE_CONTEXT_NT'not-counting-parts holder of the owner' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'not-counting-parts holder of the owner' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'not-counting-parts holder of the owner' INVOCATION_LIST_NT'not-counting-parts holder of the owner' INVOCATION_NT'not-counting-parts holder of the owner' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'owner' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'owner' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'owner' {local: LV"owner"-object object} - RULE_NT'check an actor taking ( this is the can't take items out of ' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take items out of ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let h be the noun' {indent: 1} INVOCATION_NT'let h be the noun' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'h' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'h' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'h' - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: WHI} INVOCATION_LIST_NT'while h is not nothing and h is not a room' {colon_block_command} {indent: 1} INVOCATION_NT'while h is not nothing and h is not a room' {phrase invoked: call} - CONDITION_CONTEXT_NT'h is not nothing and h is not a room' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'h is not nothing and h is not a room' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'h is not nothing and h is not a room' TEST_PROPOSITION_NT'h is not nothing' {proposition: << NOT< ('h' == 'nothing') NOT> >>} {term: 'h'} TEST_PROPOSITION_NT'h is not a room' {proposition: << NOT< kind=room('h') NOT> >>} {term: 'h'} CODE_BLOCK_NT INVOCATION_LIST_NT'let h be the not-counting-parts holder of h' {indent: 2} INVOCATION_NT'let h be the not-counting-parts holder of h' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'h' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'h' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'h' {local: LV"h"-object object} - RVALUE_CONTEXT_NT'not-counting-parts holder of h' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'not-counting-parts holder of h' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'not-counting-parts holder of h' INVOCATION_LIST_NT'not-counting-parts holder of h' INVOCATION_NT'not-counting-parts holder of h' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'h' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'h' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'h' {local: LV"h"-object object} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if h is nothing' {colon_block_command} {indent: 1} INVOCATION_NT'if h is nothing' {phrase invoked: call} - CONDITION_CONTEXT_NT'h is nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'h is nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'h is nothing' {proposition: << ('h' == 'nothing') >>} {term: 'h'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][Those] [aren't] available." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][Those] [aren't] available." ( a )' INVOCATION_NT'"[regarding the noun][Those] [aren't] available." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][Those] [aren't] available." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][Those] [aren't] available." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][Those] [aren't] available." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take what you're i' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take what you're i' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the local ceiling be the common ancestor of the actor wi' {indent: 1} INVOCATION_NT'let the local ceiling be the common ancestor of the actor wi' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'local ceiling' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'local ceiling' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'local ceiling' - RVALUE_CONTEXT_NT'common ancestor of the actor with the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'common ancestor of the actor with the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'common ancestor of the actor with the noun' INVOCATION_LIST_NT'common ancestor of the actor with the noun' INVOCATION_NT'common ancestor of the actor with the noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the local ceiling is the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the local ceiling is the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'local ceiling is the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'local ceiling is the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'local ceiling is the noun' {proposition: << ('local ceiling' == 'the noun') >>} {term: 'local ceiling'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [would have] to get @@ -9030,20 +8198,17 @@ ROOT_NT INVOCATION_NT'"[We] [would have] to get [if noun is a supporter]off[otherw' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"[We] [would have] to get - [if noun is a supporter]off[otherw' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + [if noun is a supporter]off[otherw' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [would have] to get [if noun is a supporter]off[otherw' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take what's alread' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take what's alread' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is carrying the noun or the actor is wearing th' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is carrying the noun or the actor is wearing th' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is carrying the noun or the actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is carrying the noun or the actor is wearing the noun' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'actor is carrying the noun or the actor is wearing the noun' TEST_PROPOSITION_NT'actor is carrying the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} TEST_PROPOSITION_NT'the actor is wearing the noun' {proposition: << ('the actor' == ) >>} {term: 'the actor'} @@ -9051,236 +8216,189 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] already [have] [regarding the noun][those]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] already [have] [regarding the noun][those]." ( a )' INVOCATION_NT'"[We] already [have] [regarding the noun][those]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] already [have] [regarding the noun][those]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] already [have] [regarding the noun][those]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] already [have] [regarding the noun][those]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take scenery rule ' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take scenery rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is scenery' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is scenery' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is scenery' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is scenery' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is scenery' {proposition: << scenery('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] hardly portable." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] hardly portable." ( a )' INVOCATION_NT'"[regarding the noun][They're] hardly portable." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] hardly portable." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] hardly portable." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] hardly portable." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can only take things rul' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can only take things rul' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not a thing' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is not a thing' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is not a thing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is not a thing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is not a thing' {proposition: << NOT< kind=thing('noun') NOT> >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [cannot] carry [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [cannot] carry [the noun]." ( a )' INVOCATION_NT'"[We] [cannot] carry [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [cannot] carry [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [cannot] carry [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [cannot] carry [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take what's fixed ' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take what's fixed ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is fixed in place' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is fixed in place' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is fixed in place' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is fixed in place' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is fixed in place' {proposition: << fixed in place('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] fixed in place." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] fixed in place." ( a )' INVOCATION_NT'"[regarding the noun][They're] fixed in place." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] fixed in place." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] fixed in place." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] fixed in place." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the use player's holdall to ' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the use player's holdall to ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things carried by the actor is at least the' {colon_block_command} {indent: 1} INVOCATION_NT'if the number of things carried by the actor is at least the' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of things carried by the actor is at least the carryi' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of things carried by the actor is at least the carryi' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of things carried by the actor is at least the carryi' {proposition: << at-least('number of things carried by the actor', 'the carrying capacity of the actor') >>} {term: 'number of things carried by the actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is holding a player's holdall ( called the curr' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is holding a player's holdall ( called the curr' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is holding a player's holdall ( called the current wor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is holding a player's holdall ( called the current wor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is holding a player's holdall ( called the current wor' {proposition: << Exists x : kind=player's holdall(x) ^ called='current working sack':player's holdall(x) ^ ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the transferred item be nothing' {indent: 3} INVOCATION_NT'let the transferred item be nothing' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'transferred item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'transferred item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'transferred item' - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'nothing' {kind: object} {nothing} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with the possible item running through things carried' {colon_block_command} {indent: 3} INVOCATION_NT'repeat with the possible item running through things carried' {phrase invoked: call} {kind variable declarations: K=thing} - NEW_LOCAL_CONTEXT_NT'possible item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} + NEW_LOCAL_CONTEXT_NT'possible item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} UNKNOWN_NT'possible item' - RVALUE_CONTEXT_NT'things carried by the actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'things carried by the actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'things carried by the actor' {kind: description of things} {proposition: << kind=thing(x) ^ ('the actor' == ) >>} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the possible item is not lit and the possible item is not' {indent: 4} {colon_block_command} INVOCATION_NT'if the possible item is not lit and the possible item is not' {phrase invoked: call} - CONDITION_CONTEXT_NT'possible item is not lit and the possible item is not the cu' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'possible item is not lit and the possible item is not the cu' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'possible item is not lit and the possible item is not the cu' TEST_PROPOSITION_NT'possible item is not lit' {proposition: << NOT< lit('possible item') NOT> >>} {term: 'possible item'} TEST_PROPOSITION_NT'the possible item is not the current working sack' {proposition: << NOT< ('the possible item' == 'the current working sack') NOT> >>} {term: 'the possible item'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the transferred item be the possible item' {results_from_splitting} {indent: 5} INVOCATION_NT'let the transferred item be the possible item' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'transferred item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'transferred item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'transferred item' {local: LV object} - RVALUE_CONTEXT_NT'possible item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'possible item' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} LOCAL_VARIABLE_NT'possible item' {local: LV thing} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the transferred item is not nothing' {colon_block_command} {indent: 3} INVOCATION_NT'if the transferred item is not nothing' {phrase invoked: call} - CONDITION_CONTEXT_NT'transferred item is not nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'transferred item is not nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'transferred item is not nothing' {proposition: << NOT< ('transferred item' == 'nothing') NOT> >>} {term: 'transferred item'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 4} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(putting [the transferred item] into [the current worki' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(putting [the transferred item] into [the current working s' INVOCATION_NT'"(putting [the transferred item] into [the current working s' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(putting [the transferred item] into [the current working s' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(putting [the transferred item] into [the current working s' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(putting [the transferred item] into [the current working s' {kind: text} INVOCATION_LIST_NT'silently try the actor trying inserting the transferred item' {indent: 4} INVOCATION_NT'silently try the actor trying inserting the transferred item' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor trying inserting the transferred item into the current' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'actor trying inserting the transferred item into the current' {kind: action} {action pattern: object} second: LOCAL_VARIABLE_NT'the current working sack' {local: LV"current working sack"-player's holdall player's holdall}>} + RVALUE_CONTEXT_NT'actor trying inserting the transferred item into the current' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'actor trying inserting the transferred item into the current' {kind: action} {explicit action: object} second: LOCAL_VARIABLE_NT'the current working sack' {local: LV"current working sack"-player's holdall player's holdall}>} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the transferred item is not in the current working sack' {colon_block_command} {indent: 4} INVOCATION_NT'if the transferred item is not in the current working sack' {phrase invoked: call} - CONDITION_CONTEXT_NT'transferred item is not in the current working sack' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'transferred item is not in the current working sack' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'transferred item is not in the current working sack' {proposition: << NOT< ('the current working sack' == ) NOT> >>} {term: 'transferred item'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {indent: 5} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't exceed carrying ca' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't exceed carrying ca' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things carried by the actor is at least the' {colon_block_command} {indent: 1} INVOCATION_NT'if the number of things carried by the actor is at least the' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of things carried by the actor is at least the carryi' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of things carried by the actor is at least the carryi' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of things carried by the actor is at least the carryi' {proposition: << at-least('number of things carried by the actor', 'the carrying capacity of the actor') >>} {term: 'number of things carried by the actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We]['re] carrying too many things already." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We]['re] carrying too many things already." ( a )' INVOCATION_NT'"[We]['re] carrying too many things already." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We]['re] carrying too many things already." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We]['re] carrying too many things already." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We]['re] carrying too many things already." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor taking ( this is the standard taking rule' {unit: 2} + IMPERATIVE_NT'carry out an actor taking ( this is the standard taking rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the actor carries the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the actor carries the noun' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is handled' {results_from_splitting} {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the noun is handled' - RULE_NT'report an actor taking ( this is the standard report taking ' {unit: 2} + IMPERATIVE_NT'report an actor taking ( this is the standard report taking ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -9289,23 +8407,19 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Taken." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Taken." ( a )' INVOCATION_NT'"Taken." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Taken." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Taken." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Taken." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "[The actor] [pick] up [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [pick] up [the noun]." ( b )' INVOCATION_NT'"[The actor] [pick] up [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [pick] up [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [pick] up [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [pick] up [the noun]." ( b )' {kind: text} SENTENCE_NT'removing it from is an action applying to two things' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -9323,96 +8437,77 @@ ROOT_NT PROPER_NOUN_NT'Removing is not really an action in its own right. Whereas t' {refined} {eval: CONSTANT_NT'Removing is not really an action in its own right. Whereas t' {kind: text}} - RULE_NT'check an actor removing something from ( this is the can't r' {unit: 2} + IMPERATIVE_NT'check an actor removing something from ( this is the can't r' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the noun is not the second noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the holder of the noun is not the second noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the noun is not the second noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the noun is not the second noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'holder of the noun is not the second noun' {proposition: << NOT< ('holder of the noun' == 'the second noun') NOT> >>} {term: 'holder of the noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "But [regarding the noun][they] [aren't] there now." ( a' {control structure: SAY} INVOCATION_LIST_SAY_NT'"But [regarding the noun][they] [aren't] there now." ( a )' INVOCATION_NT'"But [regarding the noun][they] [aren't] there now." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"But [regarding the noun][they] [aren't] there now." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"But [regarding the noun][they] [aren't] there now." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"But [regarding the noun][they] [aren't] there now." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor removing something from ( this is the can't r' {unit: 2} + IMPERATIVE_NT'check an actor removing something from ( this is the can't r' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the owner be the holder of the noun' {indent: 1} INVOCATION_NT'let the owner be the holder of the noun' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'owner' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'owner' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'owner' - RVALUE_CONTEXT_NT'holder of the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'holder of the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'holder of the noun' INVOCATION_LIST_NT'holder of the noun' INVOCATION_NT'holder of the noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the owner is a person' {colon_block_command} {indent: 1} INVOCATION_NT'if the owner is a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'owner is a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'owner is a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'owner is a person' {proposition: << kind=person('owner') >>} {term: 'owner'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the owner is the actor' {indent: 2} {colon_block_command} INVOCATION_NT'if the owner is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'owner is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'owner is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'owner is the actor' {proposition: << ('owner' == 'the actor') >>} {term: 'owner'} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to the taking off action on the noun' {results_from_splitting} {indent: 3} INVOCATION_NT'convert to the taking off action on the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'taking off action' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} + RVALUE_CONTEXT_NT'taking off action' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} CONSTANT_NT'taking off action' {kind: action name} {action name: taking off}{meaning: {taking off action = MISCELLANEOUS_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][Those] [seem] to belong to [the ow' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][Those] [seem] to belong to [the owner]' INVOCATION_NT'"[regarding the noun][Those] [seem] to belong to [the owner]' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][Those] [seem] to belong to [the owner]' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][Those] [seem] to belong to [the owner]' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][Those] [seem] to belong to [the owner]' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor removing something from ( this is the convert' {unit: 2} + IMPERATIVE_NT'check an actor removing something from ( this is the convert' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to the taking action on the noun' INVOCATION_NT'convert to the taking action on the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'taking action' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} + RVALUE_CONTEXT_NT'taking action' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} CONSTANT_NT'taking action' {kind: action name} {action name: taking}{meaning: {taking action = MISCELLANEOUS_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} SENTENCE_NT'the can't take component parts rule is listed before the can' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} @@ -9434,84 +8529,69 @@ ROOT_NT PROPER_NOUN_NT'Dropping is one of five actions by which an actor can get ri' {refined} {eval: CONSTANT_NT'Dropping is one of five actions by which an actor can get ri' {kind: text}} - RULE_NT'check an actor dropping ( this is the can't drop yourself ru' {unit: 2} + IMPERATIVE_NT'check an actor dropping ( this is the can't drop yourself ru' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is the actor' {proposition: << ('noun' == 'the actor') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [lack] the dexterity." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [lack] the dexterity." ( a )' INVOCATION_NT'"[We] [lack] the dexterity." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [lack] the dexterity." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [lack] the dexterity." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [lack] the dexterity." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor dropping something which is part of the actor' {unit: 2} + IMPERATIVE_NT'check an actor dropping something which is part of the actor' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [can't drop] part of [ourselves]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [can't drop] part of [ourselves]." ( a )' INVOCATION_NT'"[We] [can't drop] part of [ourselves]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [can't drop] part of [ourselves]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [can't drop] part of [ourselves]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [can't drop] part of [ourselves]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor dropping ( this is the can't drop what's alre' {unit: 2} + IMPERATIVE_NT'check an actor dropping ( this is the can't drop what's alre' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is in the holder of the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is in the holder of the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is in the holder of the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is in the holder of the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is in the holder of the actor' {proposition: << ('the holder of the actor' == ) >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [are] already here." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [are] already here." ( a )' INVOCATION_NT'"[The noun] [are] already here." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [are] already here." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [are] already here." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [are] already here." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor dropping ( this is the can't drop what's not ' {unit: 2} + IMPERATIVE_NT'check an actor dropping ( this is the can't drop what's not ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is carrying the noun' {indent: 1} {colon_block_command} INVOCATION_NT'if the actor is carrying the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is carrying the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is carrying the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is carrying the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 2} @@ -9519,9 +8599,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {indent: 1} {colon_block_command} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 2} @@ -9529,79 +8607,63 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [haven't] got [regarding the noun][those]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [haven't] got [regarding the noun][those]." ( a )' INVOCATION_NT'"[We] [haven't] got [regarding the noun][those]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [haven't] got [regarding the noun][those]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [haven't] got [regarding the noun][those]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [haven't] got [regarding the noun][those]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor dropping ( this is the can't drop clothes bei' {unit: 2} + IMPERATIVE_NT'check an actor dropping ( this is the can't drop clothes bei' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(first taking [the noun] off)[command clarification bre' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first taking [the noun] off)[command clarification break]"' INVOCATION_NT'"(first taking [the noun] off)[command clarification break]"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first taking [the noun] off)[command clarification break]"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first taking [the noun] off)[command clarification break]"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first taking [the noun] off)[command clarification break]"' {kind: text} INVOCATION_LIST_NT'silently try the actor trying taking off the noun' {indent: 2} INVOCATION_NT'silently try the actor trying taking off the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'actor trying taking off the noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'actor trying taking off the noun' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {indent: 2} {colon_block_command} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor dropping ( this is the can't drop if this exc' {unit: 2} + IMPERATIVE_NT'check an actor dropping ( this is the can't drop if this exc' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the receptacle be the holder of the actor' {indent: 1} INVOCATION_NT'let the receptacle be the holder of the actor' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'receptacle' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'receptacle' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'receptacle' - RVALUE_CONTEXT_NT'holder of the actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'holder of the actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'holder of the actor' INVOCATION_LIST_NT'holder of the actor' INVOCATION_NT'holder of the actor' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the receptacle is a room' {indent: 1} {colon_block_command} INVOCATION_NT'if the receptacle is a room' {phrase invoked: call} - CONDITION_CONTEXT_NT'receptacle is a room' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'receptacle is a room' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'receptacle is a room' {proposition: << kind=room('receptacle') >>} {term: 'receptacle'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 2} @@ -9609,33 +8671,25 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the receptacle provides the property carrying capacity' {colon_block_command} {indent: 1} INVOCATION_NT'if the receptacle provides the property carrying capacity' {phrase invoked: call} - CONDITION_CONTEXT_NT'receptacle provides the property carrying capacity' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'receptacle provides the property carrying capacity' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'receptacle provides the property carrying capacity' {proposition: << provides('receptacle', 'the property carrying capacity') >>} {term: 'receptacle'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the receptacle is a supporter' {colon_block_command} {indent: 2} INVOCATION_NT'if the receptacle is a supporter' {phrase invoked: call} - CONDITION_CONTEXT_NT'receptacle is a supporter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'receptacle is a supporter' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'receptacle is a supporter' {proposition: << kind=supporter('receptacle') >>} {term: 'receptacle'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things on the receptacle is at least the ca' {colon_block_command} {indent: 3} INVOCATION_NT'if the number of things on the receptacle is at least the ca' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of things on the receptacle is at least the carrying ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of things on the receptacle is at least the carrying ' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of things on the receptacle is at least the carrying ' {proposition: << at-least('number of things on the receptacle', 'the carrying capacity of the receptacle') >>} {term: 'number of things on the receptacle'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 4} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 5} {control structure: NOW} @@ -9643,8 +8697,7 @@ ROOT_NT CODE_BLOCK_NT'say "[There] [are] no more room on [the receptacle]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[There] [are] no more room on [the receptacle]." ( a )' INVOCATION_NT'"[There] [are] no more room on [the receptacle]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[There] [are] no more room on [the receptacle]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[There] [are] no more room on [the receptacle]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There] [are] no more room on [the receptacle]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 4} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -9652,25 +8705,19 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the receptacle is a container' {colon_block_command} {indent: 2} INVOCATION_NT'if the receptacle is a container' {phrase invoked: call} - CONDITION_CONTEXT_NT'receptacle is a container' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'receptacle is a container' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'receptacle is a container' {proposition: << kind=container('receptacle') >>} {term: 'receptacle'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things in the receptacle is at least the ca' {colon_block_command} {indent: 3} INVOCATION_NT'if the number of things in the receptacle is at least the ca' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of things in the receptacle is at least the carrying ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of things in the receptacle is at least the carrying ' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of things in the receptacle is at least the carrying ' {proposition: << at-least('number of things in the receptacle', 'the carrying capacity of the receptacle') >>} {term: 'number of things in the receptacle'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 4} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 5} {control structure: NOW} @@ -9678,23 +8725,20 @@ ROOT_NT CODE_BLOCK_NT'say "[There] [are] no more room in [the receptacle]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[There] [are] no more room in [the receptacle]." ( b )' INVOCATION_NT'"[There] [are] no more room in [the receptacle]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[There] [are] no more room in [the receptacle]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[There] [are] no more room in [the receptacle]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There] [are] no more room in [the receptacle]." ( b )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 4} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor dropping ( this is the standard dropping ' {unit: 2} + IMPERATIVE_NT'carry out an actor dropping ( this is the standard dropping ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is in the holder of the actor' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is in the holder of the actor' - RULE_NT'report an actor dropping ( this is the standard report dropp' {unit: 2} + IMPERATIVE_NT'report an actor dropping ( this is the standard report dropp' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -9703,23 +8747,19 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Dropped." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Dropped." ( a )' INVOCATION_NT'"Dropped." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Dropped." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Dropped." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Dropped." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "[The actor] [put] down [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [put] down [the noun]." ( b )' INVOCATION_NT'"[The actor] [put] down [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [put] down [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [put] down [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [put] down [the noun]." ( b )' {kind: text} SENTENCE_NT'putting it on is an action applying to two things' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -9737,34 +8777,28 @@ ROOT_NT PROPER_NOUN_NT'By this action, an actor puts something he is holding on top' {refined} {eval: CONSTANT_NT'By this action, an actor puts something he is holding on top' {kind: text}} - RULE_NT'check an actor putting something on ( this is the convert pu' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the convert pu' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is down or the actor is on the second nou' {colon_block_command} INVOCATION_NT'if the second noun is down or the actor is on the second nou' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is down or the actor is on the second noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is down or the actor is on the second noun' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'second noun is down or the actor is on the second noun' TEST_PROPOSITION_NT'second noun is down' {proposition: << ('second noun' == 'down') >>} {term: 'second noun'} TEST_PROPOSITION_NT'the actor is on the second noun' {proposition: << ('the second noun' == ) >>} {term: 'the actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to the dropping action on the noun' {results_from_splitting} {indent: 1} INVOCATION_NT'convert to the dropping action on the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'dropping action' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} + RVALUE_CONTEXT_NT'dropping action' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} CONSTANT_NT'dropping action' {kind: action name} {action name: dropping}{meaning: {dropping action = MISCELLANEOUS_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is carrying the noun' {colon_block_command} INVOCATION_NT'if the actor is carrying the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is carrying the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is carrying the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is carrying the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 1} @@ -9772,212 +8806,169 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'carry out the implicitly taking activity with the noun' INVOCATION_NT'carry out the implicitly taking activity with the noun' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'implicitly taking' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'implicitly taking' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'implicitly taking' {kind: activity on objects} {activity: implicitly taking}{meaning: {implicitly taking = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is carrying the noun' {colon_block_command} INVOCATION_NT'if the actor is carrying the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is carrying the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is carrying the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is carrying the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'stop the action' INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the noun-cpc be the component parts core of the noun' {indent: 1} INVOCATION_NT'let the noun-cpc be the component parts core of the noun' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'noun-cpc' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'noun-cpc' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'noun-cpc' - RVALUE_CONTEXT_NT'component parts core of the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'component parts core of the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'component parts core of the noun' INVOCATION_LIST_NT'component parts core of the noun' INVOCATION_NT'component parts core of the noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_NT'let the second-cpc be the component parts core of the second' {indent: 1} INVOCATION_NT'let the second-cpc be the component parts core of the second' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'second-cpc' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'second-cpc' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'second-cpc' - RVALUE_CONTEXT_NT'component parts core of the second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'component parts core of the second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'component parts core of the second noun' INVOCATION_LIST_NT'component parts core of the second noun' INVOCATION_NT'component parts core of the second noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'second noun' {nonlocal: 'second noun'(var)object}{meaning: {second noun = VARIABLE_MC}} INVOCATION_LIST_NT'let the transfer ceiling be the common ancestor of the noun-' {indent: 1} INVOCATION_NT'let the transfer ceiling be the common ancestor of the noun-' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'transfer ceiling' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'transfer ceiling' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'transfer ceiling' - RVALUE_CONTEXT_NT'common ancestor of the noun-cpc with the second-cpc' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'common ancestor of the noun-cpc with the second-cpc' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'common ancestor of the noun-cpc with the second-cpc' INVOCATION_LIST_NT'common ancestor of the noun-cpc with the second-cpc' INVOCATION_NT'common ancestor of the noun-cpc with the second-cpc' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'noun-cpc' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun-cpc' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'noun-cpc' {local: LV"noun-cpc"-object object} - RVALUE_CONTEXT_NT'second-cpc' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'second-cpc' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'second-cpc' {local: LV"second-cpc"-object object} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the transfer ceiling is the noun-cpc' {colon_block_command} {indent: 1} INVOCATION_NT'if the transfer ceiling is the noun-cpc' {phrase invoked: call} - CONDITION_CONTEXT_NT'transfer ceiling is the noun-cpc' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'transfer ceiling is the noun-cpc' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'transfer ceiling is the noun-cpc' {proposition: << ('transfer ceiling' == 'the noun-cpc') >>} {term: 'transfer ceiling'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [can't put] something on top of itself." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [can't put] something on top of itself." ( a )' INVOCATION_NT'"[We] [can't put] something on top of itself." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [can't put] something on top of itself." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [can't put] something on top of itself." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [can't put] something on top of itself." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a supporter' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun is not a supporter' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is not a supporter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is not a supporter' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is not a supporter' {proposition: << NOT< kind=supporter('second noun') NOT> >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Putting things on [the second noun] [would achieve] not' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Putting things on [the second noun] [would achieve] nothing' INVOCATION_NT'"Putting things on [the second noun] [would achieve] nothing' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Putting things on [the second noun] [would achieve] nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Putting things on [the second noun] [would achieve] nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Putting things on [the second noun] [would achieve] nothing' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(first taking [regarding the noun][them] off)[command c' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first taking [regarding the noun][them] off)[command clari' INVOCATION_NT'"(first taking [regarding the noun][them] off)[command clari' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first taking [regarding the noun][them] off)[command clari' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first taking [regarding the noun][them] off)[command clari' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first taking [regarding the noun][them] off)[command clari' {kind: text} INVOCATION_LIST_NT'silently try the actor trying taking off the noun' {indent: 2} INVOCATION_NT'silently try the actor trying taking off the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'actor trying taking off the noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'actor trying taking off the noun' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {indent: 2} {colon_block_command} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun provides the property carrying capacity' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun provides the property carrying capacity' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun provides the property carrying capacity' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun provides the property carrying capacity' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun provides the property carrying capacity' {proposition: << provides('second noun', 'the property carrying capacity') >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things on the second noun is at least the c' {colon_block_command} {indent: 2} INVOCATION_NT'if the number of things on the second noun is at least the c' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of things on the second noun is at least the carrying' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of things on the second noun is at least the carrying' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of things on the second noun is at least the carrying' {proposition: << at-least('number of things on the second noun', 'the carrying capacity of the second noun') >>} {term: 'number of things on the second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 3} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[There] [are] no more room on [the second noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[There] [are] no more room on [the second noun]." ( a )' INVOCATION_NT'"[There] [are] no more room on [the second noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[There] [are] no more room on [the second noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[There] [are] no more room on [the second noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There] [are] no more room on [the second noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor putting something on ( this is the standa' {unit: 2} + IMPERATIVE_NT'carry out an actor putting something on ( this is the standa' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is on the second noun' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is on the second noun' - RULE_NT'report an actor putting something on ( this is the concise r' {unit: 2} + IMPERATIVE_NT'report an actor putting something on ( this is the concise r' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -9986,9 +8977,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player and the i6 parser is running mult' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player and the i6 parser is running mult' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player and the i6 parser is running multiple ac' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player and the i6 parser is running multiple ac' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'actor is the player and the i6 parser is running multiple ac' TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} TEST_VALUE_NT'the i6 parser is running multiple actions' @@ -9999,21 +8988,18 @@ ROOT_NT CODE_BLOCK_NT'say "Done." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Done." ( a )' INVOCATION_NT'"Done." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Done." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Done." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Done." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor putting something on ( this is the standard ' {unit: 2} + IMPERATIVE_NT'report an actor putting something on ( this is the standard ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -10022,8 +9008,7 @@ ROOT_NT CODE_BLOCK_NT'say "[The actor] [put] [the noun] on [the second noun]." ( a' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [put] [the noun] on [the second noun]." ( a )' INVOCATION_NT'"[The actor] [put] [the noun] on [the second noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [put] [the noun] on [the second noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [put] [the noun] on [the second noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [put] [the noun] on [the second noun]." ( a )' {kind: text} SENTENCE_NT'inserting it into is an action applying to two things' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -10041,34 +9026,28 @@ ROOT_NT PROPER_NOUN_NT'By this action, an actor puts something he is holding into a' {refined} {eval: CONSTANT_NT'By this action, an actor puts something he is holding into a' {kind: text}} - RULE_NT'check an actor inserting something into ( this is the conver' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the conver' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is down or the actor is in the second nou' {colon_block_command} INVOCATION_NT'if the second noun is down or the actor is in the second nou' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is down or the actor is in the second noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is down or the actor is in the second noun' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'second noun is down or the actor is in the second noun' TEST_PROPOSITION_NT'second noun is down' {proposition: << ('second noun' == 'down') >>} {term: 'second noun'} TEST_PROPOSITION_NT'the actor is in the second noun' {proposition: << ('the second noun' == ) >>} {term: 'the actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to the dropping action on the noun' {results_from_splitting} {indent: 1} INVOCATION_NT'convert to the dropping action on the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'dropping action' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} + RVALUE_CONTEXT_NT'dropping action' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} CONSTANT_NT'dropping action' {kind: action name} {action name: dropping}{meaning: {dropping action = MISCELLANEOUS_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is carrying the noun' {colon_block_command} INVOCATION_NT'if the actor is carrying the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is carrying the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is carrying the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is carrying the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 1} @@ -10076,216 +9055,171 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'carry out the implicitly taking activity with the noun' INVOCATION_NT'carry out the implicitly taking activity with the noun' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'implicitly taking' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'implicitly taking' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'implicitly taking' {kind: activity on objects} {activity: implicitly taking}{meaning: {implicitly taking = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is carrying the noun' {colon_block_command} INVOCATION_NT'if the actor is carrying the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is carrying the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is carrying the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is carrying the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'stop the action' INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the noun-cpc be the component parts core of the noun' {indent: 1} INVOCATION_NT'let the noun-cpc be the component parts core of the noun' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'noun-cpc' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'noun-cpc' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'noun-cpc' - RVALUE_CONTEXT_NT'component parts core of the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'component parts core of the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'component parts core of the noun' INVOCATION_LIST_NT'component parts core of the noun' INVOCATION_NT'component parts core of the noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_NT'let the second-cpc be the component parts core of the second' {indent: 1} INVOCATION_NT'let the second-cpc be the component parts core of the second' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'second-cpc' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'second-cpc' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'second-cpc' - RVALUE_CONTEXT_NT'component parts core of the second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'component parts core of the second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'component parts core of the second noun' INVOCATION_LIST_NT'component parts core of the second noun' INVOCATION_NT'component parts core of the second noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'second noun' {nonlocal: 'second noun'(var)object}{meaning: {second noun = VARIABLE_MC}} INVOCATION_LIST_NT'let the transfer ceiling be the common ancestor of the noun-' {indent: 1} INVOCATION_NT'let the transfer ceiling be the common ancestor of the noun-' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'transfer ceiling' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'transfer ceiling' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'transfer ceiling' - RVALUE_CONTEXT_NT'common ancestor of the noun-cpc with the second-cpc' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'common ancestor of the noun-cpc with the second-cpc' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'common ancestor of the noun-cpc with the second-cpc' INVOCATION_LIST_NT'common ancestor of the noun-cpc with the second-cpc' INVOCATION_NT'common ancestor of the noun-cpc with the second-cpc' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'noun-cpc' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun-cpc' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'noun-cpc' {local: LV"noun-cpc"-object object} - RVALUE_CONTEXT_NT'second-cpc' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'second-cpc' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'second-cpc' {local: LV"second-cpc"-object object} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the transfer ceiling is the noun-cpc' {colon_block_command} {indent: 1} INVOCATION_NT'if the transfer ceiling is the noun-cpc' {phrase invoked: call} - CONDITION_CONTEXT_NT'transfer ceiling is the noun-cpc' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'transfer ceiling is the noun-cpc' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'transfer ceiling is the noun-cpc' {proposition: << ('transfer ceiling' == 'the noun-cpc') >>} {term: 'transfer ceiling'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [can't put] something inside itself." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [can't put] something inside itself." ( a )' INVOCATION_NT'"[We] [can't put] something inside itself." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [can't put] something inside itself." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [can't put] something inside itself." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [can't put] something inside itself." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is a closed container' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun is a closed container' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is a closed container' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is a closed container' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is a closed container' {proposition: << kind=container('second noun') ^ closed('second noun') >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The second noun] [are] closed." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The second noun] [are] closed." ( a )' INVOCATION_NT'"[The second noun] [are] closed." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The second noun] [are] closed." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The second noun] [are] closed." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The second noun] [are] closed." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a container' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun is not a container' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is not a container' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is not a container' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is not a container' {proposition: << NOT< kind=container('second noun') NOT> >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the second noun][Those] [can't contain] thin' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the second noun][Those] [can't contain] things."' INVOCATION_NT'"[regarding the second noun][Those] [can't contain] things."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the second noun][Those] [can't contain] things."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the second noun][Those] [can't contain] things."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the second noun][Those] [can't contain] things."' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(first taking [regarding the noun][them] off)[command c' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first taking [regarding the noun][them] off)[command clari' INVOCATION_NT'"(first taking [regarding the noun][them] off)[command clari' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first taking [regarding the noun][them] off)[command clari' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first taking [regarding the noun][them] off)[command clari' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first taking [regarding the noun][them] off)[command clari' {kind: text} INVOCATION_LIST_NT'silently try the actor trying taking off the noun' {indent: 2} INVOCATION_NT'silently try the actor trying taking off the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'actor trying taking off the noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'actor trying taking off the noun' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {indent: 2} {colon_block_command} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun provides the property carrying capacity' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun provides the property carrying capacity' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun provides the property carrying capacity' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun provides the property carrying capacity' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun provides the property carrying capacity' {proposition: << provides('second noun', 'the property carrying capacity') >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things in the second noun is at least the c' {colon_block_command} {indent: 2} INVOCATION_NT'if the number of things in the second noun is at least the c' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of things in the second noun is at least the carrying' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of things in the second noun is at least the carrying' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of things in the second noun is at least the carrying' {proposition: << at-least('number of things in the second noun', 'the carrying capacity of the second noun') >>} {term: 'number of things in the second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 3} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 4} {control structure: NOW} @@ -10293,23 +9227,20 @@ ROOT_NT CODE_BLOCK_NT'say "[There] [are] no more room in [the second noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[There] [are] no more room in [the second noun]." ( a )' INVOCATION_NT'"[There] [are] no more room in [the second noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[There] [are] no more room in [the second noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[There] [are] no more room in [the second noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There] [are] no more room in [the second noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor inserting something into ( this is the st' {unit: 2} + IMPERATIVE_NT'carry out an actor inserting something into ( this is the st' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is in the second noun' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is in the second noun' - RULE_NT'report an actor inserting something into ( this is the conci' {unit: 2} + IMPERATIVE_NT'report an actor inserting something into ( this is the conci' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -10318,9 +9249,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player and the i6 parser is running mult' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player and the i6 parser is running mult' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player and the i6 parser is running multiple ac' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player and the i6 parser is running multiple ac' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'actor is the player and the i6 parser is running multiple ac' TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} TEST_VALUE_NT'the i6 parser is running multiple actions' @@ -10331,21 +9260,18 @@ ROOT_NT CODE_BLOCK_NT'say "Done." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Done." ( a )' INVOCATION_NT'"Done." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Done." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Done." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Done." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor inserting something into ( this is the stand' {unit: 2} + IMPERATIVE_NT'report an actor inserting something into ( this is the stand' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -10354,8 +9280,7 @@ ROOT_NT CODE_BLOCK_NT'say "[The actor] [put] [the noun] into [the second noun]." (' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [put] [the noun] into [the second noun]." ( a )' INVOCATION_NT'"[The actor] [put] [the noun] into [the second noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [put] [the noun] into [the second noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [put] [the noun] into [the second noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [put] [the noun] into [the second noun]." ( a )' {kind: text} SENTENCE_NT'eating is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -10373,14 +9298,12 @@ ROOT_NT PROPER_NOUN_NT'Eating is the only one of the built-in actions which can, in' {refined} {eval: CONSTANT_NT'Eating is the only one of the built-in actions which can, in' {kind: text}} - RULE_NT'check an actor eating ( this is the can't eat unless edible ' {unit: 2} + IMPERATIVE_NT'check an actor eating ( this is the can't eat unless edible ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not a thing or the noun is not edible' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is not a thing or the noun is not edible' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is not a thing or the noun is not edible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is not a thing or the noun is not edible' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'noun is not a thing or the noun is not edible' TEST_PROPOSITION_NT'noun is not a thing' {proposition: << NOT< kind=thing('noun') NOT> >>} {term: 'noun'} TEST_PROPOSITION_NT'the noun is not edible' {proposition: << NOT< edible('the noun') NOT> >>} {term: 'the noun'} @@ -10388,126 +9311,102 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] plainly inedible." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] plainly inedible." ( a )' INVOCATION_NT'"[regarding the noun][They're] plainly inedible." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] plainly inedible." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] plainly inedible." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] plainly inedible." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor eating ( this is the can't eat clothing witho' {unit: 2} + IMPERATIVE_NT'check an actor eating ( this is the can't eat clothing witho' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(first taking [the noun] off)[command clarification bre' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first taking [the noun] off)[command clarification break]"' INVOCATION_NT'"(first taking [the noun] off)[command clarification break]"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first taking [the noun] off)[command clarification break]"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first taking [the noun] off)[command clarification break]"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first taking [the noun] off)[command clarification break]"' {kind: text} INVOCATION_LIST_NT'try the actor trying taking off the noun' {indent: 2} INVOCATION_NT'try the actor trying taking off the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'actor trying taking off the noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'actor trying taking off the noun' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {indent: 2} {colon_block_command} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor eating ( this is the can't eat other people's' {unit: 2} + IMPERATIVE_NT'check an actor eating ( this is the can't eat other people's' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is enclosed by a person ( called the owner ) who' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is enclosed by a person ( called the owner ) who' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is enclosed by a person ( called the owner ) who is not' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is enclosed by a person ( called the owner ) who is not' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is enclosed by a person ( called the owner ) who is not' {proposition: << Exists x : kind=person(x) ^ called='owner':person(x) ^ NOT< (x == 'the actor') NOT> ^ encloses(x, 'noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The owner] [might not appreciate] that." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The owner] [might not appreciate] that." ( a )' INVOCATION_NT'"[The owner] [might not appreciate] that." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The owner] [might not appreciate] that." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The owner] [might not appreciate] that." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The owner] [might not appreciate] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor eating ( this is the can't eat portable food ' {unit: 2} + IMPERATIVE_NT'check an actor eating ( this is the can't eat portable food ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is portable and the actor is not carrying the no' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is portable and the actor is not carrying the no' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is portable and the actor is not carrying the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is portable and the actor is not carrying the noun' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'noun is portable and the actor is not carrying the noun' TEST_PROPOSITION_NT'noun is portable' {proposition: << portable('noun') >>} {term: 'noun'} TEST_PROPOSITION_NT'the actor is not carrying the noun' {proposition: << NOT< ('the actor' == ) NOT> >>} {term: 'the actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'carry out the implicitly taking activity with the noun' {indent: 2} INVOCATION_NT'carry out the implicitly taking activity with the noun' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'implicitly taking' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'implicitly taking' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'implicitly taking' {kind: activity on objects} {activity: implicitly taking}{meaning: {implicitly taking = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not carrying the noun' {indent: 2} {colon_block_command} INVOCATION_NT'if the actor is not carrying the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is not carrying the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is not carrying the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is not carrying the noun' {proposition: << NOT< ('actor' == ) NOT> >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor eating ( this is the standard eating rule' {unit: 2} + IMPERATIVE_NT'carry out an actor eating ( this is the standard eating rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is nowhere' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is nowhere' - RULE_NT'report an actor eating ( this is the standard report eating ' {unit: 2} + IMPERATIVE_NT'report an actor eating ( this is the standard report eating ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -10516,23 +9415,19 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [eat] [the noun]. Not bad." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [eat] [the noun]. Not bad." ( a )' INVOCATION_NT'"[We] [eat] [the noun]. Not bad." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [eat] [the noun]. Not bad." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [eat] [the noun]. Not bad." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [eat] [the noun]. Not bad." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "[The actor] [eat] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [eat] [the noun]." ( b )' INVOCATION_NT'"[The actor] [eat] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [eat] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [eat] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [eat] [the noun]." ( b )' {kind: text} HEADING_NT'section 3 - standard actions which move the actor' {heading 5} {under: H5'section 3 - standard actions which move the actor'} {unit: 2} SENTENCE_NT'going is an action applying to one visible thing' {unit: 2} {classified} @@ -10586,7 +9481,7 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'object' {indefinite 'an' n/m/f nom/acc s} UNPARSED_NOUN_NT'thing gone with ( matched as with )' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'rule for setting action variables for going ( this is the st' {unit: 2} + IMPERATIVE_NT'rule for setting action variables for going ( this is the st' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the thing gone with is the item-pushed-between-rooms' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the thing gone with is the item-pushed-between-rooms' @@ -10595,75 +9490,58 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is in an enterable vehicle ( called the carriag' {indent: 1} {colon_block_command} INVOCATION_NT'if the actor is in an enterable vehicle ( called the carriag' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is in an enterable vehicle ( called the carriage )' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is in an enterable vehicle ( called the carriage )' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is in an enterable vehicle ( called the carriage )' {proposition: << kind=vehicle() ^ enterable() ^ called='carriage':vehicle() >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the vehicle gone by is the carriage' {results_from_splitting} {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the vehicle gone by is the carriage' INVOCATION_LIST_NT'let the target be nothing' {indent: 1} INVOCATION_NT'let the target be nothing' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'target' - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'nothing' {kind: object} {nothing} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a direction' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a direction' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a direction' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a direction' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a direction' {proposition: << kind=direction('noun') >>} {term: 'noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'let direction d be the noun' {indent: 2} INVOCATION_NT'let direction d be the noun' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'direction d' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'direction d' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'direction d' - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_NT'let the target be the room-or-door direction d from the room' {indent: 2} INVOCATION_NT'let the target be the room-or-door direction d from the room' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'target' {local: LV"target"-object object} - RVALUE_CONTEXT_NT'room-or-door direction d from the room gone from' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'room-or-door direction d from the room gone from' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'room-or-door direction d from the room gone from' INVOCATION_LIST_NT'room-or-door direction d from the room gone from' INVOCATION_NT'room-or-door direction d from the room gone from' {phrase invoked: call} {resulting: object} {unproven} RVALUE_CONTEXT_NT'direction d' {token check to do: TEST_VALUE_NT'direction'} {token to be parsed against: TEST_VALUE_NT'direction'} {required: direction} LOCAL_VARIABLE_NT'direction d' {local: LV object} - RVALUE_CONTEXT_NT'room gone from' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'room'} {required: room} + RVALUE_CONTEXT_NT'room gone from' {token check to do: } {token to be parsed against: TEST_VALUE_NT'room'} {required: room} NONLOCAL_VARIABLE_NT'room gone from' {nonlocal: 'room gone from'(var)room} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a door' {indent: 2} {colon_block_command} INVOCATION_NT'if the noun is a door' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a door' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a door' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a door' {proposition: << kind=door('noun') >>} {term: 'noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the target be the noun' {results_from_splitting} {indent: 3} INVOCATION_NT'let the target be the noun' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'target' {local: LV"target"-object object} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the target is a door' {colon_block_command} {indent: 1} INVOCATION_NT'if the target is a door' {phrase invoked: call} - CONDITION_CONTEXT_NT'target is a door' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'target is a door' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'target is a door' {proposition: << kind=door('target') >>} {term: 'target'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the door gone through is the target' {indent: 2} {control structure: NOW} @@ -10672,48 +9550,39 @@ ROOT_NT CONDITION_CONTEXT_NT'the target is the other side of the target from the room gon' INVOCATION_LIST_NT'now the room gone to is the target' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the room gone to is the target' - RULE_NT'check an actor going when the actor is on a supporter ( call' {unit: 2} + IMPERATIVE_NT'check an actor going when the actor is on a supporter ( call' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(first getting off [the chaise])[command clarification ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first getting off [the chaise])[command clarification brea' INVOCATION_NT'"(first getting off [the chaise])[command clarification brea' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first getting off [the chaise])[command clarification brea' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first getting off [the chaise])[command clarification brea' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first getting off [the chaise])[command clarification brea' {kind: text} INVOCATION_LIST_NT'silently try the actor exiting' {indent: 1} INVOCATION_NT'silently try the actor exiting' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor exiting' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'actor exiting' {kind: action} {action pattern: } - RULE_NT'check an actor going ( this is the can't travel in what's no' {unit: 2} + RVALUE_CONTEXT_NT'actor exiting' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'actor exiting' {kind: action} {explicit action: } + IMPERATIVE_NT'check an actor going ( this is the can't travel in what's no' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let nonvehicle be the holder of the actor' {indent: 1} INVOCATION_NT'let nonvehicle be the holder of the actor' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'nonvehicle' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'nonvehicle' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'nonvehicle' - RVALUE_CONTEXT_NT'holder of the actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'holder of the actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'holder of the actor' INVOCATION_LIST_NT'holder of the actor' INVOCATION_NT'holder of the actor' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if nonvehicle is the room gone from' {indent: 1} {colon_block_command} INVOCATION_NT'if nonvehicle is the room gone from' {phrase invoked: call} - CONDITION_CONTEXT_NT'nonvehicle is the room gone from' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'nonvehicle is the room gone from' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'nonvehicle is the room gone from' {proposition: << ('nonvehicle' == 'the room gone from') >>} {term: 'nonvehicle'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 2} @@ -10721,9 +9590,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if nonvehicle is the vehicle gone by' {indent: 1} {colon_block_command} INVOCATION_NT'if nonvehicle is the vehicle gone by' {phrase invoked: call} - CONDITION_CONTEXT_NT'nonvehicle is the vehicle gone by' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'nonvehicle is the vehicle gone by' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'nonvehicle is the vehicle gone by' {proposition: << ('nonvehicle' == 'the vehicle gone by') >>} {term: 'nonvehicle'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 2} @@ -10731,42 +9598,34 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if nonvehicle is a supporter' {colon_block_command} {indent: 2} INVOCATION_NT'if nonvehicle is a supporter' {phrase invoked: call} - CONDITION_CONTEXT_NT'nonvehicle is a supporter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'nonvehicle is a supporter' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'nonvehicle is a supporter' {proposition: << kind=supporter('nonvehicle') >>} {term: 'nonvehicle'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [would have] to get off [the nonvehicle] first." (' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [would have] to get off [the nonvehicle] first." ( a )' INVOCATION_NT'"[We] [would have] to get off [the nonvehicle] first." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [would have] to get off [the nonvehicle] first." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [would have] to get off [the nonvehicle] first." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [would have] to get off [the nonvehicle] first." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "[We] [would have] to get out of [the nonvehicle] first.' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [would have] to get out of [the nonvehicle] first." ( ' INVOCATION_NT'"[We] [would have] to get out of [the nonvehicle] first." ( ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [would have] to get out of [the nonvehicle] first." ( ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [would have] to get out of [the nonvehicle] first." ( ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [would have] to get out of [the nonvehicle] first." ( ' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor going ( this is the can't go through undescri' {unit: 2} + IMPERATIVE_NT'check an actor going ( this is the can't go through undescri' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the door gone through is not nothing and the door gone th' {colon_block_command} {indent: 1} INVOCATION_NT'if the door gone through is not nothing and the door gone th' {phrase invoked: call} - CONDITION_CONTEXT_NT'door gone through is not nothing and the door gone through i' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'door gone through is not nothing and the door gone through i' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'door gone through is not nothing and the door gone through i' TEST_PROPOSITION_NT'door gone through is not nothing' {proposition: << NOT< ('door gone through' == 'nothing') NOT> >>} {term: 'door gone through'} TEST_PROPOSITION_NT'the door gone through is undescribed' {proposition: << undescribed('the door gone through') >>} {term: 'the door gone through'} @@ -10774,27 +9633,22 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [can't go] that way." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [can't go] that way." ( a )' INVOCATION_NT'"[We] [can't go] that way." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [can't go] that way." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [can't go] that way." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [can't go] that way." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor going ( this is the can't go through closed d' {unit: 2} + IMPERATIVE_NT'check an actor going ( this is the can't go through closed d' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the door gone through is not nothing and the door gone th' {colon_block_command} {indent: 1} INVOCATION_NT'if the door gone through is not nothing and the door gone th' {phrase invoked: call} - CONDITION_CONTEXT_NT'door gone through is not nothing and the door gone through i' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'door gone through is not nothing and the door gone through i' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'door gone through is not nothing and the door gone through i' TEST_PROPOSITION_NT'door gone through is not nothing' {proposition: << NOT< ('door gone through' == 'nothing') NOT> >>} {term: 'door gone through'} TEST_PROPOSITION_NT'the door gone through is closed' {proposition: << closed('the door gone through') >>} {term: 'the door gone through'} @@ -10802,199 +9656,158 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(first opening [the door gone through])[command clarifi' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first opening [the door gone through])[command clarificati' INVOCATION_NT'"(first opening [the door gone through])[command clarificati' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first opening [the door gone through])[command clarificati' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first opening [the door gone through])[command clarificati' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first opening [the door gone through])[command clarificati' {kind: text} INVOCATION_LIST_NT'silently try the actor opening the door gone through' {indent: 2} INVOCATION_NT'silently try the actor opening the door gone through' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor opening the door gone through' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'actor opening the door gone through' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'actor opening the door gone through' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'actor opening the door gone through' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the door gone through is open' {indent: 2} {colon_block_command} INVOCATION_NT'if the door gone through is open' {phrase invoked: call} - CONDITION_CONTEXT_NT'door gone through is open' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'door gone through is open' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'door gone through is open' {proposition: << open('door gone through') >>} {term: 'door gone through'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 3} INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor going ( this is the determine map connection ' {unit: 2} + IMPERATIVE_NT'check an actor going ( this is the determine map connection ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the target be nothing' {indent: 1} INVOCATION_NT'let the target be nothing' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'target' - RVALUE_CONTEXT_NT'nothing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'nothing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'nothing' {kind: object} {nothing} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a direction' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a direction' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a direction' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a direction' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a direction' {proposition: << kind=direction('noun') >>} {term: 'noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'let direction d be the noun' {indent: 2} INVOCATION_NT'let direction d be the noun' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'direction d' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'direction d' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'direction d' - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_NT'let the target be the room-or-door direction d from the room' {indent: 2} INVOCATION_NT'let the target be the room-or-door direction d from the room' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'target' {local: LV"target"-object object} - RVALUE_CONTEXT_NT'room-or-door direction d from the room gone from' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'room-or-door direction d from the room gone from' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'room-or-door direction d from the room gone from' INVOCATION_LIST_NT'room-or-door direction d from the room gone from' INVOCATION_NT'room-or-door direction d from the room gone from' {phrase invoked: call} {resulting: object} {unproven} RVALUE_CONTEXT_NT'direction d' {token check to do: TEST_VALUE_NT'direction'} {token to be parsed against: TEST_VALUE_NT'direction'} {required: direction} LOCAL_VARIABLE_NT'direction d' {local: LV object} - RVALUE_CONTEXT_NT'room gone from' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'room'} {required: room} + RVALUE_CONTEXT_NT'room gone from' {token check to do: } {token to be parsed against: TEST_VALUE_NT'room'} {required: room} NONLOCAL_VARIABLE_NT'room gone from' {nonlocal: 'room gone from'(var)room} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a door' {indent: 2} {colon_block_command} INVOCATION_NT'if the noun is a door' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a door' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a door' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a door' {proposition: << kind=door('noun') >>} {term: 'noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the target be the noun' {results_from_splitting} {indent: 3} INVOCATION_NT'let the target be the noun' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'target' {local: LV"target"-object object} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the target is a door' {colon_block_command} {indent: 1} INVOCATION_NT'if the target is a door' {phrase invoked: call} - CONDITION_CONTEXT_NT'target is a door' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'target is a door' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'target is a door' {proposition: << kind=door('target') >>} {term: 'target'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the target is the other side of the target from the room' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the target is the other side of the target from the room gon' INVOCATION_LIST_NT'now the room gone to is the target' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the room gone to is the target' - RULE_NT'check an actor going ( this is the can't go that way rule )' {unit: 2} + IMPERATIVE_NT'check an actor going ( this is the can't go that way rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the room gone to is nothing' {colon_block_command} {indent: 1} INVOCATION_NT'if the room gone to is nothing' {phrase invoked: call} - CONDITION_CONTEXT_NT'room gone to is nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'room gone to is nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'room gone to is nothing' {proposition: << ('room gone to' == 'nothing') >>} {term: 'room gone to'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the door gone through is nothing' {colon_block_command} {indent: 2} INVOCATION_NT'if the door gone through is nothing' {phrase invoked: call} - CONDITION_CONTEXT_NT'door gone through is nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'door gone through is nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'door gone through is nothing' {proposition: << ('door gone through' == 'nothing') >>} {term: 'door gone through'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 3} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [can't go] that way." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [can't go] that way." ( a )' INVOCATION_NT'"[We] [can't go] that way." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [can't go] that way." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [can't go] that way." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [can't go] that way." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [can't], since [the door gone through] [lead] nowh' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [can't], since [the door gone through] [lead] nowhere.' INVOCATION_NT'"[We] [can't], since [the door gone through] [lead] nowhere.' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [can't], since [the door gone through] [lead] nowhere.' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [can't], since [the door gone through] [lead] nowhere.' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [can't], since [the door gone through] [lead] nowhere.' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor going ( this is the move player and vehic' {unit: 2} + IMPERATIVE_NT'carry out an actor going ( this is the move player and vehic' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the vehicle gone by is nothing' {indent: 1} {colon_block_command} INVOCATION_NT'if the vehicle gone by is nothing' {phrase invoked: call} - CONDITION_CONTEXT_NT'vehicle gone by is nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'vehicle gone by is nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'vehicle gone by is nothing' {proposition: << ('vehicle gone by' == 'nothing') >>} {term: 'vehicle gone by'} CODE_BLOCK_NT INVOCATION_LIST_NT'surreptitiously move the actor to the room gone to during go' {results_from_splitting} {indent: 2} INVOCATION_NT'surreptitiously move the actor to the room gone to during go' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} - RVALUE_CONTEXT_NT'room gone to' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'room gone to' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'room gone to' {nonlocal: 'room gone to'(var)object} CODE_BLOCK_NT'otherwise' {results_from_splitting} {indent: 1} {control structure: O} INVOCATION_LIST_NT'surreptitiously move the vehicle gone by to the room gone to' {indent: 2} INVOCATION_NT'surreptitiously move the vehicle gone by to the room gone to' {phrase invoked: call} - RVALUE_CONTEXT_NT'vehicle gone by' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'vehicle gone by' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'vehicle gone by' {nonlocal: 'vehicle gone by'(var)object} - RVALUE_CONTEXT_NT'room gone to' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'room gone to' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'room gone to' {nonlocal: 'room gone to'(var)object} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the location is not the location of the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the location is not the location of the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is not the location of the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is not the location of the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'location is not the location of the player' {proposition: << NOT< ('location' == 'the location of the player') NOT> >>} {term: 'location'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the location is the location of the player' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the location is the location of the player' - RULE_NT'carry out an actor going ( this is the move floating objects' {unit: 2} + IMPERATIVE_NT'carry out an actor going ( this is the move floating objects' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player or the player is within the vehic' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player or the player is within the vehic' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player or the player is within the vehicle gone' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player or the player is within the vehicle gone' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'actor is the player or the player is within the vehicle gone' TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} LOGICAL_OR_NT @@ -11003,14 +9816,12 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'update backdrop positions' {indent: 2} INVOCATION_NT'update backdrop positions' {phrase invoked: call} - RULE_NT'carry out an actor going ( this is the check light in new lo' {unit: 2} + IMPERATIVE_NT'carry out an actor going ( this is the check light in new lo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player or the player is within the vehic' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player or the player is within the vehic' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player or the player is within the vehicle gone' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player or the player is within the vehicle gone' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'actor is the player or the player is within the vehicle gone' TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} LOGICAL_OR_NT @@ -11019,22 +9830,18 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'surreptitiously reckon darkness' {indent: 2} INVOCATION_NT'surreptitiously reckon darkness' {phrase invoked: call} - RULE_NT'report an actor going ( this is the describe room gone into ' {unit: 2} + IMPERATIVE_NT'report an actor going ( this is the describe room gone into ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -11046,17 +9853,13 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a direction' {colon_block_command} {indent: 2} INVOCATION_NT'if the noun is a direction' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a direction' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a direction' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a direction' {proposition: << kind=direction('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the location is the room gone from or the player is withi' {colon_block_command} {indent: 3} INVOCATION_NT'if the location is the room gone from or the player is withi' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is the room gone from or the player is within the v' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is the room gone from or the player is within the v' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'location is the room gone from or the player is within the v' TEST_PROPOSITION_NT'location is the room gone from' {proposition: << ('location' == 'the room gone from') >>} {term: 'location'} LOGICAL_OR_NT @@ -11066,9 +9869,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the room gone from is the room gone to' {colon_block_command} {indent: 4} INVOCATION_NT'if the room gone from is the room gone to' {phrase invoked: call} - CONDITION_CONTEXT_NT'room gone from is the room gone to' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'room gone from is the room gone to' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'room gone from is the room gone to' {proposition: << ('room gone from' == 'the room gone to') >>} {term: 'room gone from'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {indent: 5} @@ -11077,94 +9878,75 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is up' {colon_block_command} {indent: 5} INVOCATION_NT'if the noun is up' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is up' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is up' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is up' {proposition: << ('noun' == 'up') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [go] up" ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [go] up" ( a )' INVOCATION_NT'"[The actor] [go] up" ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [go] up" ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [go] up" ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [go] up" ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is down' {colon_block_command} {indent: 5} INVOCATION_NT'if the noun is down' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is down' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is down' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is down' {proposition: << ('noun' == 'down') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [go] down" ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [go] down" ( b )' INVOCATION_NT'"[The actor] [go] down" ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [go] down" ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [go] down" ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [go] down" ( b )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 5} {control structure: O} CODE_BLOCK_NT'say "[The actor] [go] [noun]" ( c )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [go] [noun]" ( c )' INVOCATION_NT'"[The actor] [go] [noun]" ( c )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [go] [noun]" ( c )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [go] [noun]" ( c )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [go] [noun]" ( c )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 3} {control structure: O} INVOCATION_LIST_NT'let the back way be the opposite of the noun' {indent: 4} INVOCATION_NT'let the back way be the opposite of the noun' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'back way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: direction} {required: value} + NEW_LOCAL_CONTEXT_NT'back way' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: direction} {required: value} UNKNOWN_NT'back way' - RVALUE_CONTEXT_NT'opposite of the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'opposite of the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PROPERTY_VALUE_NT'opposite of the noun' CONSTANT_NT {kind: nothing valued property} {property: 'opposite'=direction}{meaning: {opposite = PROPERTY_MC}} NONLOCAL_VARIABLE_NT'the noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the location is the room gone to' {colon_block_command} {indent: 4} INVOCATION_NT'if the location is the room gone to' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is the room gone to' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is the room gone to' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'location is the room gone to' {proposition: << ('location' == 'the room gone to') >>} {term: 'location'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the room back the other way be the room back way from th' {indent: 5} INVOCATION_NT'let the room back the other way be the room back way from th' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'room back the other way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} + NEW_LOCAL_CONTEXT_NT'room back the other way' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} UNKNOWN_NT'room back the other way' - RVALUE_CONTEXT_NT'room back way from the location' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'room back way from the location' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'room back way from the location' INVOCATION_LIST_NT'room back way from the location' INVOCATION_NT'room back way from the location' {phrase invoked: call} {resulting: room} {unproven} - RVALUE_CONTEXT_NT'back way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'direction'} {required: direction} + RVALUE_CONTEXT_NT'back way' {token check to do: } {token to be parsed against: TEST_VALUE_NT'direction'} {required: direction} LOCAL_VARIABLE_NT'back way' {local: LV direction} RVALUE_CONTEXT_NT'location' {token check to do: TEST_VALUE_NT'room'} {token to be parsed against: TEST_VALUE_NT'room'} {required: room} NONLOCAL_VARIABLE_NT'location' {nonlocal: 'location'(var)object}{meaning: {location = VARIABLE_MC}} INVOCATION_LIST_NT'let the room normally this way be the room noun from the roo' {indent: 5} INVOCATION_NT'let the room normally this way be the room noun from the roo' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'room normally this way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} + NEW_LOCAL_CONTEXT_NT'room normally this way' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} UNKNOWN_NT'room normally this way' - RVALUE_CONTEXT_NT'room noun from the room gone from' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'room noun from the room gone from' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'room noun from the room gone from' INVOCATION_LIST_NT'room noun from the room gone from' INVOCATION_NT'room noun from the room gone from' {phrase invoked: call} {resulting: room} {unproven} RVALUE_CONTEXT_NT'noun' {token check to do: TEST_VALUE_NT'direction'} {token to be parsed against: TEST_VALUE_NT'direction'} {required: direction} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RVALUE_CONTEXT_NT'room gone from' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'room'} {required: room} + RVALUE_CONTEXT_NT'room gone from' {token check to do: } {token to be parsed against: TEST_VALUE_NT'room'} {required: room} NONLOCAL_VARIABLE_NT'room gone from' {nonlocal: 'room gone from'(var)room} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the room back the other way is the room gone from or the ' {colon_block_command} {indent: 5} INVOCATION_NT'if the room back the other way is the room gone from or the ' {phrase invoked: call} - CONDITION_CONTEXT_NT'room back the other way is the room gone from or the room ba' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'room back the other way is the room gone from or the room ba' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'room back the other way is the room gone from or the room ba' TEST_PROPOSITION_NT'room back the other way is the room gone from' {proposition: << ('room back the other way' == 'the room gone from') >>} {term: 'room back the other way'} TEST_PROPOSITION_NT'the room back the other way is the room normally this way' {proposition: << ('the room back the other way' == 'the room normally this way') >>} {term: 'the room back the other way'} @@ -11172,205 +9954,165 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the back way is up' {colon_block_command} {indent: 6} INVOCATION_NT'if the back way is up' {phrase invoked: call} - CONDITION_CONTEXT_NT'back way is up' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'back way is up' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'back way is up' {proposition: << ('back way' == 'up') >>} {term: 'back way'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [arrive] from above" ( d )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [arrive] from above" ( d )' INVOCATION_NT'"[The actor] [arrive] from above" ( d )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [arrive] from above" ( d )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [arrive] from above" ( d )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [arrive] from above" ( d )' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the back way is down' {colon_block_command} {indent: 6} INVOCATION_NT'if the back way is down' {phrase invoked: call} - CONDITION_CONTEXT_NT'back way is down' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'back way is down' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'back way is down' {proposition: << ('back way' == 'down') >>} {term: 'back way'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [arrive] from below" ( e )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [arrive] from below" ( e )' INVOCATION_NT'"[The actor] [arrive] from below" ( e )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [arrive] from below" ( e )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [arrive] from below" ( e )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [arrive] from below" ( e )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 6} {control structure: O} CODE_BLOCK_NT'say "[The actor] [arrive] from [the back way]" ( f )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [arrive] from [the back way]" ( f )' INVOCATION_NT'"[The actor] [arrive] from [the back way]" ( f )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [arrive] from [the back way]" ( f )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [arrive] from [the back way]" ( f )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [arrive] from [the back way]" ( f )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 5} {control structure: O} CODE_BLOCK_NT'say "[The actor] [arrive]" ( g )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [arrive]" ( g )' INVOCATION_NT'"[The actor] [arrive]" ( g )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [arrive]" ( g )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [arrive]" ( g )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [arrive]" ( g )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 4} {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the back way is up' {colon_block_command} {indent: 5} INVOCATION_NT'if the back way is up' {phrase invoked: call} - CONDITION_CONTEXT_NT'back way is up' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'back way is up' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'back way is up' {proposition: << ('back way' == 'up') >>} {term: 'back way'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [arrive] at [the room gone to] from above" ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [arrive] at [the room gone to] from above" ( h ' INVOCATION_NT'"[The actor] [arrive] at [the room gone to] from above" ( h ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [arrive] at [the room gone to] from above" ( h ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [arrive] at [the room gone to] from above" ( h ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [arrive] at [the room gone to] from above" ( h ' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the back way is down' {colon_block_command} {indent: 5} INVOCATION_NT'if the back way is down' {phrase invoked: call} - CONDITION_CONTEXT_NT'back way is down' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'back way is down' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'back way is down' {proposition: << ('back way' == 'down') >>} {term: 'back way'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [arrive] at [the room gone to] from below" ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [arrive] at [the room gone to] from below" ( i ' INVOCATION_NT'"[The actor] [arrive] at [the room gone to] from below" ( i ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [arrive] at [the room gone to] from below" ( i ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [arrive] at [the room gone to] from below" ( i ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [arrive] at [the room gone to] from below" ( i ' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 5} {control structure: O} CODE_BLOCK_NT'say "[The actor] [arrive] at [the room gone to] from [the ba' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [arrive] at [the room gone to] from [the back w' INVOCATION_NT'"[The actor] [arrive] at [the room gone to] from [the back w' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [arrive] at [the room gone to] from [the back w' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [arrive] at [the room gone to] from [the back w' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [arrive] at [the room gone to] from [the back w' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the location is the room gone from' {colon_block_command} {indent: 2} INVOCATION_NT'if the location is the room gone from' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is the room gone from' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is the room gone from' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'location is the room gone from' {proposition: << ('location' == 'the room gone from') >>} {term: 'location'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [go] through [the noun]" ( k )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [go] through [the noun]" ( k )' INVOCATION_NT'"[The actor] [go] through [the noun]" ( k )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [go] through [the noun]" ( k )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [go] through [the noun]" ( k )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [go] through [the noun]" ( k )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "[The actor] [arrive] from [the noun]" ( l )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [arrive] from [the noun]" ( l )' INVOCATION_NT'"[The actor] [arrive] from [the noun]" ( l )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [arrive] from [the noun]" ( l )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [arrive] from [the noun]" ( l )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [arrive] from [the noun]" ( l )' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the vehicle gone by is not nothing' {colon_block_command} {indent: 2} INVOCATION_NT'if the vehicle gone by is not nothing' {phrase invoked: call} - CONDITION_CONTEXT_NT'vehicle gone by is not nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'vehicle gone by is not nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'vehicle gone by is not nothing' {proposition: << NOT< ('vehicle gone by' == 'nothing') NOT> >>} {term: 'vehicle gone by'} CODE_BLOCK_NT CODE_BLOCK_NT'say " "' {control structure: SAY} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the vehicle gone by is a supporter' {colon_block_command} {indent: 3} INVOCATION_NT'if the vehicle gone by is a supporter' {phrase invoked: call} - CONDITION_CONTEXT_NT'vehicle gone by is a supporter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'vehicle gone by is a supporter' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'vehicle gone by is a supporter' {proposition: << kind=supporter('vehicle gone by') >>} {term: 'vehicle gone by'} CODE_BLOCK_NT CODE_BLOCK_NT'say "on [the vehicle gone by]" ( m )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"on [the vehicle gone by]" ( m )' INVOCATION_NT'"on [the vehicle gone by]" ( m )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"on [the vehicle gone by]" ( m )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"on [the vehicle gone by]" ( m )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"on [the vehicle gone by]" ( m )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 3} {control structure: O} CODE_BLOCK_NT'say "in [the vehicle gone by]" ( n )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"in [the vehicle gone by]" ( n )' INVOCATION_NT'"in [the vehicle gone by]" ( n )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"in [the vehicle gone by]" ( n )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"in [the vehicle gone by]" ( n )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"in [the vehicle gone by]" ( n )' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the thing gone with is not nothing' {colon_block_command} {indent: 2} INVOCATION_NT'if the thing gone with is not nothing' {phrase invoked: call} - CONDITION_CONTEXT_NT'thing gone with is not nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'thing gone with is not nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'thing gone with is not nothing' {proposition: << NOT< ('thing gone with' == 'nothing') NOT> >>} {term: 'thing gone with'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is within the thing gone with' {colon_block_command} {indent: 3} INVOCATION_NT'if the player is within the thing gone with' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is within the thing gone with' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is within the thing gone with' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is within the thing gone with' {proposition: << ('the thing gone with' == ) >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say ", pushing [the thing gone with] in front, and [us] alon' {control structure: SAY} INVOCATION_LIST_SAY_NT'", pushing [the thing gone with] in front, and [us] along to' INVOCATION_NT'", pushing [the thing gone with] in front, and [us] along to' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", pushing [the thing gone with] in front, and [us] along to' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", pushing [the thing gone with] in front, and [us] along to' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", pushing [the thing gone with] in front, and [us] along to' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is within the vehicle gone by' {colon_block_command} {indent: 3} INVOCATION_NT'if the player is within the vehicle gone by' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is within the vehicle gone by' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is within the vehicle gone by' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is within the vehicle gone by' {proposition: << ('the vehicle gone by' == ) >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say ", pushing [the thing gone with] in front" ( p )' {control structure: SAY} INVOCATION_LIST_SAY_NT'", pushing [the thing gone with] in front" ( p )' INVOCATION_NT'", pushing [the thing gone with] in front" ( p )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", pushing [the thing gone with] in front" ( p )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", pushing [the thing gone with] in front" ( p )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", pushing [the thing gone with] in front" ( p )' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the location is the room gone from' {colon_block_command} {indent: 3} INVOCATION_NT'if the location is the room gone from' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is the room gone from' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is the room gone from' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'location is the room gone from' {proposition: << ('location' == 'the room gone from') >>} {term: 'location'} CODE_BLOCK_NT CODE_BLOCK_NT'say ", pushing [the thing gone with] away" ( q )' {control structure: SAY} INVOCATION_LIST_SAY_NT'", pushing [the thing gone with] away" ( q )' INVOCATION_NT'", pushing [the thing gone with] away" ( q )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", pushing [the thing gone with] away" ( q )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", pushing [the thing gone with] away" ( q )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", pushing [the thing gone with] away" ( q )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 3} {control structure: O} CODE_BLOCK_NT'say ", pushing [the thing gone with] in" ( r )' {control structure: SAY} INVOCATION_LIST_SAY_NT'", pushing [the thing gone with] in" ( r )' INVOCATION_NT'", pushing [the thing gone with] in" ( r )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", pushing [the thing gone with] in" ( r )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", pushing [the thing gone with] in" ( r )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", pushing [the thing gone with] in" ( r )' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is within the vehicle gone by and the player i' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is within the vehicle gone by and the player i' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is within the vehicle gone by and the player is not w' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is within the vehicle gone by and the player is not w' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'player is within the vehicle gone by and the player is not w' TEST_PROPOSITION_NT'player is within the vehicle gone by' {proposition: << ('the vehicle gone by' == ) >>} {term: 'player'} TEST_PROPOSITION_NT'the player is not within the thing gone with' {proposition: << NOT< ('the thing gone with' == ) NOT> >>} {term: 'the player'} @@ -11378,27 +10120,23 @@ ROOT_NT CODE_BLOCK_NT'say ", taking [us] along" ( s )' {control structure: SAY} INVOCATION_LIST_SAY_NT'", taking [us] along" ( s )' INVOCATION_NT'", taking [us] along" ( s )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", taking [us] along" ( s )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", taking [us] along" ( s )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", taking [us] along" ( s )' {kind: text} CODE_BLOCK_NT'say "."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} INVOCATION_LIST_NT'try looking' {indent: 3} INVOCATION_NT'try looking' {phrase invoked: call} - RVALUE_CONTEXT_NT'looking' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'looking' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'looking' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'looking' {kind: action} {explicit action: } INVOCATION_LIST_NT'continue the action' {indent: 3} INVOCATION_NT'continue the action' {phrase invoked: call} CODE_BLOCK_NT'say "."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} SENTENCE_NT'entering is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -11416,14 +10154,12 @@ ROOT_NT PROPER_NOUN_NT'Whereas the going action allows people to move from one loca' {refined} {eval: CONSTANT_NT'Whereas the going action allows people to move from one loca' {kind: text}} - RULE_NT'rule for supplying a missing noun while entering ( this is t' {unit: 2} + IMPERATIVE_NT'rule for supplying a missing noun while entering ( this is t' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if something enterable ( called the box ) is in the location' {colon_block_command} INVOCATION_NT'if something enterable ( called the box ) is in the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'something enterable ( called the box ) is in the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'something enterable ( called the box ) is in the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'something enterable ( called the box ) is in the location' {proposition: << Exists x : kind=thing_c(x) ^ enterable(x) ^ called='box':thing(x) ^ ('the location' == ) >>} {term: x} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is the box' {results_from_splitting} {indent: 1} {control structure: NOW} @@ -11435,265 +10171,210 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the find what to enter rule' UNPARSED_NOUN_NT'last in the for supplying a missing noun rulebook' - RULE_NT'check an actor entering ( this is the convert enter door int' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the convert enter door int' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a door' {colon_block_command} INVOCATION_NT'if the noun is a door' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a door' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a door' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a door' {proposition: << kind=door('noun') >>} {term: 'noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to the going action on the noun' {results_from_splitting} {indent: 1} INVOCATION_NT'convert to the going action on the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'going action' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} + RVALUE_CONTEXT_NT'going action' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} CONSTANT_NT'going action' {kind: action name} {action name: going}{meaning: {going action = MISCELLANEOUS_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'check an actor entering ( this is the convert enter compass ' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the convert enter compass ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a direction' {colon_block_command} INVOCATION_NT'if the noun is a direction' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a direction' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a direction' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a direction' {proposition: << kind=direction('noun') >>} {term: 'noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to the going action on the noun' {results_from_splitting} {indent: 1} INVOCATION_NT'convert to the going action on the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'going action' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} + RVALUE_CONTEXT_NT'going action' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} CONSTANT_NT'going action' {kind: action name} {action name: going}{meaning: {going action = MISCELLANEOUS_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'check an actor entering ( this is the can't enter what's alr' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the can't enter what's alr' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the noun' {indent: 1} {colon_block_command} INVOCATION_NT'if the actor is the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the noun' {proposition: << ('actor' == 'the noun') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'make no decision' {results_from_splitting} {indent: 2} INVOCATION_NT'make no decision' {phrase invoked: call} INVOCATION_LIST_NT'let the local ceiling be the common ancestor of the actor wi' {indent: 1} INVOCATION_NT'let the local ceiling be the common ancestor of the actor wi' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'local ceiling' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'local ceiling' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'local ceiling' - RVALUE_CONTEXT_NT'common ancestor of the actor with the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'common ancestor of the actor with the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'common ancestor of the actor with the noun' INVOCATION_LIST_NT'common ancestor of the actor with the noun' INVOCATION_NT'common ancestor of the actor with the noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the local ceiling is the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the local ceiling is the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'local ceiling is the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'local ceiling is the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'local ceiling is the noun' {proposition: << ('local ceiling' == 'the noun') >>} {term: 'local ceiling'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a supporter' {colon_block_command} {indent: 3} INVOCATION_NT'if the noun is a supporter' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a supporter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a supporter' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a supporter' {proposition: << kind=supporter('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "But [we]['re] already on [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"But [we]['re] already on [the noun]." ( a )' INVOCATION_NT'"But [we]['re] already on [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"But [we]['re] already on [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"But [we]['re] already on [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"But [we]['re] already on [the noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 3} {control structure: O} CODE_BLOCK_NT'say "But [we]['re] already in [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"But [we]['re] already in [the noun]." ( b )' INVOCATION_NT'"But [we]['re] already in [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"But [we]['re] already in [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"But [we]['re] already in [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"But [we]['re] already in [the noun]." ( b )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor entering ( this is the can't enter what's not' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the can't enter what's not' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not enterable' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is not enterable' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is not enterable' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is not enterable' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is not enterable' {proposition: << NOT< enterable('noun') NOT> >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player's command includes "stand"' {colon_block_command} {indent: 3} INVOCATION_NT'if the player's command includes "stand"' {phrase invoked: call} - CONDITION_CONTEXT_NT'player's command includes "stand"' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player's command includes "stand"' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'player's command includes "stand"' PHRASE_TO_DECIDE_VALUE_NT'player's command includes "stand"' INVOCATION_LIST_NT'player's command includes "stand"' INVOCATION_NT'player's command includes "stand"' {phrase invoked: call} {resulting: truth state} - RVALUE_CONTEXT_NT'player's command' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} + RVALUE_CONTEXT_NT'player's command' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} NONLOCAL_VARIABLE_NT'player's command' {nonlocal: 'player's command'(var)snippet}{meaning: {player's command = VARIABLE_MC}} - RVALUE_CONTEXT_NT'"stand"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a topic'} {required: topic} + RVALUE_CONTEXT_NT'"stand"' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a topic'} {required: topic} CONSTANT_NT'"stand"' {kind: topic} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] not something [we] [can] ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] not something [we] [can] stan' INVOCATION_NT'"[regarding the noun][They're] not something [we] [can] stan' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] not something [we] [can] stan' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] not something [we] [can] stan' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] not something [we] [can] stan' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player's command includes "sit"' {colon_block_command} {indent: 3} INVOCATION_NT'if the player's command includes "sit"' {phrase invoked: call} - CONDITION_CONTEXT_NT'player's command includes "sit"' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player's command includes "sit"' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'player's command includes "sit"' PHRASE_TO_DECIDE_VALUE_NT'player's command includes "sit"' INVOCATION_LIST_NT'player's command includes "sit"' INVOCATION_NT'player's command includes "sit"' {phrase invoked: call} {resulting: truth state} - RVALUE_CONTEXT_NT'player's command' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} + RVALUE_CONTEXT_NT'player's command' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} NONLOCAL_VARIABLE_NT'player's command' {nonlocal: 'player's command'(var)snippet}{meaning: {player's command = VARIABLE_MC}} - RVALUE_CONTEXT_NT'"sit"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a topic'} {required: topic} + RVALUE_CONTEXT_NT'"sit"' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a topic'} {required: topic} CONSTANT_NT'"sit"' {kind: topic} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] not something [we] [can] ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] not something [we] [can] sit ' INVOCATION_NT'"[regarding the noun][They're] not something [we] [can] sit ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] not something [we] [can] sit ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] not something [we] [can] sit ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] not something [we] [can] sit ' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player's command includes "lie"' {colon_block_command} {indent: 3} INVOCATION_NT'if the player's command includes "lie"' {phrase invoked: call} - CONDITION_CONTEXT_NT'player's command includes "lie"' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player's command includes "lie"' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'player's command includes "lie"' PHRASE_TO_DECIDE_VALUE_NT'player's command includes "lie"' INVOCATION_LIST_NT'player's command includes "lie"' INVOCATION_NT'player's command includes "lie"' {phrase invoked: call} {resulting: truth state} - RVALUE_CONTEXT_NT'player's command' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} + RVALUE_CONTEXT_NT'player's command' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} NONLOCAL_VARIABLE_NT'player's command' {nonlocal: 'player's command'(var)snippet}{meaning: {player's command = VARIABLE_MC}} - RVALUE_CONTEXT_NT'"lie"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a topic'} {required: topic} + RVALUE_CONTEXT_NT'"lie"' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a topic'} {required: topic} CONSTANT_NT'"lie"' {kind: topic} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] not something [we] [can] ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] not something [we] [can] lie ' INVOCATION_NT'"[regarding the noun][They're] not something [we] [can] lie ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] not something [we] [can] lie ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] not something [we] [can] lie ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] not something [we] [can] lie ' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 3} {control structure: O} CODE_BLOCK_NT'say "[regarding the noun][They're] not something [we] [can] ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] not something [we] [can] ente' INVOCATION_NT'"[regarding the noun][They're] not something [we] [can] ente' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] not something [we] [can] ente' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] not something [we] [can] ente' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] not something [we] [can] ente' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor entering ( this is the can't enter closed con' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the can't enter closed con' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a closed container' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a closed container' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a closed container' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a closed container' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a closed container' {proposition: << kind=container('noun') ^ closed('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [can't get] into the closed [noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [can't get] into the closed [noun]." ( a )' INVOCATION_NT'"[We] [can't get] into the closed [noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [can't get] into the closed [noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [can't get] into the closed [noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [can't get] into the closed [noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor entering ( this is the can't enter if this ex' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the can't enter if this ex' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property carrying capacity' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun provides the property carrying capacity' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun provides the property carrying capacity' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun provides the property carrying capacity' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun provides the property carrying capacity' {proposition: << provides('noun', 'the property carrying capacity') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a supporter' {colon_block_command} {indent: 2} INVOCATION_NT'if the noun is a supporter' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a supporter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a supporter' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a supporter' {proposition: << kind=supporter('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things on the noun is at least the carrying' {colon_block_command} {indent: 3} INVOCATION_NT'if the number of things on the noun is at least the carrying' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of things on the noun is at least the carrying capaci' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of things on the noun is at least the carrying capaci' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of things on the noun is at least the carrying capaci' {proposition: << at-least('number of things on the noun', 'the carrying capacity of the noun') >>} {term: 'number of things on the noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 4} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 5} {control structure: NOW} @@ -11701,8 +10382,7 @@ ROOT_NT CODE_BLOCK_NT'say "[There] [are] no more room on [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[There] [are] no more room on [the noun]." ( a )' INVOCATION_NT'"[There] [are] no more room on [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[There] [are] no more room on [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[There] [are] no more room on [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There] [are] no more room on [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 4} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -11710,25 +10390,19 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a container' {colon_block_command} {indent: 2} INVOCATION_NT'if the noun is a container' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a container' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a container' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a container' {proposition: << kind=container('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things in the noun is at least the carrying' {colon_block_command} {indent: 3} INVOCATION_NT'if the number of things in the noun is at least the carrying' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of things in the noun is at least the carrying capaci' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of things in the noun is at least the carrying capaci' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of things in the noun is at least the carrying capaci' {proposition: << at-least('number of things in the noun', 'the carrying capacity of the noun') >>} {term: 'number of things in the noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 4} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 5} {control structure: NOW} @@ -11736,116 +10410,91 @@ ROOT_NT CODE_BLOCK_NT'say "[There] [are] no more room in [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[There] [are] no more room in [the noun]." ( b )' INVOCATION_NT'"[There] [are] no more room in [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[There] [are] no more room in [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[There] [are] no more room in [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There] [are] no more room in [the noun]." ( b )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 4} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor entering ( this is the can't enter something ' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the can't enter something ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the local ceiling be the common ancestor of the actor wi' {indent: 1} INVOCATION_NT'let the local ceiling be the common ancestor of the actor wi' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'local ceiling' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'local ceiling' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'local ceiling' - RVALUE_CONTEXT_NT'common ancestor of the actor with the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'common ancestor of the actor with the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'common ancestor of the actor with the noun' INVOCATION_LIST_NT'common ancestor of the actor with the noun' INVOCATION_NT'common ancestor of the actor with the noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the local ceiling is the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the local ceiling is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'local ceiling is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'local ceiling is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'local ceiling is the actor' {proposition: << ('local ceiling' == 'the actor') >>} {term: 'local ceiling'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [can] only get into something free-standing." ( a ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [can] only get into something free-standing." ( a )' INVOCATION_NT'"[We] [can] only get into something free-standing." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [can] only get into something free-standing." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [can] only get into something free-standing." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [can] only get into something free-standing." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor entering ( this is the implicitly pass throug' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the implicitly pass throug' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the actor is the holder of the noun' {indent: 1} {colon_block_command} INVOCATION_NT'if the holder of the actor is the holder of the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the actor is the holder of the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the actor is the holder of the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'holder of the actor is the holder of the noun' {proposition: << ('holder of the actor' == 'the holder of the noun') >>} {term: 'holder of the actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 2} INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'let the local ceiling be the common ancestor of the actor wi' {indent: 1} INVOCATION_NT'let the local ceiling be the common ancestor of the actor wi' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'local ceiling' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'local ceiling' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'local ceiling' - RVALUE_CONTEXT_NT'common ancestor of the actor with the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'common ancestor of the actor with the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'common ancestor of the actor with the noun' INVOCATION_LIST_NT'common ancestor of the actor with the noun' INVOCATION_NT'common ancestor of the actor with the noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: WHI} INVOCATION_LIST_NT'while the holder of the actor is not the local ceiling' {colon_block_command} {indent: 1} INVOCATION_NT'while the holder of the actor is not the local ceiling' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the actor is not the local ceiling' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the actor is not the local ceiling' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'holder of the actor is not the local ceiling' {proposition: << NOT< ('holder of the actor' == 'the local ceiling') NOT> >>} {term: 'holder of the actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the current home be the holder of the actor' {indent: 2} INVOCATION_NT'let the current home be the holder of the actor' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'current home' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'current home' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'current home' - RVALUE_CONTEXT_NT'holder of the actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'holder of the actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'holder of the actor' INVOCATION_LIST_NT'holder of the actor' INVOCATION_NT'holder of the actor' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the current home is a supporter or the current home is an' {colon_block_command} {indent: 3} INVOCATION_NT'if the current home is a supporter or the current home is an' {phrase invoked: call} - CONDITION_CONTEXT_NT'current home is a supporter or the current home is an animal' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'current home is a supporter or the current home is an animal' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'current home is a supporter or the current home is an animal' TEST_PROPOSITION_NT'current home is a supporter' {proposition: << kind=supporter('current home') >>} {term: 'current home'} TEST_PROPOSITION_NT'the current home is an animal' {proposition: << kind=animal('the current home') >>} {term: 'the current home'} @@ -11853,27 +10502,22 @@ ROOT_NT CODE_BLOCK_NT'say "(getting off [the current home])[command clarification ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(getting off [the current home])[command clarification brea' INVOCATION_NT'"(getting off [the current home])[command clarification brea' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(getting off [the current home])[command clarification brea' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(getting off [the current home])[command clarification brea' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(getting off [the current home])[command clarification brea' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 3} {control structure: O} CODE_BLOCK_NT'say "(getting out of [the current home])[command clarificati' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(getting out of [the current home])[command clarification b' INVOCATION_NT'"(getting out of [the current home])[command clarification b' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(getting out of [the current home])[command clarification b' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(getting out of [the current home])[command clarification b' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(getting out of [the current home])[command clarification b' {kind: text} INVOCATION_LIST_NT'silently try the actor trying exiting' {indent: 2} INVOCATION_NT'silently try the actor trying exiting' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor trying exiting' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'actor trying exiting' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'actor trying exiting' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'actor trying exiting' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the actor is the current home' {indent: 2} {colon_block_command} INVOCATION_NT'if the holder of the actor is the current home' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the actor is the current home' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the actor is the current home' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'holder of the actor is the current home' {proposition: << ('holder of the actor' == 'the current home') >>} {term: 'holder of the actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} @@ -11881,9 +10525,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the actor is the noun' {indent: 1} {colon_block_command} INVOCATION_NT'if the holder of the actor is the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the actor is the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the actor is the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'holder of the actor is the noun' {proposition: << ('holder of the actor' == 'the noun') >>} {term: 'holder of the actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 2} @@ -11891,171 +10533,134 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the actor is the holder of the noun' {indent: 1} {colon_block_command} INVOCATION_NT'if the holder of the actor is the holder of the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the actor is the holder of the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the actor is the holder of the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'holder of the actor is the holder of the noun' {proposition: << ('holder of the actor' == 'the holder of the noun') >>} {term: 'holder of the actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 2} INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'let the target be the holder of the noun' {indent: 1} INVOCATION_NT'let the target be the holder of the noun' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'target' - RVALUE_CONTEXT_NT'holder of the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'holder of the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'holder of the noun' INVOCATION_LIST_NT'holder of the noun' INVOCATION_NT'holder of the noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is part of the target' {indent: 1} {colon_block_command} INVOCATION_NT'if the noun is part of the target' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is part of the target' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is part of the target' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is part of the target' {proposition: << ('the target' == <(*1.component_parent) : 'noun'>) >>} {term: 'noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the target be the holder of the target' {results_from_splitting} {indent: 2} INVOCATION_NT'let the target be the holder of the target' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'target' {local: LV"target"-object object} - RVALUE_CONTEXT_NT'holder of the target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'holder of the target' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'holder of the target' INVOCATION_LIST_NT'holder of the target' INVOCATION_NT'holder of the target' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'target' {local: LV"target"-object object} CODE_BLOCK_NT {control structure: WHI} INVOCATION_LIST_NT'while the target is a thing' {colon_block_command} {indent: 1} INVOCATION_NT'while the target is a thing' {phrase invoked: call} - CONDITION_CONTEXT_NT'target is a thing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'target is a thing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'target is a thing' {proposition: << kind=thing('target') >>} {term: 'target'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the target is the local ceiling' {colon_block_command} {indent: 2} INVOCATION_NT'if the holder of the target is the local ceiling' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the target is the local ceiling' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the target is the local ceiling' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'holder of the target is the local ceiling' {proposition: << ('holder of the target' == 'the local ceiling') >>} {term: 'holder of the target'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 3} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the target is a supporter' {colon_block_command} {indent: 4} INVOCATION_NT'if the target is a supporter' {phrase invoked: call} - CONDITION_CONTEXT_NT'target is a supporter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'target is a supporter' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'target is a supporter' {proposition: << kind=supporter('target') >>} {term: 'target'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(getting onto [the target])[command clarification break' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(getting onto [the target])[command clarification break]" (' INVOCATION_NT'"(getting onto [the target])[command clarification break]" (' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(getting onto [the target])[command clarification break]" (' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(getting onto [the target])[command clarification break]" (' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(getting onto [the target])[command clarification break]" (' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the target is a container' {colon_block_command} {indent: 4} INVOCATION_NT'if the target is a container' {phrase invoked: call} - CONDITION_CONTEXT_NT'target is a container' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'target is a container' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'target is a container' {proposition: << kind=container('target') >>} {term: 'target'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(getting into [the target])[command clarification break' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(getting into [the target])[command clarification break]" (' INVOCATION_NT'"(getting into [the target])[command clarification break]" (' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(getting into [the target])[command clarification break]" (' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(getting into [the target])[command clarification break]" (' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(getting into [the target])[command clarification break]" (' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 4} {control structure: O} CODE_BLOCK_NT'say "(entering [the target])[command clarification break]" (' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(entering [the target])[command clarification break]" ( e )' INVOCATION_NT'"(entering [the target])[command clarification break]" ( e )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(entering [the target])[command clarification break]" ( e )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(entering [the target])[command clarification break]" ( e )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(entering [the target])[command clarification break]" ( e )' {kind: text} INVOCATION_LIST_NT'silently try the actor trying entering the target' {indent: 3} INVOCATION_NT'silently try the actor trying entering the target' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor trying entering the target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'actor trying entering the target' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'actor trying entering the target' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'actor trying entering the target' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the actor is not the target' {indent: 3} {colon_block_command} INVOCATION_NT'if the holder of the actor is not the target' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the actor is not the target' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the actor is not the target' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'holder of the actor is not the target' {proposition: << NOT< ('holder of the actor' == 'the target') NOT> >>} {term: 'holder of the actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 4} INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'convert to the entering action on the noun' {indent: 3} INVOCATION_NT'convert to the entering action on the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'entering action' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} + RVALUE_CONTEXT_NT'entering action' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} CONSTANT_NT'entering action' {kind: action name} {action name: entering}{meaning: {entering action = MISCELLANEOUS_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_NT'continue the action' {indent: 3} INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'let the target be the holder of the target' {indent: 2} INVOCATION_NT'let the target be the holder of the target' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'target' {local: LV"target"-object object} - RVALUE_CONTEXT_NT'holder of the target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'holder of the target' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'holder of the target' INVOCATION_LIST_NT'holder of the target' INVOCATION_NT'holder of the target' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'target' {local: LV"target"-object object} - RULE_NT'carry out an actor entering ( this is the standard entering ' {unit: 2} + IMPERATIVE_NT'carry out an actor entering ( this is the standard entering ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'surreptitiously move the actor to the noun' INVOCATION_NT'surreptitiously move the actor to the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'report an actor entering ( this is the standard report enter' {unit: 2} + IMPERATIVE_NT'report an actor entering ( this is the standard report enter' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -12064,62 +10669,51 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a supporter' {colon_block_command} {indent: 3} INVOCATION_NT'if the noun is a supporter' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a supporter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a supporter' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a supporter' {proposition: << kind=supporter('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [get] onto [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [get] onto [the noun]." ( a )' INVOCATION_NT'"[We] [get] onto [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [get] onto [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [get] onto [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [get] onto [the noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 3} {control structure: O} CODE_BLOCK_NT'say "[We] [get] into [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [get] into [the noun]." ( b )' INVOCATION_NT'"[We] [get] into [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [get] into [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [get] into [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [get] into [the noun]." ( b )' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a container' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a container' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a container' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a container' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a container' {proposition: << kind=container('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [get] into [the noun]." ( c )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [get] into [the noun]." ( c )' INVOCATION_NT'"[The actor] [get] into [the noun]." ( c )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [get] into [the noun]." ( c )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [get] into [the noun]." ( c )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [get] into [the noun]." ( c )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [get] onto [the noun]." ( d )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [get] onto [the noun]." ( d )' INVOCATION_NT'"[The actor] [get] onto [the noun]." ( d )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [get] onto [the noun]." ( d )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [get] onto [the noun]." ( d )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [get] onto [the noun]." ( d )' {kind: text} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor entering ( this is the describe contents ent' {unit: 2} + IMPERATIVE_NT'report an actor entering ( this is the describe contents ent' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'describe locale for the noun' {results_from_splitting} {indent: 1} INVOCATION_NT'describe locale for the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} SENTENCE_NT'exiting is an action applying to nothing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -12144,163 +10738,130 @@ ROOT_NT PROPER_NOUN_NT'Whereas the going action allows people to move from one loca' {refined} {eval: CONSTANT_NT'Whereas the going action allows people to move from one loca' {kind: text}} - RULE_NT'setting action variables for exiting' {unit: 2} + IMPERATIVE_NT'setting action variables for exiting' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the container exited from is the holder of the actor' {control structure: NOW} CONDITION_CONTEXT_NT'the container exited from is the holder of the actor' - RULE_NT'check an actor exiting ( this is the convert exit into go ou' {unit: 2} + IMPERATIVE_NT'check an actor exiting ( this is the convert exit into go ou' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the local room be the location of the actor' {indent: 1} INVOCATION_NT'let the local room be the location of the actor' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'local room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} + NEW_LOCAL_CONTEXT_NT'local room' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} UNKNOWN_NT'local room' - RVALUE_CONTEXT_NT'location of the actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'location of the actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'location of the actor' INVOCATION_LIST_NT'location of the actor' INVOCATION_NT'location of the actor' {phrase invoked: call} {resulting: room} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the container exited from is the local room' {colon_block_command} {indent: 1} INVOCATION_NT'if the container exited from is the local room' {phrase invoked: call} - CONDITION_CONTEXT_NT'container exited from is the local room' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'container exited from is the local room' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'container exited from is the local room' {proposition: << ('container exited from' == 'the local room') >>} {term: 'container exited from'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the room-or-door outside from the local room is not nothi' {indent: 2} {colon_block_command} INVOCATION_NT'if the room-or-door outside from the local room is not nothi' {phrase invoked: call} - CONDITION_CONTEXT_NT'room-or-door outside from the local room is not nothing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'room-or-door outside from the local room is not nothing' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'room-or-door outside from the local room is not nothing' {proposition: << NOT< ('room-or-door outside from the local room' == 'nothing') NOT> >>} {term: 'room-or-door outside from the local room'} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to the going action on the outside' {results_from_splitting} {indent: 3} INVOCATION_NT'convert to the going action on the outside' {phrase invoked: call} - RVALUE_CONTEXT_NT'going action' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} + RVALUE_CONTEXT_NT'going action' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} CONSTANT_NT'going action' {kind: action name} {action name: going}{meaning: {going action = MISCELLANEOUS_MC}} - RVALUE_CONTEXT_NT'outside' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'outside' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} CONSTANT_NT'outside' {kind: direction} {instance: I33'outside'} {enumeration: 0} - RULE_NT'check an actor exiting ( this is the can't exit when not ins' {unit: 2} + IMPERATIVE_NT'check an actor exiting ( this is the can't exit when not ins' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the local room be the location of the actor' {indent: 1} INVOCATION_NT'let the local room be the location of the actor' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'local room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} + NEW_LOCAL_CONTEXT_NT'local room' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} UNKNOWN_NT'local room' - RVALUE_CONTEXT_NT'location of the actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'location of the actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'location of the actor' INVOCATION_LIST_NT'location of the actor' INVOCATION_NT'location of the actor' {phrase invoked: call} {resulting: room} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the container exited from is the local room' {colon_block_command} {indent: 1} INVOCATION_NT'if the container exited from is the local room' {phrase invoked: call} - CONDITION_CONTEXT_NT'container exited from is the local room' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'container exited from is the local room' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'container exited from is the local room' {proposition: << ('container exited from' == 'the local room') >>} {term: 'container exited from'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "But [we] [aren't] in anything at the [if story tense is' {control structure: SAY} INVOCATION_LIST_SAY_NT'"But [we] [aren't] in anything at the [if story tense is pre' INVOCATION_NT'"But [we] [aren't] in anything at the [if story tense is pre' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"But [we] [aren't] in anything at the [if story tense is pre' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"But [we] [aren't] in anything at the [if story tense is pre' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"But [we] [aren't] in anything at the [if story tense is pre' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor exiting ( this is the can't exit closed conta' {unit: 2} + IMPERATIVE_NT'check an actor exiting ( this is the can't exit closed conta' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is in a closed container ( called the cage )' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is in a closed container ( called the cage )' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is in a closed container ( called the cage )' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is in a closed container ( called the cage )' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is in a closed container ( called the cage )' {proposition: << kind=container() ^ closed() ^ called='cage':container() >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "You can't get out of the closed [cage]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You can't get out of the closed [cage]." ( a )' INVOCATION_NT'"You can't get out of the closed [cage]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You can't get out of the closed [cage]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You can't get out of the closed [cage]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You can't get out of the closed [cage]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor exiting ( this is the convert exit into get o' {unit: 2} + IMPERATIVE_NT'check an actor exiting ( this is the convert exit into get o' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is on a supporter ( called the platform )' {colon_block_command} INVOCATION_NT'if the actor is on a supporter ( called the platform )' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is on a supporter ( called the platform )' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is on a supporter ( called the platform )' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is on a supporter ( called the platform )' {proposition: << kind=supporter() ^ called='platform':supporter() >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to the getting off action on the platform' {results_from_splitting} {indent: 1} INVOCATION_NT'convert to the getting off action on the platform' {phrase invoked: call} - RVALUE_CONTEXT_NT'getting off action' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} + RVALUE_CONTEXT_NT'getting off action' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} CONSTANT_NT'getting off action' {kind: action name} {action name: getting off}{meaning: {getting off action = MISCELLANEOUS_MC}} - RVALUE_CONTEXT_NT'platform' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'platform' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'platform' {local: LV"platform"-supporter supporter} - RULE_NT'carry out an actor exiting ( this is the standard exiting ru' {unit: 2} + IMPERATIVE_NT'carry out an actor exiting ( this is the standard exiting ru' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the former exterior be the not-counting-parts holder of ' INVOCATION_NT'let the former exterior be the not-counting-parts holder of ' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'former exterior' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'former exterior' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'former exterior' - RVALUE_CONTEXT_NT'not-counting-parts holder of the container exited from' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'not-counting-parts holder of the container exited from' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'not-counting-parts holder of the container exited from' INVOCATION_LIST_NT'not-counting-parts holder of the container exited from' INVOCATION_NT'not-counting-parts holder of the container exited from' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'container exited from' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'container exited from' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'container exited from' {nonlocal: 'container exited from'(var)object} INVOCATION_LIST_NT'surreptitiously move the actor to the former exterior' INVOCATION_NT'surreptitiously move the actor to the former exterior' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} - RVALUE_CONTEXT_NT'former exterior' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'former exterior' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'former exterior' {local: LV"former exterior"-object object} - RULE_NT'report an actor exiting ( this is the standard report exitin' {unit: 2} + IMPERATIVE_NT'report an actor exiting ( this is the standard report exitin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -12309,49 +10870,40 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the container exited from is a supporter' {colon_block_command} {indent: 3} INVOCATION_NT'if the container exited from is a supporter' {phrase invoked: call} - CONDITION_CONTEXT_NT'container exited from is a supporter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'container exited from is a supporter' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'container exited from is a supporter' {proposition: << kind=supporter('container exited from') >>} {term: 'container exited from'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [get] off [the container exited from]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [get] off [the container exited from]." ( a )' INVOCATION_NT'"[We] [get] off [the container exited from]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [get] off [the container exited from]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [get] off [the container exited from]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [get] off [the container exited from]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 3} {control structure: O} CODE_BLOCK_NT'say "[We] [get] out of [the container exited from]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [get] out of [the container exited from]." ( b )' INVOCATION_NT'"[We] [get] out of [the container exited from]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [get] out of [the container exited from]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [get] out of [the container exited from]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [get] out of [the container exited from]." ( b )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "[The actor] [get] out of [the container exited from]." ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [get] out of [the container exited from]." ( c ' INVOCATION_NT'"[The actor] [get] out of [the container exited from]." ( c ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [get] out of [the container exited from]." ( c ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [get] out of [the container exited from]." ( c ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [get] out of [the container exited from]." ( c ' {kind: text} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor exiting ( this is the describe room emerged ' {unit: 2} + IMPERATIVE_NT'report an actor exiting ( this is the describe room emerged ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'surreptitiously reckon darkness' {indent: 2} @@ -12374,14 +10926,12 @@ ROOT_NT PROPER_NOUN_NT'The getting off action is for actors who are currently on to' {refined} {eval: CONSTANT_NT'The getting off action is for actors who are currently on to' {kind: text}} - RULE_NT'check an actor getting off ( this is the can't get off thing' {unit: 2} + IMPERATIVE_NT'check an actor getting off ( this is the can't get off thing' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is on the noun' {indent: 1} {colon_block_command} INVOCATION_NT'if the actor is on the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is on the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is on the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is on the noun' {proposition: << ('the noun' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 2} @@ -12389,9 +10939,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is carried by the noun' {indent: 1} {colon_block_command} INVOCATION_NT'if the actor is carried by the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is carried by the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is carried by the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is carried by the noun' {proposition: << ('the noun' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 2} @@ -12399,50 +10947,40 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "But [we] [aren't] on [the noun] at the [if story tense ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"But [we] [aren't] on [the noun] at the [if story tense is p' INVOCATION_NT'"But [we] [aren't] on [the noun] at the [if story tense is p' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"But [we] [aren't] on [the noun] at the [if story tense is p' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"But [we] [aren't] on [the noun] at the [if story tense is p' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"But [we] [aren't] on [the noun] at the [if story tense is p' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor getting off ( this is the standard gettin' {unit: 2} + IMPERATIVE_NT'carry out an actor getting off ( this is the standard gettin' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the former exterior be the not-counting-parts holder of ' INVOCATION_NT'let the former exterior be the not-counting-parts holder of ' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'former exterior' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'former exterior' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'former exterior' - RVALUE_CONTEXT_NT'not-counting-parts holder of the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'not-counting-parts holder of the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'not-counting-parts holder of the noun' INVOCATION_LIST_NT'not-counting-parts holder of the noun' INVOCATION_NT'not-counting-parts holder of the noun' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_NT'surreptitiously move the actor to the former exterior' INVOCATION_NT'surreptitiously move the actor to the former exterior' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} - RVALUE_CONTEXT_NT'former exterior' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'former exterior' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'former exterior' {local: LV"former exterior"-object object} - RULE_NT'report an actor getting off ( this is the standard report ge' {unit: 2} + IMPERATIVE_NT'report an actor getting off ( this is the standard report ge' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -12451,19 +10989,16 @@ ROOT_NT CODE_BLOCK_NT'say "[The actor] [get] off [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [get] off [the noun]." ( a )' INVOCATION_NT'"[The actor] [get] off [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [get] off [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [get] off [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [get] off [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor getting off ( this is the describe room stoo' {unit: 2} + IMPERATIVE_NT'report an actor getting off ( this is the describe room stoo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'produce a room description with going spacing conventions' {results_from_splitting} {indent: 1} @@ -12513,14 +11048,12 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'object' {indefinite 'an' n/m/f nom/acc s} UNPARSED_NOUN_NT'visibility ceiling' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'setting action variables for looking ( this is the determine' {unit: 2} + IMPERATIVE_NT'setting action variables for looking ( this is the determine' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'calculate visibility ceiling at low level' {results_from_splitting} {indent: 1} @@ -12531,21 +11064,19 @@ ROOT_NT CONDITION_CONTEXT_NT'the visibility ceiling is the visibility ceiling calculated' INVOCATION_LIST_NT'now the room-describing action is the looking action' {control structure: NOW} CONDITION_CONTEXT_NT'the room-describing action is the looking action' - RULE_NT'carry out looking ( this is the declare everything unmention' {unit: 2} + IMPERATIVE_NT'carry out looking ( this is the declare everything unmention' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with item running through things' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with item running through things' {phrase invoked: call} {kind variable declarations: K=thing} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'things' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'things' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'things' {kind: description of things} {proposition: << kind=thing(x) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'now the item is not mentioned' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the item is not mentioned' - RULE_NT'carry out looking ( this is the room description heading rul' {unit: 2} + IMPERATIVE_NT'carry out looking ( this is the room description heading rul' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say bold type' {control structure: SAY} INVOCATION_LIST_SAY_NT'bold type' @@ -12553,98 +11084,78 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the visibility level count is 0' {colon_block_command} {indent: 1} INVOCATION_NT'if the visibility level count is 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'visibility level count is 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'visibility level count is 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'visibility level count is 0' {proposition: << ('visibility level count' == '0') >>} {term: 'visibility level count'} CODE_BLOCK_NT INVOCATION_LIST_NT'begin the printing the name of a dark room activity' {indent: 2} INVOCATION_NT'begin the printing the name of a dark room activity' {phrase invoked: call} - RVALUE_CONTEXT_NT'printing the name of a dark room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} - CONSTANT_NT'printing the name of a dark room' {kind: activity} {activity: printing the name of a dark room}{meaning: {printing the name of a dark room = ACTIVITY_MC}} + RVALUE_CONTEXT_NT'printing the name of a dark room' {token check to do: } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} + CONSTANT_NT'printing the name of a dark room' {kind: activity on objects} {activity: printing the name of a dark room}{meaning: {printing the name of a dark room = ACTIVITY_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if handling the printing the name of a dark room activity' {colon_block_command} {indent: 2} INVOCATION_NT'if handling the printing the name of a dark room activity' {phrase invoked: call} - CONDITION_CONTEXT_NT'handling the printing the name of a dark room activity' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'handling the printing the name of a dark room activity' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'handling the printing the name of a dark room activity' PHRASE_TO_DECIDE_VALUE_NT'handling the printing the name of a dark room activity' INVOCATION_LIST_NT'handling the printing the name of a dark room activity' INVOCATION_NT'handling the printing the name of a dark room activity' {phrase invoked: call} {resulting: truth state} - RVALUE_CONTEXT_NT'printing the name of a dark room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'activity'} {required: activity} - CONSTANT_NT'printing the name of a dark room' {kind: activity} {activity: printing the name of a dark room}{meaning: {printing the name of a dark room = ACTIVITY_MC}} + RVALUE_CONTEXT_NT'printing the name of a dark room' {token check to do: } {token to be parsed against: TEST_VALUE_NT'activity'} {required: activity} + CONSTANT_NT'printing the name of a dark room' {kind: activity on objects} {activity: printing the name of a dark room}{meaning: {printing the name of a dark room = ACTIVITY_MC}} CODE_BLOCK_NT CODE_BLOCK_NT'say "Darkness" ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Darkness" ( a )' INVOCATION_NT'"Darkness" ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Darkness" ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Darkness" ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Darkness" ( a )' {kind: text} INVOCATION_LIST_NT'end the printing the name of a dark room activity' {indent: 2} INVOCATION_NT'end the printing the name of a dark room activity' {phrase invoked: call} - RVALUE_CONTEXT_NT'printing the name of a dark room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} - CONSTANT_NT'printing the name of a dark room' {kind: activity} {activity: printing the name of a dark room}{meaning: {printing the name of a dark room = ACTIVITY_MC}} + RVALUE_CONTEXT_NT'printing the name of a dark room' {token check to do: } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} + CONSTANT_NT'printing the name of a dark room' {kind: activity on objects} {activity: printing the name of a dark room}{meaning: {printing the name of a dark room = ACTIVITY_MC}} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the visibility ceiling is the location' {colon_block_command} {indent: 1} INVOCATION_NT'if the visibility ceiling is the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'visibility ceiling is the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'visibility ceiling is the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'visibility ceiling is the location' {proposition: << ('visibility ceiling' == 'the location') >>} {term: 'visibility ceiling'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[visibility ceiling]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'visibility ceiling' INVOCATION_NT'visibility ceiling' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'visibility ceiling' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'visibility ceiling' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} NONLOCAL_VARIABLE_NT'visibility ceiling' {nonlocal: 'visibility ceiling'(var)object} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The visibility ceiling]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'the visibility ceiling' INVOCATION_NT'the visibility ceiling' {phrase invoked: call} - RVALUE_CONTEXT_NT'visibility ceiling' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'visibility ceiling' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'visibility ceiling' {nonlocal: 'visibility ceiling'(var)object} CODE_BLOCK_NT'say roman type' {control structure: SAY} INVOCATION_LIST_SAY_NT'roman type' INVOCATION_NT'roman type' {phrase invoked: call} INVOCATION_LIST_NT'let intermediate level be the visibility-holder of the actor' {indent: 1} INVOCATION_NT'let intermediate level be the visibility-holder of the actor' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'intermediate level' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'intermediate level' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'intermediate level' - RVALUE_CONTEXT_NT'visibility-holder of the actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'visibility-holder of the actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'visibility-holder of the actor' INVOCATION_LIST_NT'visibility-holder of the actor' INVOCATION_NT'visibility-holder of the actor' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with intermediate level count running from 2 to the v' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with intermediate level count running from 2 to the v' {phrase invoked: call} {kind variable declarations: K=number} - NEW_LOCAL_CONTEXT_NT'intermediate level count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: K} + NEW_LOCAL_CONTEXT_NT'intermediate level count' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: K} UNKNOWN_NT'intermediate level count' - RVALUE_CONTEXT_NT'2' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: arithmetic value} + RVALUE_CONTEXT_NT'2' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: arithmetic value} CONSTANT_NT'2' {kind: number} {explicit literal} {number: 2} - RVALUE_CONTEXT_NT'visibility level count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: arithmetic value} + RVALUE_CONTEXT_NT'visibility level count' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: arithmetic value} NONLOCAL_VARIABLE_NT'visibility level count' {nonlocal: 'visibility level count'(var)number} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the intermediate level is a supporter or the intermediate' {colon_block_command} {indent: 2} INVOCATION_NT'if the intermediate level is a supporter or the intermediate' {phrase invoked: call} - CONDITION_CONTEXT_NT'intermediate level is a supporter or the intermediate level ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'intermediate level is a supporter or the intermediate level ' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'intermediate level is a supporter or the intermediate level ' TEST_PROPOSITION_NT'intermediate level is a supporter' {proposition: << kind=supporter('intermediate level') >>} {term: 'intermediate level'} TEST_PROPOSITION_NT'the intermediate level is an animal' {proposition: << kind=animal('the intermediate level') >>} {term: 'the intermediate level'} @@ -12652,28 +11163,23 @@ ROOT_NT CODE_BLOCK_NT'say " (on [the intermediate level])" ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'" (on [the intermediate level])" ( b )' INVOCATION_NT'" (on [the intermediate level])" ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" (on [the intermediate level])" ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" (on [the intermediate level])" ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" (on [the intermediate level])" ( b )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say " (in [the intermediate level])" ( c )' {control structure: SAY} INVOCATION_LIST_SAY_NT'" (in [the intermediate level])" ( c )' INVOCATION_NT'" (in [the intermediate level])" ( c )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" (in [the intermediate level])" ( c )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" (in [the intermediate level])" ( c )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" (in [the intermediate level])" ( c )' {kind: text} INVOCATION_LIST_NT'let the intermediate level be the visibility-holder of the i' {indent: 2} INVOCATION_NT'let the intermediate level be the visibility-holder of the i' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'intermediate level' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'intermediate level' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'intermediate level' {local: LV"intermediate level"-object object} - RVALUE_CONTEXT_NT'visibility-holder of the intermediate level' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'visibility-holder of the intermediate level' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'visibility-holder of the intermediate level' INVOCATION_LIST_NT'visibility-holder of the intermediate level' INVOCATION_NT'visibility-holder of the intermediate level' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'intermediate level' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'intermediate level' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'intermediate level' {local: LV"intermediate level"-object object} CODE_BLOCK_NT'say line break' {control structure: SAY} INVOCATION_LIST_SAY_NT'line break' @@ -12681,22 +11187,18 @@ ROOT_NT CODE_BLOCK_NT'say run paragraph on with special look spacing' {control structure: SAY} INVOCATION_LIST_SAY_NT'run paragraph on with special look spacing' INVOCATION_NT'run paragraph on with special look spacing' {phrase invoked: call} - RULE_NT'carry out looking ( this is the room description body text r' {unit: 2} + IMPERATIVE_NT'carry out looking ( this is the room description body text r' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the visibility level count is 0' {colon_block_command} {indent: 1} INVOCATION_NT'if the visibility level count is 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'visibility level count is 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'visibility level count is 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'visibility level count is 0' {proposition: << ('visibility level count' == '0') >>} {term: 'visibility level count'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if set to abbreviated room descriptions' {indent: 2} {colon_block_command} INVOCATION_NT'if set to abbreviated room descriptions' {phrase invoked: call} - CONDITION_CONTEXT_NT'set to abbreviated room descriptions' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'set to abbreviated room descriptions' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'set to abbreviated room descriptions' PHRASE_TO_DECIDE_VALUE_NT'set to abbreviated room descriptions' INVOCATION_LIST_NT'set to abbreviated room descriptions' @@ -12707,9 +11209,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if set to sometimes abbreviated room descriptions and abbrev' {indent: 2} {colon_block_command} INVOCATION_NT'if set to sometimes abbreviated room descriptions and abbrev' {phrase invoked: call} - CONDITION_CONTEXT_NT'set to sometimes abbreviated room descriptions and abbreviat' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'set to sometimes abbreviated room descriptions and abbreviat' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'set to sometimes abbreviated room descriptions and abbreviat' TEST_VALUE_NT'set to sometimes abbreviated room descriptions' PHRASE_TO_DECIDE_VALUE_NT'set to sometimes abbreviated room descriptions' @@ -12723,51 +11223,41 @@ ROOT_NT INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'begin the printing the description of a dark room activity' {indent: 2} INVOCATION_NT'begin the printing the description of a dark room activity' {phrase invoked: call} - RVALUE_CONTEXT_NT'printing the description of a dark room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} - CONSTANT_NT'printing the description of a dark room' {kind: activity} {activity: printing the description of a dark room}{meaning: {printing the description of a dark room = ACTIVITY_MC}} + RVALUE_CONTEXT_NT'printing the description of a dark room' {token check to do: } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} + CONSTANT_NT'printing the description of a dark room' {kind: activity on objects} {activity: printing the description of a dark room}{meaning: {printing the description of a dark room = ACTIVITY_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if handling the printing the description of a dark room acti' {colon_block_command} {indent: 2} INVOCATION_NT'if handling the printing the description of a dark room acti' {phrase invoked: call} - CONDITION_CONTEXT_NT'handling the printing the description of a dark room activit' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'handling the printing the description of a dark room activit' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'handling the printing the description of a dark room activit' PHRASE_TO_DECIDE_VALUE_NT'handling the printing the description of a dark room activit' INVOCATION_LIST_NT'handling the printing the description of a dark room activit' INVOCATION_NT'handling the printing the description of a dark room activit' {phrase invoked: call} {resulting: truth state} - RVALUE_CONTEXT_NT'printing the description of a dark room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'activity'} {required: activity} - CONSTANT_NT'printing the description of a dark room' {kind: activity} {activity: printing the description of a dark room}{meaning: {printing the description of a dark room = ACTIVITY_MC}} + RVALUE_CONTEXT_NT'printing the description of a dark room' {token check to do: } {token to be parsed against: TEST_VALUE_NT'activity'} {required: activity} + CONSTANT_NT'printing the description of a dark room' {kind: activity on objects} {activity: printing the description of a dark room}{meaning: {printing the description of a dark room = ACTIVITY_MC}} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is nothing' CODE_BLOCK_NT'say "[It] [are] pitch dark, and [we] [can't see] a thing." (' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[It] [are] pitch dark, and [we] [can't see] a thing." ( a )' INVOCATION_NT'"[It] [are] pitch dark, and [we] [can't see] a thing." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[It] [are] pitch dark, and [we] [can't see] a thing." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[It] [are] pitch dark, and [we] [can't see] a thing." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[It] [are] pitch dark, and [we] [can't see] a thing." ( a )' {kind: text} INVOCATION_LIST_NT'end the printing the description of a dark room activity' {indent: 2} INVOCATION_NT'end the printing the description of a dark room activity' {phrase invoked: call} - RVALUE_CONTEXT_NT'printing the description of a dark room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} - CONSTANT_NT'printing the description of a dark room' {kind: activity} {activity: printing the description of a dark room}{meaning: {printing the description of a dark room = ACTIVITY_MC}} + RVALUE_CONTEXT_NT'printing the description of a dark room' {token check to do: } {token to be parsed against: TEST_VALUE_NT'activity on nothing'} {required: activity} + CONSTANT_NT'printing the description of a dark room' {kind: activity on objects} {activity: printing the description of a dark room}{meaning: {printing the description of a dark room = ACTIVITY_MC}} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the visibility ceiling is the location' {colon_block_command} {indent: 1} INVOCATION_NT'if the visibility ceiling is the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'visibility ceiling is the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'visibility ceiling is the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'visibility ceiling is the location' {proposition: << ('visibility ceiling' == 'the location') >>} {term: 'visibility ceiling'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if set to abbreviated room descriptions' {indent: 2} {colon_block_command} INVOCATION_NT'if set to abbreviated room descriptions' {phrase invoked: call} - CONDITION_CONTEXT_NT'set to abbreviated room descriptions' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'set to abbreviated room descriptions' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'set to abbreviated room descriptions' PHRASE_TO_DECIDE_VALUE_NT'set to abbreviated room descriptions' INVOCATION_LIST_NT'set to abbreviated room descriptions' @@ -12778,9 +11268,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if set to sometimes abbreviated room descriptions and abbrev' {indent: 2} {colon_block_command} INVOCATION_NT'if set to sometimes abbreviated room descriptions and abbrev' {phrase invoked: call} - CONDITION_CONTEXT_NT'set to sometimes abbreviated room descriptions and abbreviat' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'set to sometimes abbreviated room descriptions and abbreviat' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'set to sometimes abbreviated room descriptions and abbreviat' TEST_VALUE_NT'set to sometimes abbreviated room descriptions' PHRASE_TO_DECIDE_VALUE_NT'set to sometimes abbreviated room descriptions' @@ -12794,147 +11282,114 @@ ROOT_NT INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'print the location's description' {indent: 2} INVOCATION_NT'print the location's description' {phrase invoked: call} - RULE_NT'carry out looking ( this is the room description paragraphs ' {unit: 2} + IMPERATIVE_NT'carry out looking ( this is the room description paragraphs ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the visibility level count is greater than 0' {colon_block_command} {indent: 1} INVOCATION_NT'if the visibility level count is greater than 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'visibility level count is greater than 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'visibility level count is greater than 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'visibility level count is greater than 0' {proposition: << greater-than('visibility level count', '0') >>} {term: 'visibility level count'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the intermediate position be the actor' {indent: 2} INVOCATION_NT'let the intermediate position be the actor' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'intermediate position' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: value} + NEW_LOCAL_CONTEXT_NT'intermediate position' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: value} UNKNOWN_NT'intermediate position' - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} INVOCATION_LIST_NT'let the ip count be the visibility level count' {indent: 2} INVOCATION_NT'let the ip count be the visibility level count' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'ip count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'ip count' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'ip count' - RVALUE_CONTEXT_NT'visibility level count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'visibility level count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'visibility level count' {nonlocal: 'visibility level count'(var)number} CODE_BLOCK_NT {control structure: WHI} INVOCATION_LIST_NT'while the ip count is greater than 0' {colon_block_command} {indent: 2} INVOCATION_NT'while the ip count is greater than 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'ip count is greater than 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'ip count is greater than 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'ip count is greater than 0' {proposition: << greater-than('ip count', '0') >>} {term: 'ip count'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the intermediate position is marked for listing' {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'the intermediate position is marked for listing' INVOCATION_LIST_NT'let the intermediate position be the visibility-holder of th' {indent: 3} INVOCATION_NT'let the intermediate position be the visibility-holder of th' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'intermediate position' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'intermediate position' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'intermediate position' {local: LV thing} - RVALUE_CONTEXT_NT'visibility-holder of the intermediate position' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'visibility-holder of the intermediate position' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'visibility-holder of the intermediate position' INVOCATION_LIST_NT'visibility-holder of the intermediate position' INVOCATION_NT'visibility-holder of the intermediate position' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'intermediate position' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'intermediate position' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'intermediate position' {local: LV thing} INVOCATION_LIST_NT'decrease the ip count by 1' {indent: 3} INVOCATION_NT'decrease the ip count by 1' {phrase invoked: call} - LVALUE_CONTEXT_NT'ip count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'ip count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} LOCAL_VARIABLE_NT'ip count' {local: LV number} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} INVOCATION_LIST_NT'let the top-down ip count be the visibility level count' {indent: 2} INVOCATION_NT'let the top-down ip count be the visibility level count' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'top-down ip count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'top-down ip count' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'top-down ip count' - RVALUE_CONTEXT_NT'visibility level count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'visibility level count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'visibility level count' {nonlocal: 'visibility level count'(var)number} CODE_BLOCK_NT {control structure: WHI} INVOCATION_LIST_NT'while the top-down ip count is greater than 0' {colon_block_command} {indent: 2} INVOCATION_NT'while the top-down ip count is greater than 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'top-down ip count is greater than 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'top-down ip count is greater than 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'top-down ip count is greater than 0' {proposition: << greater-than('top-down ip count', '0') >>} {term: 'top-down ip count'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the intermediate position be the actor' {indent: 3} INVOCATION_NT'let the intermediate position be the actor' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'intermediate position' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'intermediate position' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'intermediate position' {local: LV thing} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} INVOCATION_LIST_NT'let the ip count be 0' {indent: 3} INVOCATION_NT'let the ip count be 0' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'ip count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'ip count' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'ip count' {local: LV number} - RVALUE_CONTEXT_NT'0' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'0' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'0' {kind: number} {explicit literal} {number: 0} CODE_BLOCK_NT {control structure: WHI} INVOCATION_LIST_NT'while the ip count is less than the top-down ip count' {colon_block_command} {indent: 3} INVOCATION_NT'while the ip count is less than the top-down ip count' {phrase invoked: call} - CONDITION_CONTEXT_NT'ip count is less than the top-down ip count' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'ip count is less than the top-down ip count' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'ip count is less than the top-down ip count' {proposition: << less-than('ip count', 'the top-down ip count') >>} {term: 'ip count'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the intermediate position be the visibility-holder of th' {indent: 4} INVOCATION_NT'let the intermediate position be the visibility-holder of th' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'intermediate position' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'intermediate position' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'intermediate position' {local: LV thing} - RVALUE_CONTEXT_NT'visibility-holder of the intermediate position' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'visibility-holder of the intermediate position' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'visibility-holder of the intermediate position' INVOCATION_LIST_NT'visibility-holder of the intermediate position' INVOCATION_NT'visibility-holder of the intermediate position' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'intermediate position' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'intermediate position' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'intermediate position' {local: LV thing} INVOCATION_LIST_NT'increase the ip count by 1' {indent: 4} INVOCATION_NT'increase the ip count by 1' {phrase invoked: call} - LVALUE_CONTEXT_NT'ip count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'ip count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} LOCAL_VARIABLE_NT'ip count' {local: LV number} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} INVOCATION_LIST_NT'describe locale for the intermediate position' {indent: 3} INVOCATION_NT'describe locale for the intermediate position' {phrase invoked: call} - RVALUE_CONTEXT_NT'intermediate position' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'intermediate position' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'intermediate position' {local: LV thing} INVOCATION_LIST_NT'decrease the top-down ip count by 1' {indent: 3} INVOCATION_NT'decrease the top-down ip count by 1' {phrase invoked: call} - LVALUE_CONTEXT_NT'top-down ip count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'top-down ip count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} LOCAL_VARIABLE_NT'top-down ip count' {local: LV number} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'carry out looking ( this is the check new arrival rule )' {unit: 2} + IMPERATIVE_NT'carry out looking ( this is the check new arrival rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if in darkness' {colon_block_command} {indent: 1} INVOCATION_NT'if in darkness' {phrase invoked: call} - CONDITION_CONTEXT_NT'in darkness' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'in darkness' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'in darkness' PHRASE_TO_DECIDE_VALUE_NT'in darkness' INVOCATION_LIST_NT'in darkness' @@ -12946,28 +11401,23 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the location is a room' {indent: 2} {colon_block_command} INVOCATION_NT'if the location is a room' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is a room' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is a room' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'location is a room' {proposition: << kind=room('location') >>} {term: 'location'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the location is visited' {results_from_splitting} {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'the location is visited' - RULE_NT'report an actor looking ( this is the other people looking r' {unit: 2} + IMPERATIVE_NT'report an actor looking ( this is the other people looking r' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is not the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is not the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is not the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is not the player' {proposition: << NOT< ('actor' == 'the player') NOT> >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [look] around." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [look] around." ( a )' INVOCATION_NT'"[The actor] [look] around." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [look] around." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [look] around." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [look] around." ( a )' {kind: text} SENTENCE_NT'examining is an action applying to one visible thing and req' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -12992,14 +11442,12 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'truth state' {indefinite 'a' n/m/f nom/acc s} UNPARSED_NOUN_NT'examine text printed' - RULE_NT'carry out examining ( this is the standard examining rule )' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the standard examining rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property description and the descri' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun provides the property description and the descri' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun provides the property description and the description o' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun provides the property description and the description o' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'noun provides the property description and the description o' TEST_PROPOSITION_NT'noun provides the property description' {proposition: << provides('noun', 'the property description') >>} {term: 'noun'} TEST_PROPOSITION_NT'the description of the noun is not ""' {proposition: << NOT< ('the description of the noun' == '""') NOT> >>} {term: 'the description of the noun'} @@ -13007,8 +11455,7 @@ ROOT_NT CODE_BLOCK_NT'say "[description of the noun][line break]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'description of the noun' {suppress_newlines} INVOCATION_NT'description of the noun' {phrase invoked: call} {kind variable declarations: K=text} {save self} - RVALUE_CONTEXT_NT'description of the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'description of the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} PROPERTY_VALUE_NT'description of the noun' {record as self} CONSTANT_NT {kind: nothing valued property} {property: 'description'=text}{meaning: {description = PROPERTY_MC}} NONLOCAL_VARIABLE_NT'the noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} @@ -13016,40 +11463,33 @@ ROOT_NT INVOCATION_NT'line break' {phrase invoked: call} INVOCATION_LIST_NT'now examine text printed is true' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'examine text printed is true' - RULE_NT'carry out examining ( this is the examine directions rule )' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the examine directions rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a direction' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a direction' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a direction' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a direction' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a direction' {proposition: << kind=direction('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [see] nothing unexpected in that direction." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [see] nothing unexpected in that direction." ( a )' INVOCATION_NT'"[We] [see] nothing unexpected in that direction." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [see] nothing unexpected in that direction." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [see] nothing unexpected in that direction." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [see] nothing unexpected in that direction." ( a )' {kind: text} INVOCATION_LIST_NT'now examine text printed is true' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'examine text printed is true' - RULE_NT'carry out examining ( this is the examine containers rule )' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the examine containers rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a container' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a container' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a container' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a container' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a container' {proposition: << kind=container('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is open or the noun is transparent' {colon_block_command} {indent: 2} INVOCATION_NT'if the noun is open or the noun is transparent' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is open or the noun is transparent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is open or the noun is transparent' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'noun is open or the noun is transparent' TEST_PROPOSITION_NT'noun is open' {proposition: << open('noun') >>} {term: 'noun'} TEST_PROPOSITION_NT'the noun is transparent' {proposition: << transparent('the noun') >>} {term: 'the noun'} @@ -13057,9 +11497,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if something described which is not scenery is in the noun a' {colon_block_command} {indent: 3} INVOCATION_NT'if something described which is not scenery is in the noun a' {phrase invoked: call} - CONDITION_CONTEXT_NT'something described which is not scenery is in the noun and ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'something described which is not scenery is in the noun and ' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'something described which is not scenery is in the noun and ' TEST_PROPOSITION_NT'something described which is not scenery is in the noun' {proposition: << Exists x : kind=thing_c(x) ^ described(x) ^ NOT< scenery(x) NOT> ^ ('the noun' == ) >>} {term: x} TEST_PROPOSITION_NT'something which is not the player is in the noun' {proposition: << Exists x : kind=thing_c(x) ^ NOT< (x == 'the player') NOT> ^ ('the noun' == ) >>} {term: x} @@ -13067,19 +11505,16 @@ ROOT_NT CODE_BLOCK_NT'say "In [the noun] " ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"In [the noun] " ( a )' INVOCATION_NT'"In [the noun] " ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"In [the noun] " ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"In [the noun] " ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"In [the noun] " ( a )' {kind: text} INVOCATION_LIST_NT'list the contents of the noun , as a sentence , tersely , no' {indent: 4} INVOCATION_NT'list the contents of the noun' {phrase invoked: call} {phrase options invoked: as a sentence , tersely , not listing concealed items , prefacing with is/are} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT'say "."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} INVOCATION_LIST_NT'now examine text printed is true' {indent: 4} {control structure: NOW} CONDITION_CONTEXT_NT'examine text printed is true' @@ -13087,17 +11522,13 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if examine text printed is false' {colon_block_command} {indent: 3} INVOCATION_NT'if examine text printed is false' {phrase invoked: call} - CONDITION_CONTEXT_NT'examine text printed is false' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'examine text printed is false' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'examine text printed is false' {proposition: << ('examine text printed' == 'false') >>} {term: 'examine text printed'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is in the noun' {colon_block_command} {indent: 4} INVOCATION_NT'if the player is in the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is in the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is in the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is in the noun' {proposition: << ('the noun' == ) >>} {term: 'player'} CODE_BLOCK_NT INVOCATION_LIST_NT'make no decision' {indent: 5} @@ -13105,27 +11536,22 @@ ROOT_NT CODE_BLOCK_NT'say "[The noun] [are] empty." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [are] empty." ( b )' INVOCATION_NT'"[The noun] [are] empty." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [are] empty." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [are] empty." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [are] empty." ( b )' {kind: text} INVOCATION_LIST_NT'now examine text printed is true' {indent: 4} {control structure: NOW} CONDITION_CONTEXT_NT'examine text printed is true' - RULE_NT'carry out examining ( this is the examine supporters rule )' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the examine supporters rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a supporter' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a supporter' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a supporter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a supporter' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a supporter' {proposition: << kind=supporter('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if something described which is not scenery is on the noun a' {colon_block_command} {indent: 2} INVOCATION_NT'if something described which is not scenery is on the noun a' {phrase invoked: call} - CONDITION_CONTEXT_NT'something described which is not scenery is on the noun and ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'something described which is not scenery is on the noun and ' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'something described which is not scenery is on the noun and ' TEST_PROPOSITION_NT'something described which is not scenery is on the noun' {proposition: << Exists x : kind=thing_c(x) ^ described(x) ^ NOT< scenery(x) NOT> ^ ('the noun' == ) >>} {term: x} TEST_PROPOSITION_NT'something which is not the player is on the noun' {proposition: << Exists x : kind=thing_c(x) ^ NOT< (x == 'the player') NOT> ^ ('the noun' == ) >>} {term: x} @@ -13133,71 +11559,59 @@ ROOT_NT CODE_BLOCK_NT'say "On [the noun] " ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"On [the noun] " ( a )' INVOCATION_NT'"On [the noun] " ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"On [the noun] " ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"On [the noun] " ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"On [the noun] " ( a )' {kind: text} INVOCATION_LIST_NT'list the contents of the noun , as a sentence , tersely , no' {indent: 3} INVOCATION_NT'list the contents of the noun' {phrase invoked: call} {phrase options invoked: as a sentence , tersely , not listing concealed items , prefacing with is/are , including contents , giving brief inventory information} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT'say "."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} INVOCATION_LIST_NT'now examine text printed is true' {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'examine text printed is true' - RULE_NT'carry out examining ( this is the examine devices rule )' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the examine devices rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a device' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a device' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a device' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a device' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a device' {proposition: << kind=device('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [are] [if story tense is present tense]curre' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [are] [if story tense is present tense]currently' INVOCATION_NT'"[The noun] [are] [if story tense is present tense]currently' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [are] [if story tense is present tense]currently' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [are] [if story tense is present tense]currently' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [are] [if story tense is present tense]currently' {kind: text} INVOCATION_LIST_NT'now examine text printed is true' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'examine text printed is true' - RULE_NT'carry out examining ( this is the examine undescribed things' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the examine undescribed things' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if examine text printed is false' {colon_block_command} {indent: 1} INVOCATION_NT'if examine text printed is false' {phrase invoked: call} - CONDITION_CONTEXT_NT'examine text printed is false' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'examine text printed is false' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'examine text printed is false' {proposition: << ('examine text printed' == 'false') >>} {term: 'examine text printed'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [see] nothing special about [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [see] nothing special about [the noun]." ( a )' INVOCATION_NT'"[We] [see] nothing special about [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [see] nothing special about [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [see] nothing special about [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [see] nothing special about [the noun]." ( a )' {kind: text} - RULE_NT'report an actor examining ( this is the report other people ' {unit: 2} + IMPERATIVE_NT'report an actor examining ( this is the report other people ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is not the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is not the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is not the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is not the player' {proposition: << NOT< ('actor' == 'the player') NOT> >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [look] closely at [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [look] closely at [the noun]." ( a )' INVOCATION_NT'"[The actor] [look] closely at [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [look] closely at [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [look] closely at [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [look] closely at [the noun]." ( a )' {kind: text} SENTENCE_NT'looking under is an action applying to one visible thing and' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -13215,32 +11629,27 @@ ROOT_NT PROPER_NOUN_NT'The standard Inform world model does not have a concept of t' {refined} {eval: CONSTANT_NT'The standard Inform world model does not have a concept of t' {kind: text}} - RULE_NT'carry out an actor looking under ( this is the standard look' {unit: 2} + IMPERATIVE_NT'carry out an actor looking under ( this is the standard look' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [find] nothing of interest." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [find] nothing of interest." ( a )' INVOCATION_NT'"[We] [find] nothing of interest." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [find] nothing of interest." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [find] nothing of interest." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [find] nothing of interest." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor looking under ( this is the report other peo' {unit: 2} + IMPERATIVE_NT'report an actor looking under ( this is the report other peo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -13249,16 +11658,13 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is not the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is not the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is not the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is not the player' {proposition: << NOT< ('actor' == 'the player') NOT> >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [look] under [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [look] under [the noun]." ( a )' INVOCATION_NT'"[The actor] [look] under [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [look] under [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [look] under [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [look] under [the noun]." ( a )' {kind: text} SENTENCE_NT'searching is an action applying to one thing and requiring l' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -13276,14 +11682,12 @@ ROOT_NT PROPER_NOUN_NT'Searching looks at the contents of an open or transparent co' {refined} {eval: CONSTANT_NT'Searching looks at the contents of an open or transparent co' {kind: text}} - RULE_NT'check an actor searching ( this is the can't search unless c' {unit: 2} + IMPERATIVE_NT'check an actor searching ( this is the can't search unless c' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not a container and the noun is not a support' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is not a container and the noun is not a support' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is not a container and the noun is not a supporter' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is not a container and the noun is not a supporter' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'noun is not a container and the noun is not a supporter' TEST_PROPOSITION_NT'noun is not a container' {proposition: << NOT< kind=container('noun') NOT> >>} {term: 'noun'} TEST_PROPOSITION_NT'the noun is not a supporter' {proposition: << NOT< kind=supporter('the noun') NOT> >>} {term: 'the noun'} @@ -13291,105 +11695,86 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [find] nothing of interest." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [find] nothing of interest." ( a )' INVOCATION_NT'"[We] [find] nothing of interest." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [find] nothing of interest." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [find] nothing of interest." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [find] nothing of interest." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor searching ( this is the can't search closed o' {unit: 2} + IMPERATIVE_NT'check an actor searching ( this is the can't search closed o' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a closed opaque container' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a closed opaque container' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a closed opaque container' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a closed opaque container' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a closed opaque container' {proposition: << kind=container('noun') ^ closed('noun') ^ opaque('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the actor' {proposition: << ('player' == 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [can't see] inside, since [the noun] [are] closed.' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [can't see] inside, since [the noun] [are] closed." ( ' INVOCATION_NT'"[We] [can't see] inside, since [the noun] [are] closed." ( ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [can't see] inside, since [the noun] [are] closed." ( ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [can't see] inside, since [the noun] [are] closed." ( ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [can't see] inside, since [the noun] [are] closed." ( ' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report searching a container ( this is the standard search c' {unit: 2} + IMPERATIVE_NT'report searching a container ( this is the standard search c' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun contains a described thing which is not scenery' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun contains a described thing which is not scenery' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun contains a described thing which is not scenery' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun contains a described thing which is not scenery' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun contains a described thing which is not scenery' {proposition: << Exists x : kind=thing(x) ^ described(x) ^ NOT< scenery(x) NOT> ^ ('noun' == ) >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "In [the noun] " ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"In [the noun] " ( a )' INVOCATION_NT'"In [the noun] " ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"In [the noun] " ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"In [the noun] " ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"In [the noun] " ( a )' {kind: text} INVOCATION_LIST_NT'list the contents of the noun , as a sentence , tersely , no' {indent: 2} INVOCATION_NT'list the contents of the noun' {phrase invoked: call} {phrase options invoked: as a sentence , tersely , not listing concealed items , prefacing with is/are} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT'say "."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The noun] [are] empty." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [are] empty." ( b )' INVOCATION_NT'"[The noun] [are] empty." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [are] empty." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [are] empty." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [are] empty." ( b )' {kind: text} - RULE_NT'report searching a supporter ( this is the standard search s' {unit: 2} + IMPERATIVE_NT'report searching a supporter ( this is the standard search s' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun supports a described thing which is not scenery' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun supports a described thing which is not scenery' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun supports a described thing which is not scenery' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun supports a described thing which is not scenery' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun supports a described thing which is not scenery' {proposition: << Exists x : kind=thing(x) ^ described(x) ^ NOT< scenery(x) NOT> ^ ('noun' == ) >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "On [the noun] " ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"On [the noun] " ( a )' INVOCATION_NT'"On [the noun] " ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"On [the noun] " ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"On [the noun] " ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"On [the noun] " ( a )' {kind: text} INVOCATION_LIST_NT'list the contents of the noun , as a sentence , tersely , no' {indent: 2} INVOCATION_NT'list the contents of the noun' {phrase invoked: call} {phrase options invoked: as a sentence , tersely , not listing concealed items , prefacing with is/are} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT'say "."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 2} {control structure: NOW} @@ -13397,24 +11782,20 @@ ROOT_NT CODE_BLOCK_NT'say "[There] [are] nothing on [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[There] [are] nothing on [the noun]." ( b )' INVOCATION_NT'"[There] [are] nothing on [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[There] [are] nothing on [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[There] [are] nothing on [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There] [are] nothing on [the noun]." ( b )' {kind: text} - RULE_NT'report an actor searching ( this is the report other people ' {unit: 2} + IMPERATIVE_NT'report an actor searching ( this is the report other people ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is not the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is not the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is not the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is not the player' {proposition: << NOT< ('actor' == 'the player') NOT> >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [search] [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [search] [the noun]." ( a )' INVOCATION_NT'"[The actor] [search] [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [search] [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [search] [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [search] [the noun]." ( a )' {kind: text} SENTENCE_NT'consulting it about is an action applying to one thing and o' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -13432,28 +11813,24 @@ ROOT_NT PROPER_NOUN_NT'Consulting is a very flexible and potentially powerful actio' {refined} {eval: CONSTANT_NT'Consulting is a very flexible and potentially powerful actio' {kind: text}} - RULE_NT'report an actor consulting something about ( this is the blo' {unit: 2} + IMPERATIVE_NT'report an actor consulting something about ( this is the blo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [discover] nothing of interest in [the noun]." ( a' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [discover] nothing of interest in [the noun]." ( a )' INVOCATION_NT'"[We] [discover] nothing of interest in [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [discover] nothing of interest in [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [discover] nothing of interest in [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [discover] nothing of interest in [the noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [look] at [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [look] at [the noun]." ( b )' INVOCATION_NT'"[The actor] [look] at [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [look] at [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [look] at [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [look] at [the noun]." ( b )' {kind: text} HEADING_NT'section 5 - standard actions which change the state of thing' {heading 5} {under: H5'section 5 - standard actions which change the state of things'} {unit: 2} SENTENCE_NT'locking it with is an action applying to one thing and one c' {unit: 2} {classified} @@ -13472,14 +11849,12 @@ ROOT_NT PROPER_NOUN_NT'Locking is the act of using an object such as a key to ensur' {refined} {eval: CONSTANT_NT'Locking is the act of using an object such as a key to ensur' {kind: text}} - RULE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} + IMPERATIVE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property lockable and the noun is l' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun provides the property lockable and the noun is l' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun provides the property lockable and the noun is lockable' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun provides the property lockable and the noun is lockable' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'noun provides the property lockable and the noun is lockable' TEST_PROPOSITION_NT'noun provides the property lockable' {proposition: << provides('noun', CONSTANT_NT {kind: either/or property} {property: 'lockable'}) >>} {term: 'noun'} TEST_PROPOSITION_NT'the noun is lockable' {proposition: << lockable('the noun') >>} {term: 'the noun'} @@ -13489,79 +11864,64 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][Those] [don't] seem to be somethin' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][Those] [don't] seem to be something [w' INVOCATION_NT'"[regarding the noun][Those] [don't] seem to be something [w' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][Those] [don't] seem to be something [w' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][Those] [don't] seem to be something [w' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][Those] [don't] seem to be something [w' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} + IMPERATIVE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is locked' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is locked' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is locked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is locked' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is locked' {proposition: << locked('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] locked at the [if story t' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] locked at the [if story tense' INVOCATION_NT'"[regarding the noun][They're] locked at the [if story tense' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] locked at the [if story tense' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] locked at the [if story tense' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] locked at the [if story tense' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} + IMPERATIVE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is open' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is open' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is open' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is open' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is open' {proposition: << open('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "First [we] [would have] to close [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"First [we] [would have] to close [the noun]." ( a )' INVOCATION_NT'"First [we] [would have] to close [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"First [we] [would have] to close [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"First [we] [would have] to close [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"First [we] [would have] to close [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} + IMPERATIVE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the second noun is not the actor or the nou' {colon_block_command} {indent: 1} INVOCATION_NT'if the holder of the second noun is not the actor or the nou' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the second noun is not the actor or the noun does ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the second noun is not the actor or the noun does ' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'holder of the second noun is not the actor or the noun does ' TEST_PROPOSITION_NT'holder of the second noun is not the actor' {proposition: << NOT< ('holder of the second noun' == 'the actor') NOT> >>} {term: 'holder of the second noun'} LOGICAL_OR_NT @@ -13571,39 +11931,32 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the second noun][Those] [don't] seem to fit ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the second noun][Those] [don't] seem to fit the ' INVOCATION_NT'"[regarding the second noun][Those] [don't] seem to fit the ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the second noun][Those] [don't] seem to fit the ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the second noun][Those] [don't] seem to fit the ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the second noun][Those] [don't] seem to fit the ' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor locking something with ( this is the stan' {unit: 2} + IMPERATIVE_NT'carry out an actor locking something with ( this is the stan' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is locked' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is locked' - RULE_NT'report an actor locking something with ( this is the standar' {unit: 2} + IMPERATIVE_NT'report an actor locking something with ( this is the standar' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -13612,23 +11965,19 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [lock] [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [lock] [the noun]." ( a )' INVOCATION_NT'"[We] [lock] [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [lock] [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [lock] [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [lock] [the noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is visible' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is visible' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is visible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is visible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is visible' {proposition: << visible('actor') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [lock] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [lock] [the noun]." ( b )' INVOCATION_NT'"[The actor] [lock] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [lock] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [lock] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [lock] [the noun]." ( b )' {kind: text} SENTENCE_NT'unlocking it with is an action applying to one thing and one' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -13646,14 +11995,12 @@ ROOT_NT PROPER_NOUN_NT'Unlocking undoes the effect of locking, and renders the noun' {refined} {eval: CONSTANT_NT'Unlocking undoes the effect of locking, and renders the noun' {kind: text}} - RULE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property lockable and the noun is l' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun provides the property lockable and the noun is l' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun provides the property lockable and the noun is lockable' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun provides the property lockable and the noun is lockable' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'noun provides the property lockable and the noun is lockable' TEST_PROPOSITION_NT'noun provides the property lockable' {proposition: << provides('noun', CONSTANT_NT {kind: either/or property} {property: 'lockable'}) >>} {term: 'noun'} TEST_PROPOSITION_NT'the noun is lockable' {proposition: << lockable('the noun') >>} {term: 'the noun'} @@ -13663,53 +12010,43 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][Those] [don't] seem to be somethin' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][Those] [don't] seem to be something [w' INVOCATION_NT'"[regarding the noun][Those] [don't] seem to be something [w' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][Those] [don't] seem to be something [w' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][Those] [don't] seem to be something [w' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][Those] [don't] seem to be something [w' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not locked' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is not locked' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is not locked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is not locked' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is not locked' {proposition: << NOT< locked('noun') NOT> >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] unlocked at the [if story' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] unlocked at the [if story ten' INVOCATION_NT'"[regarding the noun][They're] unlocked at the [if story ten' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] unlocked at the [if story ten' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] unlocked at the [if story ten' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] unlocked at the [if story ten' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the second noun is not the actor or the nou' {colon_block_command} {indent: 1} INVOCATION_NT'if the holder of the second noun is not the actor or the nou' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the second noun is not the actor or the noun does ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the second noun is not the actor or the noun does ' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'holder of the second noun is not the actor or the noun does ' TEST_PROPOSITION_NT'holder of the second noun is not the actor' {proposition: << NOT< ('holder of the second noun' == 'the actor') NOT> >>} {term: 'holder of the second noun'} LOGICAL_OR_NT @@ -13719,39 +12056,32 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the second noun][Those] [don't] seem to fit ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the second noun][Those] [don't] seem to fit the ' INVOCATION_NT'"[regarding the second noun][Those] [don't] seem to fit the ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the second noun][Those] [don't] seem to fit the ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the second noun][Those] [don't] seem to fit the ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the second noun][Those] [don't] seem to fit the ' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor unlocking something with ( this is the st' {unit: 2} + IMPERATIVE_NT'carry out an actor unlocking something with ( this is the st' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is not locked' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is not locked' - RULE_NT'report an actor unlocking something with ( this is the stand' {unit: 2} + IMPERATIVE_NT'report an actor unlocking something with ( this is the stand' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -13760,23 +12090,19 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [unlock] [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [unlock] [the noun]." ( a )' INVOCATION_NT'"[We] [unlock] [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [unlock] [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [unlock] [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [unlock] [the noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is visible' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is visible' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is visible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is visible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is visible' {proposition: << visible('actor') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [unlock] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [unlock] [the noun]." ( b )' INVOCATION_NT'"[The actor] [unlock] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [unlock] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [unlock] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [unlock] [the noun]." ( b )' {kind: text} SENTENCE_NT'switching on is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -13794,14 +12120,12 @@ ROOT_NT PROPER_NOUN_NT'The switching on and switching off actions are for the simpl' {refined} {eval: CONSTANT_NT'The switching on and switching off actions are for the simpl' {kind: text}} - RULE_NT'check an actor switching on ( this is the can't switch on un' {unit: 2} + IMPERATIVE_NT'check an actor switching on ( this is the can't switch on un' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property switched on' {indent: 1} {colon_block_command} INVOCATION_NT'if the noun provides the property switched on' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun provides the property switched on' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun provides the property switched on' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun provides the property switched on' {proposition: << provides('noun', CONSTANT_NT {kind: either/or property} {property: 'switched on'=~'switched off'}) >>} {term: 'noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 2} @@ -13809,57 +12133,47 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They] [aren't] something [we] [can' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' INVOCATION_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor switching on ( this is the can't switch on wh' {unit: 2} + IMPERATIVE_NT'check an actor switching on ( this is the can't switch on wh' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is switched on' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is switched on' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is switched on' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is switched on' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is switched on' {proposition: << switched on('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] already on." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] already on." ( a )' INVOCATION_NT'"[regarding the noun][They're] already on." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] already on." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] already on." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] already on." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor switching on ( this is the standard switc' {unit: 2} + IMPERATIVE_NT'carry out an actor switching on ( this is the standard switc' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is switched on' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is switched on' - RULE_NT'report an actor switching on ( this is the standard report s' {unit: 2} + IMPERATIVE_NT'report an actor switching on ( this is the standard report s' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -13868,8 +12182,7 @@ ROOT_NT CODE_BLOCK_NT'say "[The actor] [switch] [the noun] on." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [switch] [the noun] on." ( a )' INVOCATION_NT'"[The actor] [switch] [the noun] on." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [switch] [the noun] on." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [switch] [the noun] on." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [switch] [the noun] on." ( a )' {kind: text} SENTENCE_NT'switching off is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -13887,14 +12200,12 @@ ROOT_NT PROPER_NOUN_NT'The switching off and switching on actions are for the simpl' {refined} {eval: CONSTANT_NT'The switching off and switching on actions are for the simpl' {kind: text}} - RULE_NT'check an actor switching off ( this is the can't switch off ' {unit: 2} + IMPERATIVE_NT'check an actor switching off ( this is the can't switch off ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property switched on' {indent: 1} {colon_block_command} INVOCATION_NT'if the noun provides the property switched on' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun provides the property switched on' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun provides the property switched on' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun provides the property switched on' {proposition: << provides('noun', CONSTANT_NT {kind: either/or property} {property: 'switched on'=~'switched off'}) >>} {term: 'noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 2} @@ -13902,57 +12213,47 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They] [aren't] something [we] [can' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' INVOCATION_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor switching off ( this is the can't switch off ' {unit: 2} + IMPERATIVE_NT'check an actor switching off ( this is the can't switch off ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is switched off' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is switched off' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is switched off' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is switched off' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is switched off' {proposition: << switched off('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] already off." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] already off." ( a )' INVOCATION_NT'"[regarding the noun][They're] already off." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] already off." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] already off." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] already off." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor switching off ( this is the standard swit' {unit: 2} + IMPERATIVE_NT'carry out an actor switching off ( this is the standard swit' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is switched off' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is switched off' - RULE_NT'report an actor switching off ( this is the standard report ' {unit: 2} + IMPERATIVE_NT'report an actor switching off ( this is the standard report ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -13961,8 +12262,7 @@ ROOT_NT CODE_BLOCK_NT'say "[The actor] [switch] [the noun] off." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [switch] [the noun] off." ( a )' INVOCATION_NT'"[The actor] [switch] [the noun] off." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [switch] [the noun] off." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [switch] [the noun] off." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [switch] [the noun] off." ( a )' {kind: text} SENTENCE_NT'opening is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -13980,14 +12280,12 @@ ROOT_NT PROPER_NOUN_NT'Opening makes something no longer a physical barrier. The ac' {refined} {eval: CONSTANT_NT'Opening makes something no longer a physical barrier. The ac' {kind: text}} - RULE_NT'check an actor opening ( this is the can't open unless opena' {unit: 2} + IMPERATIVE_NT'check an actor opening ( this is the can't open unless opena' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property openable and the noun is o' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun provides the property openable and the noun is o' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun provides the property openable and the noun is openable' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun provides the property openable and the noun is openable' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'noun provides the property openable and the noun is openable' TEST_PROPOSITION_NT'noun provides the property openable' {proposition: << provides('noun', CONSTANT_NT {kind: either/or property} {property: 'openable'=~'unopenable'}) >>} {term: 'noun'} TEST_PROPOSITION_NT'the noun is openable' {proposition: << openable('the noun') >>} {term: 'the noun'} @@ -13997,27 +12295,22 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They] [aren't] something [we] [can' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They] [aren't] something [we] [can] op' INVOCATION_NT'"[regarding the noun][They] [aren't] something [we] [can] op' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They] [aren't] something [we] [can] op' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They] [aren't] something [we] [can] op' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They] [aren't] something [we] [can] op' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor opening ( this is the can't open what's locke' {unit: 2} + IMPERATIVE_NT'check an actor opening ( this is the can't open what's locke' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property lockable and the noun is l' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun provides the property lockable and the noun is l' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun provides the property lockable and the noun is locked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun provides the property lockable and the noun is locked' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'noun provides the property lockable and the noun is locked' TEST_PROPOSITION_NT'noun provides the property lockable' {proposition: << provides('noun', CONSTANT_NT {kind: either/or property} {property: 'lockable'}) >>} {term: 'noun'} TEST_PROPOSITION_NT'the noun is locked' {proposition: << locked('the noun') >>} {term: 'the noun'} @@ -14025,57 +12318,47 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They] [seem] to be locked." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They] [seem] to be locked." ( a )' INVOCATION_NT'"[regarding the noun][They] [seem] to be locked." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They] [seem] to be locked." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They] [seem] to be locked." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They] [seem] to be locked." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor opening ( this is the can't open what's alrea' {unit: 2} + IMPERATIVE_NT'check an actor opening ( this is the can't open what's alrea' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is open' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is open' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is open' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is open' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is open' {proposition: << open('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] already open." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] already open." ( a )' INVOCATION_NT'"[regarding the noun][They're] already open." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] already open." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] already open." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] already open." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor opening ( this is the standard opening ru' {unit: 2} + IMPERATIVE_NT'carry out an actor opening ( this is the standard opening ru' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is open' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is open' - RULE_NT'report an actor opening ( this is the reveal any newly visib' {unit: 2} + IMPERATIVE_NT'report an actor opening ( this is the reveal any newly visib' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player and the noun is an opaque contain' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player and the noun is an opaque contain' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player and the noun is an opaque container and ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player and the noun is an opaque container and ' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'actor is the player and the noun is an opaque container and ' TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} LOGICAL_AND_NT @@ -14087,9 +12370,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -14098,46 +12379,37 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 3} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [open] [the noun], revealing " ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [open] [the noun], revealing " ( a )' INVOCATION_NT'"[We] [open] [the noun], revealing " ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [open] [the noun], revealing " ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [open] [the noun], revealing " ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [open] [the noun], revealing " ( a )' {kind: text} INVOCATION_LIST_NT'list the contents of the noun , as a sentence , tersely , no' {indent: 4} INVOCATION_NT'list the contents of the noun' {phrase invoked: call} {phrase options invoked: as a sentence , tersely , not listing concealed items} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT'say "."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor opening ( this is the standard report openin' {unit: 2} + IMPERATIVE_NT'report an actor opening ( this is the standard report openin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -14146,30 +12418,25 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [open] [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [open] [the noun]." ( a )' INVOCATION_NT'"[We] [open] [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [open] [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [open] [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [open] [the noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player can see the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the player can see the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player can see the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player can see the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player can see the actor' {proposition: << can-see('player', 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [open] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [open] [the noun]." ( b )' INVOCATION_NT'"[The actor] [open] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [open] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [open] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [open] [the noun]." ( b )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The noun] [open]." ( c )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [open]." ( c )' INVOCATION_NT'"[The noun] [open]." ( c )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [open]." ( c )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [open]." ( c )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [open]." ( c )' {kind: text} SENTENCE_NT'closing is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -14187,14 +12454,12 @@ ROOT_NT PROPER_NOUN_NT'Closing makes something into a physical barrier. The action ' {refined} {eval: CONSTANT_NT'Closing makes something into a physical barrier. The action ' {kind: text}} - RULE_NT'check an actor closing ( this is the can't close unless open' {unit: 2} + IMPERATIVE_NT'check an actor closing ( this is the can't close unless open' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property openable and the noun is o' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun provides the property openable and the noun is o' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun provides the property openable and the noun is openable' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun provides the property openable and the noun is openable' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'noun provides the property openable and the noun is openable' TEST_PROPOSITION_NT'noun provides the property openable' {proposition: << provides('noun', CONSTANT_NT {kind: either/or property} {property: 'openable'=~'unopenable'}) >>} {term: 'noun'} TEST_PROPOSITION_NT'the noun is openable' {proposition: << openable('the noun') >>} {term: 'the noun'} @@ -14204,65 +12469,53 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They] [aren't] something [we] [can' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They] [aren't] something [we] [can] cl' INVOCATION_NT'"[regarding the noun][They] [aren't] something [we] [can] cl' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They] [aren't] something [we] [can] cl' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They] [aren't] something [we] [can] cl' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They] [aren't] something [we] [can] cl' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor closing ( this is the can't close what's alre' {unit: 2} + IMPERATIVE_NT'check an actor closing ( this is the can't close what's alre' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is closed' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is closed' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is closed' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is closed' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is closed' {proposition: << closed('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They're] already closed." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They're] already closed." ( a )' INVOCATION_NT'"[regarding the noun][They're] already closed." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They're] already closed." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They're] already closed." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They're] already closed." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor closing ( this is the standard closing ru' {unit: 2} + IMPERATIVE_NT'carry out an actor closing ( this is the standard closing ru' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is closed' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is closed' - RULE_NT'report an actor closing ( this is the standard report closin' {unit: 2} + IMPERATIVE_NT'report an actor closing ( this is the standard report closin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -14271,30 +12524,25 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [close] [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [close] [the noun]." ( a )' INVOCATION_NT'"[We] [close] [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [close] [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [close] [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [close] [the noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player can see the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the player can see the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'player can see the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player can see the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player can see the actor' {proposition: << can-see('player', 'the actor') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [close] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [close] [the noun]." ( b )' INVOCATION_NT'"[The actor] [close] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [close] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [close] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [close] [the noun]." ( b )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The noun] [close]." ( c )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [close]." ( c )' INVOCATION_NT'"[The noun] [close]." ( c )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [close]." ( c )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [close]." ( c )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [close]." ( c )' {kind: text} SENTENCE_NT'wearing is an action applying to one carried thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -14312,14 +12560,12 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules give Inform only a simple model of clothi' {refined} {eval: CONSTANT_NT'The Standard Rules give Inform only a simple model of clothi' {kind: text}} - RULE_NT'check an actor wearing ( this is the can't wear what's not c' {unit: 2} + IMPERATIVE_NT'check an actor wearing ( this is the can't wear what's not c' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not a thing or the noun is not wearable' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is not a thing or the noun is not wearable' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is not a thing or the noun is not wearable' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is not a thing or the noun is not wearable' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'noun is not a thing or the noun is not wearable' TEST_PROPOSITION_NT'noun is not a thing' {proposition: << NOT< kind=thing('noun') NOT> >>} {term: 'noun'} TEST_PROPOSITION_NT'the noun is not wearable' {proposition: << NOT< wearable('the noun') NOT> >>} {term: 'the noun'} @@ -14327,91 +12573,74 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [can't wear] [regarding the noun][those]!" ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [can't wear] [regarding the noun][those]!" ( a )' INVOCATION_NT'"[We] [can't wear] [regarding the noun][those]!" ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [can't wear] [regarding the noun][those]!" ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [can't wear] [regarding the noun][those]!" ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [can't wear] [regarding the noun][those]!" ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor wearing ( this is the can't wear what's not h' {unit: 2} + IMPERATIVE_NT'check an actor wearing ( this is the can't wear what's not h' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the noun is not the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the holder of the noun is not the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'holder of the noun is not the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'holder of the noun is not the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'holder of the noun is not the actor' {proposition: << NOT< ('holder of the noun' == 'the actor') NOT> >>} {term: 'holder of the noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [aren't] holding [regarding the noun][those]!" ( a' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [aren't] holding [regarding the noun][those]!" ( a )' INVOCATION_NT'"[We] [aren't] holding [regarding the noun][those]!" ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [aren't] holding [regarding the noun][those]!" ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [aren't] holding [regarding the noun][those]!" ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [aren't] holding [regarding the noun][those]!" ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor wearing ( this is the can't wear what's alrea' {unit: 2} + IMPERATIVE_NT'check an actor wearing ( this is the can't wear what's alrea' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We]['re] already wearing [regarding the noun][those]!"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We]['re] already wearing [regarding the noun][those]!" ( a' INVOCATION_NT'"[We]['re] already wearing [regarding the noun][those]!" ( a' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We]['re] already wearing [regarding the noun][those]!" ( a' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We]['re] already wearing [regarding the noun][those]!" ( a' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We]['re] already wearing [regarding the noun][those]!" ( a' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor wearing ( this is the standard wearing ru' {unit: 2} + IMPERATIVE_NT'carry out an actor wearing ( this is the standard wearing ru' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the actor wears the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the actor wears the noun' - RULE_NT'report an actor wearing ( this is the standard report wearin' {unit: 2} + IMPERATIVE_NT'report an actor wearing ( this is the standard report wearin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -14420,15 +12649,13 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [put] on [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [put] on [the noun]." ( a )' INVOCATION_NT'"[We] [put] on [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [put] on [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [put] on [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [put] on [the noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [put] on [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [put] on [the noun]." ( b )' INVOCATION_NT'"[The actor] [put] on [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [put] on [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [put] on [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [put] on [the noun]." ( b )' {kind: text} SENTENCE_NT'taking off is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -14438,7 +12665,7 @@ ROOT_NT VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 4} UNPARSED_NOUN_NT'taking off action' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'Disrobe' - RULE_NT'does the player mean taking off something worn' {unit: 2} + IMPERATIVE_NT'does the player mean taking off something worn' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it is very likely' SENTENCE_NT'the specification of the taking off action is The Standard R' {unit: 2} {classified} @@ -14449,78 +12676,64 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules give Inform only a simple model of clothi' {refined} {eval: CONSTANT_NT'The Standard Rules give Inform only a simple model of clothi' {kind: text}} - RULE_NT'check an actor taking off ( this is the can't take off what'' {unit: 2} + IMPERATIVE_NT'check an actor taking off ( this is the can't take off what'' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not wearing the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is not wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is not wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is not wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is not wearing the noun' {proposition: << NOT< ('actor' == ) NOT> >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [aren't] wearing [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [aren't] wearing [the noun]." ( a )' INVOCATION_NT'"[We] [aren't] wearing [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [aren't] wearing [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [aren't] wearing [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [aren't] wearing [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking off ( this is the can't exceed carryin' {unit: 2} + IMPERATIVE_NT'check an actor taking off ( this is the can't exceed carryin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things carried by the actor is at least the' {colon_block_command} {indent: 1} INVOCATION_NT'if the number of things carried by the actor is at least the' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of things carried by the actor is at least the carryi' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of things carried by the actor is at least the carryi' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of things carried by the actor is at least the carryi' {proposition: << at-least('number of things carried by the actor', 'the carrying capacity of the actor') >>} {term: 'number of things carried by the actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We]['re] carrying too many things already." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We]['re] carrying too many things already." ( a )' INVOCATION_NT'"[We]['re] carrying too many things already." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We]['re] carrying too many things already." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We]['re] carrying too many things already." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We]['re] carrying too many things already." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor taking off ( this is the standard taking ' {unit: 2} + IMPERATIVE_NT'carry out an actor taking off ( this is the standard taking ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the actor carries the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the actor carries the noun' - RULE_NT'report an actor taking off ( this is the standard report tak' {unit: 2} + IMPERATIVE_NT'report an actor taking off ( this is the standard report tak' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -14529,15 +12742,13 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [take] off [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [take] off [the noun]." ( a )' INVOCATION_NT'"[We] [take] off [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [take] off [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [take] off [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [take] off [the noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [take] off [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [take] off [the noun]." ( b )' INVOCATION_NT'"[The actor] [take] off [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [take] off [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [take] off [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [take] off [the noun]." ( b )' {kind: text} HEADING_NT'section 6 - standard actions concerning other people' {heading 5} {under: H5'section 6 - standard actions concerning other people'} {unit: 2} SENTENCE_NT'giving it to is an action applying to one carried thing and ' {unit: 2} {classified} @@ -14556,206 +12767,168 @@ ROOT_NT PROPER_NOUN_NT'This action is indexed by Inform under 'Actions concerning o' {refined} {eval: CONSTANT_NT'This action is indexed by Inform under 'Actions concerning o' {kind: text}} - RULE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the holder of the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is not the holder of the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is not the holder of the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is not the holder of the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is not the holder of the noun' {proposition: << NOT< ('actor' == 'the holder of the noun') NOT> >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [aren't] holding [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [aren't] holding [the noun]." ( a )' INVOCATION_NT'"[We] [aren't] holding [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [aren't] holding [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [aren't] holding [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [aren't] holding [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the second noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the second noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the second noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the second noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the second noun' {proposition: << ('actor' == 'the second noun') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [can't give] [the noun] to [ourselves]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [can't give] [the noun] to [ourselves]." ( a )' INVOCATION_NT'"[We] [can't give] [the noun] to [ourselves]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [can't give] [the noun] to [ourselves]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [can't give] [the noun] to [ourselves]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [can't give] [the noun] to [ourselves]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a person' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun is not a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is not a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is not a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is not a person' {proposition: << NOT< kind=person('second noun') NOT> >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The second noun] [aren't] able to receive things." ( a' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The second noun] [aren't] able to receive things." ( a )' INVOCATION_NT'"[The second noun] [aren't] able to receive things." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The second noun] [aren't] able to receive things." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The second noun] [aren't] able to receive things." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The second noun] [aren't] able to receive things." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(first taking [the noun] off)[command clarification bre' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first taking [the noun] off)[command clarification break]"' INVOCATION_NT'"(first taking [the noun] off)[command clarification break]"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first taking [the noun] off)[command clarification break]"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first taking [the noun] off)[command clarification break]"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first taking [the noun] off)[command clarification break]"' {kind: text} INVOCATION_LIST_NT'silently try the actor trying taking off the noun' {indent: 2} INVOCATION_NT'silently try the actor trying taking off the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'actor trying taking off the noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'actor trying taking off the noun' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {indent: 2} {colon_block_command} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor giving something to ( this is the block givin' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the block givin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The second noun] [don't] seem interested." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The second noun] [don't] seem interested." ( a )' INVOCATION_NT'"[The second noun] [don't] seem interested." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The second noun] [don't] seem interested." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The second noun] [don't] seem interested." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The second noun] [don't] seem interested." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor giving something to ( this is the can't excee' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the can't excee' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things carried by the second noun is at lea' {colon_block_command} {indent: 1} INVOCATION_NT'if the number of things carried by the second noun is at lea' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of things carried by the second noun is at least the ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of things carried by the second noun is at least the ' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of things carried by the second noun is at least the ' {proposition: << at-least('number of things carried by the second noun', 'the carrying capacity of the second noun') >>} {term: 'number of things carried by the second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The second noun] [are] carrying too many things alread' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The second noun] [are] carrying too many things already." ' INVOCATION_NT'"[The second noun] [are] carrying too many things already." ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The second noun] [are] carrying too many things already." ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The second noun] [are] carrying too many things already." ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The second noun] [are] carrying too many things already." ' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor giving something to ( this is the standar' {unit: 2} + IMPERATIVE_NT'carry out an actor giving something to ( this is the standar' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'move the noun to the second noun' INVOCATION_NT'move the noun to the second noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RVALUE_CONTEXT_NT'second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'second noun' {nonlocal: 'second noun'(var)object}{meaning: {second noun = VARIABLE_MC}} - RULE_NT'report an actor giving something to ( this is the standard r' {unit: 2} + IMPERATIVE_NT'report an actor giving something to ( this is the standard r' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [give] [the noun] to [the second noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [give] [the noun] to [the second noun]." ( a )' INVOCATION_NT'"[We] [give] [the noun] to [the second noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [give] [the noun] to [the second noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [give] [the noun] to [the second noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [give] [the noun] to [the second noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is the player' {proposition: << ('second noun' == 'the player') >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [give] [the noun] to [us]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [give] [the noun] to [us]." ( b )' INVOCATION_NT'"[The actor] [give] [the noun] to [us]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [give] [the noun] to [us]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [give] [the noun] to [us]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [give] [the noun] to [us]." ( b )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [give] [the noun] to [the second noun]." ( ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [give] [the noun] to [the second noun]." ( c )' INVOCATION_NT'"[The actor] [give] [the noun] to [the second noun]." ( c )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [give] [the noun] to [the second noun]." ( c )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [give] [the noun] to [the second noun]." ( c )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [give] [the noun] to [the second noun]." ( c )' {kind: text} SENTENCE_NT'showing it to is an action applying to one carried thing and' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -14773,65 +12946,53 @@ ROOT_NT PROPER_NOUN_NT'Anyone can show anyone else something which they are carryin' {refined} {eval: CONSTANT_NT'Anyone can show anyone else something which they are carryin' {kind: text}} - RULE_NT'check an actor showing something to ( this is the can't show' {unit: 2} + IMPERATIVE_NT'check an actor showing something to ( this is the can't show' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the holder of the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is not the holder of the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is not the holder of the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is not the holder of the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is not the holder of the noun' {proposition: << NOT< ('actor' == 'the holder of the noun') NOT> >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [aren't] holding [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [aren't] holding [the noun]." ( a )' INVOCATION_NT'"[We] [aren't] holding [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [aren't] holding [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [aren't] holding [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [aren't] holding [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor showing something to ( this is the convert sh' {unit: 2} + IMPERATIVE_NT'check an actor showing something to ( this is the convert sh' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the second noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the second noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the second noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the second noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the second noun' {proposition: << ('actor' == 'the second noun') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to the examining action on the noun' {indent: 2} INVOCATION_NT'convert to the examining action on the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'examining action' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} + RVALUE_CONTEXT_NT'examining action' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an action name'} {required: action name} CONSTANT_NT'examining action' {kind: action name} {action name: examining}{meaning: {examining action = MISCELLANEOUS_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'check an actor showing something to ( this is the block show' {unit: 2} + IMPERATIVE_NT'check an actor showing something to ( this is the block show' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The second noun] [are] unimpressed." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The second noun] [are] unimpressed." ( a )' INVOCATION_NT'"[The second noun] [are] unimpressed." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The second noun] [are] unimpressed." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The second noun] [are] unimpressed." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The second noun] [are] unimpressed." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -14851,14 +13012,12 @@ ROOT_NT PROPER_NOUN_NT'This is the act of jostling a sleeping person to wake him or' {refined} {eval: CONSTANT_NT'This is the act of jostling a sleeping person to wake him or' {kind: text}} - RULE_NT'check an actor waking ( this is the block waking rule )' {unit: 2} + IMPERATIVE_NT'check an actor waking ( this is the block waking rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 2} {control structure: NOW} @@ -14866,8 +13025,7 @@ ROOT_NT CODE_BLOCK_NT'say "That [seem] unnecessary." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"That [seem] unnecessary." ( a )' INVOCATION_NT'"That [seem] unnecessary." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"That [seem] unnecessary." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"That [seem] unnecessary." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"That [seem] unnecessary." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -14887,71 +13045,58 @@ ROOT_NT PROPER_NOUN_NT'Throwing something at someone or something is difficult for ' {refined} {eval: CONSTANT_NT'Throwing something at someone or something is difficult for ' {kind: text}} - RULE_NT'check an actor throwing something at ( this is the implicitl' {unit: 2} + IMPERATIVE_NT'check an actor throwing something at ( this is the implicitl' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(first taking [the noun] off)[command clarification bre' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first taking [the noun] off)[command clarification break]"' INVOCATION_NT'"(first taking [the noun] off)[command clarification break]"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first taking [the noun] off)[command clarification break]"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first taking [the noun] off)[command clarification break]"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first taking [the noun] off)[command clarification break]"' {kind: text} INVOCATION_LIST_NT'silently try the actor trying taking off the noun' {indent: 2} INVOCATION_NT'silently try the actor trying taking off the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'actor trying taking off the noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'actor trying taking off the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'actor trying taking off the noun' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {indent: 2} {colon_block_command} INVOCATION_NT'if the actor is wearing the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is wearing the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is wearing the noun' {proposition: << ('actor' == ) >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor throwing something at ( this is the futile to' {unit: 2} + IMPERATIVE_NT'check an actor throwing something at ( this is the futile to' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a person' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun is not a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is not a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is not a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is not a person' {proposition: << NOT< kind=person('second noun') NOT> >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Futile." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Futile." ( a )' INVOCATION_NT'"Futile." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Futile." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Futile." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Futile." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor throwing something at ( this is the block thr' {unit: 2} + IMPERATIVE_NT'check an actor throwing something at ( this is the block thr' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [lack] the nerve when it [if story tense is the pa' {control structure: SAY} @@ -14960,8 +13105,7 @@ ROOT_NT INVOCATION_NT'"[We] [lack] the nerve when it [if story tense is the past t' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"[We] [lack] the nerve when it [if story tense is the past - t' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + t' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [lack] the nerve when it [if story tense is the past t' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} @@ -14982,14 +13126,12 @@ ROOT_NT PROPER_NOUN_NT'Violence is seldom the answer, and attempts to attack anothe' {refined} {eval: CONSTANT_NT'Violence is seldom the answer, and attempts to attack anothe' {kind: text}} - RULE_NT'check an actor attacking ( this is the block attacking rule ' {unit: 2} + IMPERATIVE_NT'check an actor attacking ( this is the block attacking rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 2} {control structure: NOW} @@ -14997,8 +13139,7 @@ ROOT_NT CODE_BLOCK_NT'say "Violence [aren't] the answer to this one." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Violence [aren't] the answer to this one." ( a )' INVOCATION_NT'"Violence [aren't] the answer to this one." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Violence [aren't] the answer to this one." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Violence [aren't] the answer to this one." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Violence [aren't] the answer to this one." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -15018,47 +13159,39 @@ ROOT_NT PROPER_NOUN_NT'Possibly because Inform was originally written by an English' {refined} {eval: CONSTANT_NT'Possibly because Inform was originally written by an English' {kind: text}} - RULE_NT'check an actor kissing ( this is the kissing yourself rule )' {unit: 2} + IMPERATIVE_NT'check an actor kissing ( this is the kissing yourself rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is the actor' {proposition: << ('noun' == 'the actor') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [don't] get much from that." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [don't] get much from that." ( a )' INVOCATION_NT'"[We] [don't] get much from that." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [don't] get much from that." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [don't] get much from that." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [don't] get much from that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor kissing ( this is the block kissing rule )' {unit: 2} + IMPERATIVE_NT'check an actor kissing ( this is the block kissing rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [might not] like that." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [might not] like that." ( a )' INVOCATION_NT'"[The noun] [might not] like that." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [might not] like that." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [might not] like that." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [might not] like that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -15078,14 +13211,12 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules do not include any systematic way to hand' {refined} {eval: CONSTANT_NT'The Standard Rules do not include any systematic way to hand' {kind: text}} - RULE_NT'report an actor answering something that ( this is the block' {unit: 2} + IMPERATIVE_NT'report an actor answering something that ( this is the block' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 2} {control structure: NOW} @@ -15093,8 +13224,7 @@ ROOT_NT CODE_BLOCK_NT'say "[There] [are] no reply." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[There] [are] no reply." ( a )' INVOCATION_NT'"[There] [are] no reply." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[There] [are] no reply." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[There] [are] no reply." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There] [are] no reply." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -15114,40 +13244,33 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules do not include any systematic way to hand' {refined} {eval: CONSTANT_NT'The Standard Rules do not include any systematic way to hand' {kind: text}} - RULE_NT'check an actor telling something about ( this is the telling' {unit: 2} + IMPERATIVE_NT'check an actor telling something about ( this is the telling' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the noun' {proposition: << ('actor' == 'the noun') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [talk] to [ourselves] a while." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [talk] to [ourselves] a while." ( a )' INVOCATION_NT'"[We] [talk] to [ourselves] a while." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [talk] to [ourselves] a while." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [talk] to [ourselves] a while." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [talk] to [ourselves] a while." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor telling something about ( this is the block ' {unit: 2} + IMPERATIVE_NT'report an actor telling something about ( this is the block ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 2} {control structure: NOW} @@ -15155,8 +13278,7 @@ ROOT_NT CODE_BLOCK_NT'say "This [provoke] no reaction." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"This [provoke] no reaction." ( a )' INVOCATION_NT'"This [provoke] no reaction." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"This [provoke] no reaction." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"This [provoke] no reaction." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"This [provoke] no reaction." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -15176,14 +13298,12 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules do not include any systematic way to hand' {refined} {eval: CONSTANT_NT'The Standard Rules do not include any systematic way to hand' {kind: text}} - RULE_NT'report an actor asking something about ( this is the block a' {unit: 2} + IMPERATIVE_NT'report an actor asking something about ( this is the block a' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 2} {control structure: NOW} @@ -15191,8 +13311,7 @@ ROOT_NT CODE_BLOCK_NT'say "[There] [are] no reply." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[There] [are] no reply." ( a )' INVOCATION_NT'"[There] [are] no reply." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[There] [are] no reply." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[There] [are] no reply." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There] [are] no reply." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -15212,39 +13331,32 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules do not include any systematic way to hand' {refined} {eval: CONSTANT_NT'The Standard Rules do not include any systematic way to hand' {kind: text}} - RULE_NT'check an actor asking something for ( this is the asking you' {unit: 2} + IMPERATIVE_NT'check an actor asking something for ( this is the asking you' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the noun and the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the noun and the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the noun and the actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the noun and the actor is the player' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'actor is the noun and the actor is the player' TEST_PROPOSITION_NT'actor is the noun' {proposition: << ('actor' == 'the noun') >>} {term: 'actor'} TEST_PROPOSITION_NT'the actor is the player' {proposition: << ('the actor' == 'the player') >>} {term: 'the actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'try taking inventory' {indent: 2} INVOCATION_NT'try taking inventory' {phrase invoked: call} - RVALUE_CONTEXT_NT'taking inventory' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'taking inventory' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'taking inventory' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'taking inventory' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'check an actor asking something for ( this is the translate ' {unit: 2} + IMPERATIVE_NT'check an actor asking something for ( this is the translate ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to request of the noun to perform giving it to actio' INVOCATION_NT'convert to request of the noun to perform giving it to actio' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RVALUE_CONTEXT_NT'giving it to action' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action name'} {required: action name} + RVALUE_CONTEXT_NT'giving it to action' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action name'} {required: action name} CONSTANT_NT'giving it to action' {kind: action name} {action name: giving it to}{meaning: {giving it to action = MISCELLANEOUS_MC}} - RVALUE_CONTEXT_NT'second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'second noun' {nonlocal: 'second noun'(var)object}{meaning: {second noun = VARIABLE_MC}} - RVALUE_CONTEXT_NT'actor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'actor' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} HEADING_NT'section 7 - standard actions which are checked but then do n' {heading 5} {under: H5'section 7 - standard actions which are checked but then do nothing unless rules intervene'} {unit: 2} SENTENCE_NT'waiting is an action applying to nothing' {unit: 2} {classified} @@ -15263,22 +13375,18 @@ ROOT_NT PROPER_NOUN_NT'The inaction action: where would we be without waiting? Wait' {refined} {eval: CONSTANT_NT'The inaction action: where would we be without waiting? Wait' {kind: text}} - RULE_NT'report an actor waiting ( this is the standard report waitin' {unit: 2} + IMPERATIVE_NT'report an actor waiting ( this is the standard report waitin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -15289,15 +13397,13 @@ ROOT_NT CODE_BLOCK_NT'say "Time [pass]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Time [pass]." ( a )' INVOCATION_NT'"Time [pass]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Time [pass]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Time [pass]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Time [pass]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [wait]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [wait]." ( b )' INVOCATION_NT'"[The actor] [wait]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [wait]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [wait]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [wait]." ( b )' {kind: text} SENTENCE_NT'touching is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -15315,30 +13421,24 @@ ROOT_NT PROPER_NOUN_NT'Touching is just that, touching something without applying p' {refined} {eval: CONSTANT_NT'Touching is just that, touching something without applying p' {kind: text}} - RULE_NT'report an actor touching ( this is the report touching yours' {unit: 2} + IMPERATIVE_NT'report an actor touching ( this is the report touching yours' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is the actor' {proposition: << ('noun' == 'the actor') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 3} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -15347,44 +13447,36 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [achieve] nothing by this." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [achieve] nothing by this." ( a )' INVOCATION_NT'"[We] [achieve] nothing by this." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [achieve] nothing by this." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [achieve] nothing by this." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [achieve] nothing by this." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "[The actor] [touch] [themselves]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [touch] [themselves]." ( b )' INVOCATION_NT'"[The actor] [touch] [themselves]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [touch] [themselves]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [touch] [themselves]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [touch] [themselves]." ( b )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor touching ( this is the report touching other' {unit: 2} + IMPERATIVE_NT'report an actor touching ( this is the report touching other' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a person' {proposition: << kind=person('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 3} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -15393,51 +13485,42 @@ ROOT_NT CODE_BLOCK_NT'say "[The noun] [might not like] that." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [might not like] that." ( a )' INVOCATION_NT'"[The noun] [might not like] that." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [might not like] that." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the noun is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is the player' {proposition: << ('noun' == 'the player') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The actor] [touch] [us]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [touch] [us]." ( b )' INVOCATION_NT'"[The actor] [touch] [us]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [touch] [us]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [touch] [us]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [touch] [us]." ( b )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "[The actor] [touch] [the noun]." ( c )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [touch] [the noun]." ( c )' INVOCATION_NT'"[The actor] [touch] [the noun]." ( c )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [touch] [the noun]." ( c )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [touch] [the noun]." ( c )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [touch] [the noun]." ( c )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor touching ( this is the report touching thing' {unit: 2} + IMPERATIVE_NT'report an actor touching ( this is the report touching thing' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -15446,15 +13529,13 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [feel] nothing unexpected." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [feel] nothing unexpected." ( a )' INVOCATION_NT'"[We] [feel] nothing unexpected." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [feel] nothing unexpected." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [feel] nothing unexpected." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [feel] nothing unexpected." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [touch] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [touch] [the noun]." ( b )' INVOCATION_NT'"[The actor] [touch] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [touch] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [touch] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [touch] [the noun]." ( b )' {kind: text} SENTENCE_NT'waving is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -15472,48 +13553,39 @@ ROOT_NT PROPER_NOUN_NT'Waving in this sense is like waving a sceptre: the item to b' {refined} {eval: CONSTANT_NT'Waving in this sense is like waving a sceptre: the item to b' {kind: text}} - RULE_NT'check an actor waving ( this is the can't wave what's not he' {unit: 2} + IMPERATIVE_NT'check an actor waving ( this is the can't wave what's not he' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the holder of the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is not the holder of the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is not the holder of the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is not the holder of the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is not the holder of the noun' {proposition: << NOT< ('actor' == 'the holder of the noun') NOT> >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "But [we] [aren't] holding [regarding the noun][those]."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"But [we] [aren't] holding [regarding the noun][those]." ( a' INVOCATION_NT'"But [we] [aren't] holding [regarding the noun][those]." ( a' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"But [we] [aren't] holding [regarding the noun][those]." ( a' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"But [we] [aren't] holding [regarding the noun][those]." ( a' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"But [we] [aren't] holding [regarding the noun][those]." ( a' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor waving ( this is the report waving things ru' {unit: 2} + IMPERATIVE_NT'report an actor waving ( this is the report waving things ru' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -15522,15 +13594,13 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [wave] [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [wave] [the noun]." ( a )' INVOCATION_NT'"[We] [wave] [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [wave] [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [wave] [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [wave] [the noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [wave] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [wave] [the noun]." ( b )' INVOCATION_NT'"[The actor] [wave] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [wave] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [wave] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [wave] [the noun]." ( b )' {kind: text} SENTENCE_NT'pulling is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -15548,100 +13618,81 @@ ROOT_NT PROPER_NOUN_NT'Pulling is the act of pulling something not grossly larger t' {refined} {eval: CONSTANT_NT'Pulling is the act of pulling something not grossly larger t' {kind: text}} - RULE_NT'check an actor pulling ( this is the can't pull what's fixed' {unit: 2} + IMPERATIVE_NT'check an actor pulling ( this is the can't pull what's fixed' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is fixed in place' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is fixed in place' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is fixed in place' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is fixed in place' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is fixed in place' {proposition: << fixed in place('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They] [are] fixed in place." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They] [are] fixed in place." ( a )' INVOCATION_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pulling ( this is the can't pull scenery rule' {unit: 2} + IMPERATIVE_NT'check an actor pulling ( this is the can't pull scenery rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is scenery' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is scenery' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is scenery' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is scenery' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is scenery' {proposition: << scenery('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [are] unable to." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [are] unable to." ( a )' INVOCATION_NT'"[We] [are] unable to." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [are] unable to." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [are] unable to." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [are] unable to." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pulling ( this is the can't pull people rule ' {unit: 2} + IMPERATIVE_NT'check an actor pulling ( this is the can't pull people rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a person' {proposition: << kind=person('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [might not like] that." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [might not like] that." ( a )' INVOCATION_NT'"[The noun] [might not like] that." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [might not like] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor pulling ( this is the report pulling rule )' {unit: 2} + IMPERATIVE_NT'report an actor pulling ( this is the report pulling rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -15652,15 +13703,13 @@ ROOT_NT CODE_BLOCK_NT'say "Nothing obvious [happen]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Nothing obvious [happen]." ( a )' INVOCATION_NT'"Nothing obvious [happen]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Nothing obvious [happen]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Nothing obvious [happen]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Nothing obvious [happen]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [pull] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [pull] [the noun]." ( b )' INVOCATION_NT'"[The actor] [pull] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [pull] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [pull] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [pull] [the noun]." ( b )' {kind: text} SENTENCE_NT'pushing is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -15678,100 +13727,81 @@ ROOT_NT PROPER_NOUN_NT'Pushing is the act of pushing something not grossly larger t' {refined} {eval: CONSTANT_NT'Pushing is the act of pushing something not grossly larger t' {kind: text}} - RULE_NT'check an actor pushing something ( this is the can't push wh' {unit: 2} + IMPERATIVE_NT'check an actor pushing something ( this is the can't push wh' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is fixed in place' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is fixed in place' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is fixed in place' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is fixed in place' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is fixed in place' {proposition: << fixed in place('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They] [are] fixed in place." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They] [are] fixed in place." ( a )' INVOCATION_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something ( this is the can't push sc' {unit: 2} + IMPERATIVE_NT'check an actor pushing something ( this is the can't push sc' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is scenery' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is scenery' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is scenery' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is scenery' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is scenery' {proposition: << scenery('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [are] unable to." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [are] unable to." ( a )' INVOCATION_NT'"[We] [are] unable to." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [are] unable to." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [are] unable to." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [are] unable to." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something ( this is the can't push pe' {unit: 2} + IMPERATIVE_NT'check an actor pushing something ( this is the can't push pe' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a person' {proposition: << kind=person('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [might not like] that." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [might not like] that." ( a )' INVOCATION_NT'"[The noun] [might not like] that." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [might not like] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor pushing something ( this is the report pushi' {unit: 2} + IMPERATIVE_NT'report an actor pushing something ( this is the report pushi' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -15782,15 +13812,13 @@ ROOT_NT CODE_BLOCK_NT'say "Nothing obvious [happen]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Nothing obvious [happen]." ( a )' INVOCATION_NT'"Nothing obvious [happen]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Nothing obvious [happen]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Nothing obvious [happen]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Nothing obvious [happen]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [push] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [push] [the noun]." ( b )' INVOCATION_NT'"[The actor] [push] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [push] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [push] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [push] [the noun]." ( b )' {kind: text} SENTENCE_NT'turning is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -15808,100 +13836,81 @@ ROOT_NT PROPER_NOUN_NT'Turning is the act of rotating something - say, a dial.In ' {refined} {eval: CONSTANT_NT'Turning is the act of rotating something - say, a dial.In ' {kind: text}} - RULE_NT'check an actor turning ( this is the can't turn what's fixed' {unit: 2} + IMPERATIVE_NT'check an actor turning ( this is the can't turn what's fixed' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is fixed in place' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is fixed in place' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is fixed in place' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is fixed in place' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is fixed in place' {proposition: << fixed in place('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They] [are] fixed in place." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They] [are] fixed in place." ( a )' INVOCATION_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor turning ( this is the can't turn scenery rule' {unit: 2} + IMPERATIVE_NT'check an actor turning ( this is the can't turn scenery rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is scenery' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is scenery' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is scenery' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is scenery' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is scenery' {proposition: << scenery('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [are] unable to." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [are] unable to." ( a )' INVOCATION_NT'"[We] [are] unable to." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [are] unable to." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [are] unable to." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [are] unable to." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor turning ( this is the can't turn people rule ' {unit: 2} + IMPERATIVE_NT'check an actor turning ( this is the can't turn people rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a person' {proposition: << kind=person('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [might not like] that." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [might not like] that." ( a )' INVOCATION_NT'"[The noun] [might not like] that." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [might not like] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor turning ( this is the report turning rule )' {unit: 2} + IMPERATIVE_NT'report an actor turning ( this is the report turning rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -15912,15 +13921,13 @@ ROOT_NT CODE_BLOCK_NT'say "Nothing obvious [happen]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Nothing obvious [happen]." ( a )' INVOCATION_NT'"Nothing obvious [happen]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Nothing obvious [happen]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Nothing obvious [happen]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Nothing obvious [happen]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [turn] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [turn] [the noun]." ( b )' INVOCATION_NT'"[The actor] [turn] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [turn] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [turn] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [turn] [the noun]." ( b )' {kind: text} SENTENCE_NT'pushing it to is an action applying to one thing and one vis' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -15938,66 +13945,54 @@ ROOT_NT PROPER_NOUN_NT'This action covers pushing a large object, not being carried' {refined} {eval: CONSTANT_NT'This action covers pushing a large object, not being carried' {kind: text}} - RULE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not pushable between rooms' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is not pushable between rooms' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is not pushable between rooms' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is not pushable between rooms' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is not pushable between rooms' {proposition: << NOT< pushable between rooms('noun') NOT> >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [cannot] be pushed from place to place." ( a' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [cannot] be pushed from place to place." ( a )' INVOCATION_NT'"[The noun] [cannot] be pushed from place to place." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [cannot] be pushed from place to place." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [cannot] be pushed from place to place." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [cannot] be pushed from place to place." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a direction' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun is not a direction' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is not a direction' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is not a direction' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is not a direction' {proposition: << NOT< kind=direction('second noun') NOT> >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding the noun][They] [aren't] a direction." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[regarding the noun][They] [aren't] a direction." ( a )' INVOCATION_NT'"[regarding the noun][They] [aren't] a direction." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[regarding the noun][They] [aren't] a direction." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[regarding the noun][They] [aren't] a direction." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[regarding the noun][They] [aren't] a direction." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is up or the second noun is down' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun is up or the second noun is down' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is up or the second noun is down' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is up or the second noun is down' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'second noun is up or the second noun is down' TEST_PROPOSITION_NT'second noun is up' {proposition: << ('second noun' == 'up') >>} {term: 'second noun'} TEST_PROPOSITION_NT'the second noun is down' {proposition: << ('the second noun' == 'down') >>} {term: 'the second noun'} @@ -16005,64 +14000,53 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [cannot] be pushed up or down." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [cannot] be pushed up or down." ( a )' INVOCATION_NT'"[The noun] [cannot] be pushed up or down." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [cannot] be pushed up or down." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [cannot] be pushed up or down." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [cannot] be pushed up or down." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun encloses the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun encloses the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun encloses the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun encloses the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun encloses the actor' {proposition: << encloses('noun', 'the actor') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [cannot] be pushed from here." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [cannot] be pushed from here." ( a )' INVOCATION_NT'"[The noun] [cannot] be pushed from here." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [cannot] be pushed from here." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [cannot] be pushed from here." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [cannot] be pushed from here." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something to ( this is the standard p' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the standard p' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to special going-with-push action' INVOCATION_NT'convert to special going-with-push action' {phrase invoked: call} - RULE_NT'check an actor pushing something to ( this is the block push' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the block push' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [cannot] be pushed from place to place." ( a' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [cannot] be pushed from place to place." ( a )' INVOCATION_NT'"[The noun] [cannot] be pushed from place to place." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [cannot] be pushed from place to place." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [cannot] be pushed from place to place." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [cannot] be pushed from place to place." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16082,48 +14066,39 @@ ROOT_NT PROPER_NOUN_NT'Squeezing is an action which can conveniently vary from sque' {refined} {eval: CONSTANT_NT'Squeezing is an action which can conveniently vary from sque' {kind: text}} - RULE_NT'check an actor squeezing ( this is the innuendo about squeez' {unit: 2} + IMPERATIVE_NT'check an actor squeezing ( this is the innuendo about squeez' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a person' {proposition: << kind=person('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [might not like] that." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [might not like] that." ( a )' INVOCATION_NT'"[The noun] [might not like] that." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [might not like] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor squeezing ( this is the report squeezing rul' {unit: 2} + IMPERATIVE_NT'report an actor squeezing ( this is the report squeezing rul' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -16132,15 +14107,13 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [achieve] nothing by this." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [achieve] nothing by this." ( a )' INVOCATION_NT'"[We] [achieve] nothing by this." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [achieve] nothing by this." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [achieve] nothing by this." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [achieve] nothing by this." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [squeeze] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [squeeze] [the noun]." ( b )' INVOCATION_NT'"[The actor] [squeeze] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [squeeze] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [squeeze] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [squeeze] [the noun]." ( b )' {kind: text} HEADING_NT'section 8 - standard actions which always do nothing unless ' {heading 5} {under: H5'section 8 - standard actions which always do nothing unless rules intervene'} {unit: 2} SENTENCE_NT'saying yes is an action applying to nothing' {unit: 2} {classified} @@ -16157,21 +14130,18 @@ ROOT_NT PROPER_NOUN_NT'saying yes action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'saying yes action' {kind: action name} {action name: saying yes}{meaning: {saying yes action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor saying yes ( this is the block saying yes rul' {unit: 2} + IMPERATIVE_NT'check an actor saying yes ( this is the block saying yes rul' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "That was a rhetorical question." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"That was a rhetorical question." ( a )' INVOCATION_NT'"That was a rhetorical question." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"That was a rhetorical question." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"That was a rhetorical question." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"That was a rhetorical question." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16189,21 +14159,18 @@ ROOT_NT PROPER_NOUN_NT'saying no action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'saying no action' {kind: action name} {action name: saying no}{meaning: {saying no action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor saying no ( this is the block saying no rule ' {unit: 2} + IMPERATIVE_NT'check an actor saying no ( this is the block saying no rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "That was a rhetorical question." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"That was a rhetorical question." ( a )' INVOCATION_NT'"That was a rhetorical question." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"That was a rhetorical question." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"That was a rhetorical question." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"That was a rhetorical question." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16221,21 +14188,18 @@ ROOT_NT PROPER_NOUN_NT'burning action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'burning action' {kind: action name} {action name: burning}{meaning: {burning action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor burning ( this is the block burning rule )' {unit: 2} + IMPERATIVE_NT'check an actor burning ( this is the block burning rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "This dangerous act [would achieve] little." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"This dangerous act [would achieve] little." ( a )' INVOCATION_NT'"This dangerous act [would achieve] little." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"This dangerous act [would achieve] little." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"This dangerous act [would achieve] little." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"This dangerous act [would achieve] little." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16253,14 +14217,12 @@ ROOT_NT PROPER_NOUN_NT'waking up action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'waking up action' {kind: action name} {action name: waking up}{meaning: {waking up action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor waking up ( this is the block waking up rule ' {unit: 2} + IMPERATIVE_NT'check an actor waking up ( this is the block waking up rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 2} {control structure: NOW} @@ -16268,8 +14230,7 @@ ROOT_NT CODE_BLOCK_NT'say "The dreadful truth [are], this [are not] a dream." ( a ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"The dreadful truth [are], this [are not] a dream." ( a )' INVOCATION_NT'"The dreadful truth [are], this [are not] a dream." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"The dreadful truth [are], this [are not] a dream." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"The dreadful truth [are], this [are not] a dream." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"The dreadful truth [are], this [are not] a dream." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16287,21 +14248,18 @@ ROOT_NT PROPER_NOUN_NT'thinking action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'thinking action' {kind: action name} {action name: thinking}{meaning: {thinking action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor thinking ( this is the block thinking rule )' {unit: 2} + IMPERATIVE_NT'check an actor thinking ( this is the block thinking rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "What a good idea." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"What a good idea." ( a )' INVOCATION_NT'"What a good idea." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"What a good idea." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"What a good idea." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"What a good idea." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16319,22 +14277,18 @@ ROOT_NT PROPER_NOUN_NT'smelling action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'smelling action' {kind: action name} {action name: smelling}{meaning: {smelling action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'report an actor smelling ( this is the report smelling rule ' {unit: 2} + IMPERATIVE_NT'report an actor smelling ( this is the report smelling rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -16343,15 +14297,13 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [smell] nothing unexpected." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [smell] nothing unexpected." ( a )' INVOCATION_NT'"[We] [smell] nothing unexpected." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [smell] nothing unexpected." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [smell] nothing unexpected." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [smell] nothing unexpected." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [sniff]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [sniff]." ( b )' INVOCATION_NT'"[The actor] [sniff]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [sniff]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [sniff]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [sniff]." ( b )' {kind: text} SENTENCE_NT'listening to is an action applying to nothing or one thing a' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -16367,22 +14319,18 @@ ROOT_NT PROPER_NOUN_NT'listening to action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'listening to action' {kind: action name} {action name: listening to}{meaning: {listening to action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'report an actor listening to ( this is the report listening ' {unit: 2} + IMPERATIVE_NT'report an actor listening to ( this is the report listening ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -16391,15 +14339,13 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [hear] nothing unexpected." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [hear] nothing unexpected." ( a )' INVOCATION_NT'"[We] [hear] nothing unexpected." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [hear] nothing unexpected." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [hear] nothing unexpected." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [hear] nothing unexpected." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [listen]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [listen]." ( b )' INVOCATION_NT'"[The actor] [listen]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [listen]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [listen]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [listen]." ( b )' {kind: text} SENTENCE_NT'tasting is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -16415,22 +14361,18 @@ ROOT_NT PROPER_NOUN_NT'tasting action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'tasting action' {kind: action name} {action name: tasting}{meaning: {tasting action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'report an actor tasting ( this is the report tasting rule )' {unit: 2} + IMPERATIVE_NT'report an actor tasting ( this is the report tasting rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -16439,15 +14381,13 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [taste] nothing unexpected." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [taste] nothing unexpected." ( a )' INVOCATION_NT'"[We] [taste] nothing unexpected." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [taste] nothing unexpected." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [taste] nothing unexpected." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [taste] nothing unexpected." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [taste] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [taste] [the noun]." ( b )' INVOCATION_NT'"[The actor] [taste] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [taste] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [taste] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [taste] [the noun]." ( b )' {kind: text} SENTENCE_NT'cutting is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -16463,21 +14403,18 @@ ROOT_NT PROPER_NOUN_NT'cutting action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'cutting action' {kind: action name} {action name: cutting}{meaning: {cutting action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor cutting ( this is the block cutting rule )' {unit: 2} + IMPERATIVE_NT'check an actor cutting ( this is the block cutting rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Cutting [regarding the noun][them] up [would achieve] l' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Cutting [regarding the noun][them] up [would achieve] littl' INVOCATION_NT'"Cutting [regarding the noun][them] up [would achieve] littl' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Cutting [regarding the noun][them] up [would achieve] littl' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Cutting [regarding the noun][them] up [would achieve] littl' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Cutting [regarding the noun][them] up [would achieve] littl' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16495,22 +14432,18 @@ ROOT_NT PROPER_NOUN_NT'jumping action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'jumping action' {kind: action name} {action name: jumping}{meaning: {jumping action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'report an actor jumping ( this is the report jumping rule )' {unit: 2} + IMPERATIVE_NT'report an actor jumping ( this is the report jumping rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -16519,15 +14452,13 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [jump] on the spot." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [jump] on the spot." ( a )' INVOCATION_NT'"[We] [jump] on the spot." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [jump] on the spot." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [jump] on the spot." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [jump] on the spot." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [jump] on the spot." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [jump] on the spot." ( b )' INVOCATION_NT'"[The actor] [jump] on the spot." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [jump] on the spot." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [jump] on the spot." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [jump] on the spot." ( b )' {kind: text} SENTENCE_NT'tying it to is an action applying to two things' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -16543,21 +14474,18 @@ ROOT_NT PROPER_NOUN_NT'tying it to action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'tying it to action' {kind: action name} {action name: tying it to}{meaning: {tying it to action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor tying something to ( this is the block tying ' {unit: 2} + IMPERATIVE_NT'check an actor tying something to ( this is the block tying ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [would achieve] nothing by this." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [would achieve] nothing by this." ( a )' INVOCATION_NT'"[We] [would achieve] nothing by this." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [would achieve] nothing by this." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [would achieve] nothing by this." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [would achieve] nothing by this." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16575,14 +14503,12 @@ ROOT_NT PROPER_NOUN_NT'drinking action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'drinking action' {kind: action name} {action name: drinking}{meaning: {drinking action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor drinking ( this is the block drinking rule )' {unit: 2} + IMPERATIVE_NT'check an actor drinking ( this is the block drinking rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 2} {control structure: NOW} @@ -16590,8 +14516,7 @@ ROOT_NT CODE_BLOCK_NT'say "[There's] nothing suitable to drink here." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[There's] nothing suitable to drink here." ( a )' INVOCATION_NT'"[There's] nothing suitable to drink here." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[There's] nothing suitable to drink here." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[There's] nothing suitable to drink here." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There's] nothing suitable to drink here." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16609,14 +14534,12 @@ ROOT_NT PROPER_NOUN_NT'saying sorry action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'saying sorry action' {kind: action name} {action name: saying sorry}{meaning: {saying sorry action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor saying sorry ( this is the block saying sorry' {unit: 2} + IMPERATIVE_NT'check an actor saying sorry ( this is the block saying sorry' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Oh, don't [if American dialect option is @@ -16626,8 +14549,7 @@ ROOT_NT INVOCATION_NT'"Oh, don't [if American dialect option is active]apologize[o' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"Oh, don't [if American dialect option is - active]apologize[o' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + active]apologize[o' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Oh, don't [if American dialect option is active]apologize[o' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} @@ -16646,14 +14568,12 @@ ROOT_NT PROPER_NOUN_NT'swinging action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'swinging action' {kind: action name} {action name: swinging}{meaning: {swinging action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor swinging ( this is the block swinging rule )' {unit: 2} + IMPERATIVE_NT'check an actor swinging ( this is the block swinging rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 2} {control structure: NOW} @@ -16661,8 +14581,7 @@ ROOT_NT CODE_BLOCK_NT'say "[There's] nothing sensible to swing here." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[There's] nothing sensible to swing here." ( a )' INVOCATION_NT'"[There's] nothing sensible to swing here." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[There's] nothing sensible to swing here." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[There's] nothing sensible to swing here." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There's] nothing sensible to swing here." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16680,48 +14599,39 @@ ROOT_NT PROPER_NOUN_NT'rubbing action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'rubbing action' {kind: action name} {action name: rubbing}{meaning: {rubbing action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor rubbing ( this is the can't rub another perso' {unit: 2} + IMPERATIVE_NT'check an actor rubbing ( this is the can't rub another perso' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person who is not the actor' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is a person who is not the actor' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is a person who is not the actor' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is a person who is not the actor' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is a person who is not the actor' {proposition: << kind=person('noun') ^ NOT< ('noun' == 'the actor') NOT> >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 2} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [might not like] that." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [might not like] that." ( a )' INVOCATION_NT'"[The noun] [might not like] that." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [might not like] that." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [might not like] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor rubbing ( this is the report rubbing rule )' {unit: 2} + IMPERATIVE_NT'report an actor rubbing ( this is the report rubbing rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -16730,15 +14640,13 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [rub] [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [rub] [the noun]." ( a )' INVOCATION_NT'"[We] [rub] [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [rub] [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [rub] [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [rub] [the noun]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [rub] [the noun]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [rub] [the noun]." ( b )' INVOCATION_NT'"[The actor] [rub] [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [rub] [the noun]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [rub] [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [rub] [the noun]." ( b )' {kind: text} SENTENCE_NT'setting it to is an action applying to one thing and one top' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -16754,21 +14662,18 @@ ROOT_NT PROPER_NOUN_NT'setting it to action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'setting it to action' {kind: action name} {action name: setting it to}{meaning: {setting it to action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor setting something to ( this is the block sett' {unit: 2} + IMPERATIVE_NT'check an actor setting something to ( this is the block sett' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "No, [we] [can't set] [regarding the noun][those] to any' {control structure: SAY} INVOCATION_LIST_SAY_NT'"No, [we] [can't set] [regarding the noun][those] to anythin' INVOCATION_NT'"No, [we] [can't set] [regarding the noun][those] to anythin' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"No, [we] [can't set] [regarding the noun][those] to anythin' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"No, [we] [can't set] [regarding the noun][those] to anythin' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"No, [we] [can't set] [regarding the noun][those] to anythin' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16786,22 +14691,18 @@ ROOT_NT PROPER_NOUN_NT'waving hands action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'waving hands action' {kind: action name} {action name: waving hands}{meaning: {waving hands action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'report an actor waving hands ( this is the report waving han' {unit: 2} + IMPERATIVE_NT'report an actor waving hands ( this is the report waving han' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 2} INVOCATION_NT'if the action is not silent' {phrase invoked: call} - CONDITION_CONTEXT_NT'action is not silent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'action is not silent' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'action is not silent' PHRASE_TO_DECIDE_VALUE_NT'action is not silent' INVOCATION_LIST_NT'action is not silent' @@ -16810,15 +14711,13 @@ ROOT_NT CODE_BLOCK_NT'say "[We] [wave]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [wave]." ( a )' INVOCATION_NT'"[We] [wave]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [wave]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [wave]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [wave]." ( a )' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "[The actor] [wave]." ( b )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The actor] [wave]." ( b )' INVOCATION_NT'"[The actor] [wave]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The actor] [wave]." ( b )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The actor] [wave]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The actor] [wave]." ( b )' {kind: text} SENTENCE_NT'buying is an action applying to one thing' {unit: 2} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} @@ -16834,14 +14733,12 @@ ROOT_NT PROPER_NOUN_NT'buying action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'buying action' {kind: action name} {action name: buying}{meaning: {buying action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor buying ( this is the block buying rule )' {unit: 2} + IMPERATIVE_NT'check an actor buying ( this is the block buying rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is nothing' {indent: 2} {control structure: NOW} @@ -16849,8 +14746,7 @@ ROOT_NT CODE_BLOCK_NT'say "Nothing [are] on sale." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Nothing [are] on sale." ( a )' INVOCATION_NT'"Nothing [are] on sale." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Nothing [are] on sale." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Nothing [are] on sale." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Nothing [are] on sale." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16868,21 +14764,18 @@ ROOT_NT PROPER_NOUN_NT'climbing action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'climbing action' {kind: action name} {action name: climbing}{meaning: {climbing action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor climbing ( this is the block climbing rule )' {unit: 2} + IMPERATIVE_NT'check an actor climbing ( this is the block climbing rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Little [are] to be achieved by that." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Little [are] to be achieved by that." ( a )' INVOCATION_NT'"Little [are] to be achieved by that." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Little [are] to be achieved by that." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Little [are] to be achieved by that." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Little [are] to be achieved by that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -16900,21 +14793,18 @@ ROOT_NT PROPER_NOUN_NT'sleeping action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'sleeping action' {kind: action name} {action name: sleeping}{meaning: {sleeping action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor sleeping ( this is the block sleeping rule )' {unit: 2} + IMPERATIVE_NT'check an actor sleeping ( this is the block sleeping rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the actor is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'actor is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'actor is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'actor is the player' {proposition: << ('actor' == 'the player') >>} {term: 'actor'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [aren't] feeling especially drowsy." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [aren't] feeling especially drowsy." ( a )' INVOCATION_NT'"[We] [aren't] feeling especially drowsy." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [aren't] feeling especially drowsy." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [aren't] feeling especially drowsy." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [aren't] feeling especially drowsy." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -17879,463 +15769,453 @@ ROOT_NT HEADING_NT'part seven - phrasebook' {heading 3} {under: H3'part seven - phrasebook'} {unit: 2} HEADING_NT'chapter 1 - saying' {heading 4} {under: H4'chapter 1 - saying'} {unit: 2} HEADING_NT'section 1 - time values' {heading 5} {under: H5'section 1 - time values'} {unit: 2} - RULE_NT'to say ( something - time ) in words ( documented at phs_tim' {unit: 2} + IMPERATIVE_NT'to say ( something - time ) in words ( documented at phs_tim' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (PrintTimeOfDayEnglish) {something}; ' - RULE_NT'to say here ( documented at phs_here )' {unit: 2} + IMPERATIVE_NT'to say here ( documented at phs_here )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "[if story tense is present tense]here[otherwise]there"' {control structure: SAY} INVOCATION_LIST_SAY_NT'if story tense is present tense' INVOCATION_NT'if story tense is present tense' {phrase invoked: call} - CONDITION_CONTEXT_NT'story tense is present tense' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story tense is present tense' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story tense is present tense' {proposition: << ('story tense' == 'present tense') >>} {term: 'story tense'} INVOCATION_LIST_SAY_NT'"here"' INVOCATION_NT'"here"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"here"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"here"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"here"' {kind: text} INVOCATION_LIST_SAY_NT'otherwise' INVOCATION_NT'otherwise' {phrase invoked: call} INVOCATION_LIST_SAY_NT'"there"' INVOCATION_NT'"there"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"there"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"there"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"there"' {kind: text} - RULE_NT'to say now ( documented at phs_now )' {unit: 2} + IMPERATIVE_NT'to say now ( documented at phs_now )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "[if story tense is present tense]now[otherwise]then"' {control structure: SAY} INVOCATION_LIST_SAY_NT'if story tense is present tense' INVOCATION_NT'if story tense is present tense' {phrase invoked: call} - CONDITION_CONTEXT_NT'story tense is present tense' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'story tense is present tense' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'story tense is present tense' {proposition: << ('story tense' == 'present tense') >>} {term: 'story tense'} INVOCATION_LIST_SAY_NT'"now"' INVOCATION_NT'"now"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"now"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"now"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"now"' {kind: text} INVOCATION_LIST_SAY_NT'otherwise' INVOCATION_NT'otherwise' {phrase invoked: call} INVOCATION_LIST_SAY_NT'"then"' INVOCATION_NT'"then"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"then"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"then"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"then"' {kind: text} HEADING_NT'section 2 - boxed quotations' {heading 5} {under: H5'section 2 - boxed quotations'} {unit: 2} - RULE_NT'to display the boxed quotation ( q - text ) ( documented at ' {unit: 2} + IMPERATIVE_NT'to display the boxed quotation ( q - text ) ( documented at ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DisplayBoxedQuotation({-box-quotation-text:Q}); ' HEADING_NT'section 3 - some built-in texts' {heading 5} {under: H5'section 3 - some built-in texts'} {unit: 2} - RULE_NT'to say the/-- banner text ( documented at phs_banner )' {unit: 2} + IMPERATIVE_NT'to say the/-- banner text ( documented at phs_banner )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- Banner(); ' - RULE_NT'to say the/-- list of extension credits ( documented at phs_' {unit: 2} + IMPERATIVE_NT'to say the/-- list of extension credits ( documented at phs_' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ShowExtensionVersions(); ' - RULE_NT'to say the/-- complete list of extension credits ( documente' {unit: 2} + IMPERATIVE_NT'to say the/-- complete list of extension credits ( documente' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ShowFullExtensionVersions(); ' - RULE_NT'to say the/-- player's surroundings ( documented at phs_surr' {unit: 2} + IMPERATIVE_NT'to say the/-- player's surroundings ( documented at phs_surr' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SL_Location(true); ' - RULE_NT'to say run paragraph on with special look spacing -- running' {unit: 2} + IMPERATIVE_NT'to say run paragraph on with special look spacing -- running' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SpecialLookSpacingBreak(); ' - RULE_NT'to say command clarification break -- running on ( documente' {unit: 2} + IMPERATIVE_NT'to say command clarification break -- running on ( documente' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CommandClarificationBreak(); ' HEADING_NT'section 4 - responses' {heading 5} {under: H5'section 4 - responses'} {unit: 2} - RULE_NT'to say text of ( r - response ) ( documented at phs_response' {unit: 2} + IMPERATIVE_NT'to say text of ( r - response ) ( documented at phs_response' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'carry out the issuing the response text activity with r' INVOCATION_NT'carry out the issuing the response text activity with r' {phrase invoked: call} {kind variable declarations: K=response} - RVALUE_CONTEXT_NT'issuing the response text' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'issuing the response text' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'issuing the response text' {kind: activity on responses} {activity: issuing the response text}{meaning: {issuing the response text = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'r' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'r' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'r' {local: LV"r"-response response} HEADING_NT'section 5 - saying lists of things' {heading 5} {under: H5'section 5 - saying lists of things'} {unit: 2} - RULE_NT'to list the contents of ( o - an object ) , with newlines , ' {unit: 2} + IMPERATIVE_NT'to list the contents of ( o - an object ) , with newlines , ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- WriteListFrom(child({O}), {phrase options}); ' - RULE_NT'to say a list of ( os - description of objects ) ( documente' {unit: 2} + IMPERATIVE_NT'to say a list of ( os - description of objects ) ( documente' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-d' - RULE_NT'to say a list of ( os - description of objects ) ( documente' {unit: 2} + IMPERATIVE_NT'to say a list of ( os - description of objects ) ( documente' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say list of ( os - description of objects ) ( documented ' {unit: 2} + IMPERATIVE_NT'to say list of ( os - description of objects ) ( documented ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say the list of ( os - description of objects ) ( documen' {unit: 2} + IMPERATIVE_NT'to say the list of ( os - description of objects ) ( documen' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say the list of ( os - description of objects ) ( documen' {unit: 2} + IMPERATIVE_NT'to say the list of ( os - description of objects ) ( documen' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say is-are a list of ( os - description of objects ) ( do' {unit: 2} + IMPERATIVE_NT'to say is-are a list of ( os - description of objects ) ( do' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say is-are list of ( os - description of objects ) ( docu' {unit: 2} + IMPERATIVE_NT'to say is-are list of ( os - description of objects ) ( docu' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say is-are the list of ( os - description of objects ) ( ' {unit: 2} + IMPERATIVE_NT'to say is-are the list of ( os - description of objects ) ( ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say a list of ( os - description of objects ) including c' {unit: 2} + IMPERATIVE_NT'to say a list of ( os - description of objects ) including c' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' HEADING_NT'section 6 - group in and omit from lists' {heading 5} {under: H5'section 6 - group in and omit from lists'} {unit: 2} - RULE_NT'to group ( os - description of objects ) together ( document' {unit: 2} + IMPERATIVE_NT'to group ( os - description of objects ) together ( document' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} provides list_together) if ({-ma' - RULE_NT'to group ( os - description of objects ) together giving art' {unit: 2} + IMPERATIVE_NT'to group ( os - description of objects ) together giving art' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} provides list_together) if ({-ma' - RULE_NT'to group ( os - description of objects ) together as ( t - t' {unit: 2} + IMPERATIVE_NT'to group ( os - description of objects ) together as ( t - t' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-my:2} = BlkValueCreate(TEXT_TY); {-my:2} = TEXT_TY' - RULE_NT'to omit contents in listing ( documented at ph_omit )' {unit: 2} + IMPERATIVE_NT'to omit contents in listing ( documented at ph_omit )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- c_style = c_style &~ (RECURSE_BIT+FULLINV_BIT+PARTINV_BI' HEADING_NT'section 7 - filtering contents of lists - unindexed' {heading 5} {under: H5'section 7 - filtering contents of lists - unindexed'} {unit: 2} - RULE_NT'to filter list recursion to ( d - description of objects )' {unit: 2} + IMPERATIVE_NT'to filter list recursion to ( d - description of objects )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- list_filter_routine = {D}; ' - RULE_NT'to unfilter list recursion' {unit: 2} + IMPERATIVE_NT'to unfilter list recursion' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- list_filter_routine = 0; ' HEADING_NT'chapter 2 - multimedia' {heading 4} {under: H4'chapter 2 - multimedia'} {unit: 2} HEADING_NT'section 1 - figures ( for figures language element only )' {heading 5} {under: H5'section 1 - figures ( for figures language element only )'} {unit: 2} - RULE_NT'to display ( f - figure name ) , one time only ( documented ' {unit: 2} + IMPERATIVE_NT'to display ( f - figure name ) , one time only ( documented ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DisplayFigure(ResourceIDsOfFigures-->{F}, {phrase option' - RULE_NT'to decide which number is the glulx resource id of ( f - fig' {unit: 2} + IMPERATIVE_NT'to decide which number is the glulx resource id of ( f - fig' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ResourceIDsOfFigures-->{F} ' HEADING_NT'section 2 - sound effects ( for sounds language element only' {heading 5} {under: H5'section 2 - sound effects ( for sounds language element only )'} {unit: 2} - RULE_NT'to play ( sfx - sound name ) , one time only ( documented at' {unit: 2} + IMPERATIVE_NT'to play ( sfx - sound name ) , one time only ( documented at' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PlaySound(ResourceIDsOfSounds-->{SFX}, {phrase options})' - RULE_NT'to decide which number is the glulx resource id of ( sfx - s' {unit: 2} + IMPERATIVE_NT'to decide which number is the glulx resource id of ( sfx - s' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ResourceIDsOfSounds-->{SFX} ' HEADING_NT'chapter 3 - actions , activities and rules' {heading 4} {under: H4'chapter 3 - actions , activities and rules'} {unit: 2} HEADING_NT'section 1 - trying actions' {heading 5} {under: H5'section 1 - trying actions'} {unit: 2} - RULE_NT'to try ( s - action ) ( documented at ph_try )' {unit: 2} + IMPERATIVE_NT'to try ( s - action ) ( documented at ph_try )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-try-action:S} ' - RULE_NT'to silently try ( s - action ) ( documented at ph_trysilentl' {unit: 2} + IMPERATIVE_NT'to silently try ( s - action ) ( documented at ph_trysilentl' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-try-action-silently:S} ' - RULE_NT'to try silently ( s - action ) ( documented at ph_trysilentl' {unit: 2} + IMPERATIVE_NT'to try silently ( s - action ) ( documented at ph_trysilentl' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-try-action-silently:S} ' - RULE_NT'to decide whether the action is not silent' {unit: 2} + IMPERATIVE_NT'to decide whether the action is not silent' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (keep_silent == false) ' HEADING_NT'section 2 - action requirements' {heading 5} {under: H5'section 2 - action requirements'} {unit: 2} - RULE_NT'to decide whether the action requires a touchable noun ( doc' {unit: 2} + IMPERATIVE_NT'to decide whether the action requires a touchable noun ( doc' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (NeedToTouchNoun()) ' - RULE_NT'to decide whether the action requires a touchable second nou' {unit: 2} + IMPERATIVE_NT'to decide whether the action requires a touchable second nou' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (NeedToTouchSecondNoun()) ' - RULE_NT'to decide whether the action requires a carried noun ( docum' {unit: 2} + IMPERATIVE_NT'to decide whether the action requires a carried noun ( docum' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (NeedToCarryNoun()) ' - RULE_NT'to decide whether the action requires a carried second noun ' {unit: 2} + IMPERATIVE_NT'to decide whether the action requires a carried second noun ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (NeedToCarrySecondNoun()) ' - RULE_NT'to decide whether the action requires light ( documented at ' {unit: 2} + IMPERATIVE_NT'to decide whether the action requires light ( documented at ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (NeedLightForAction()) ' - RULE_NT'to anonymously abide by ( rl - a rule ) ( documented at ph_a' {unit: 2} + IMPERATIVE_NT'to anonymously abide by ( rl - a rule ) ( documented at ph_a' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (temporary_value = FollowRulebook({RL})) { if (Rule' - RULE_NT'to anonymously abide by ( rl - value of kind k based rule pr' {unit: 2} + IMPERATIVE_NT'to anonymously abide by ( rl - value of kind k based rule pr' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (temporary_value = FollowRulebook({RL}, {V}, true)) {' - RULE_NT'to anonymously abide by ( rl - a nothing based rule ) ( docu' {unit: 2} + IMPERATIVE_NT'to anonymously abide by ( rl - a nothing based rule ) ( docu' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (temporary_value = FollowRulebook({RL})) { if (Rule' HEADING_NT'section 3 - stop or continue' {heading 5} {under: H5'section 3 - stop or continue'} {unit: 2} - RULE_NT'to stop the action ( documented at ph_stopaction )' {unit: 2} + IMPERATIVE_NT'to stop the action ( documented at ph_stopaction )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rtrue; - in to only' - RULE_NT'to continue the action ( documented at ph_continueaction )' {unit: 2} + IMPERATIVE_NT'to continue the action ( documented at ph_continueaction )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rfalse; - in to only' HEADING_NT'section 4 - actions as values' {heading 5} {under: H5'section 4 - actions as values'} {unit: 2} - RULE_NT'to decide what action is the current action ( documented at ' {unit: 2} + IMPERATIVE_NT'to decide what action is the current action ( documented at ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- STORED_ACTION_TY_Current({-new:action}) ' - RULE_NT'to decide what action is the action of ( a - action ) ( docu' {unit: 2} + IMPERATIVE_NT'to decide what action is the action of ( a - action ) ( docu' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {A} ' - RULE_NT'to decide if ( act - a action ) involves ( x - an object ) (' {unit: 2} + IMPERATIVE_NT'to decide if ( act - a action ) involves ( x - an object ) (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (STORED_ACTION_TY_Involves({-by-reference:act}, {X})) ' - RULE_NT'to decide what action name is the action name part of ( act ' {unit: 2} + IMPERATIVE_NT'to decide what action name is the action name part of ( act ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (STORED_ACTION_TY_Part({-by-reference:act}, STORA_ACTION' - RULE_NT'to decide what object is the noun part of ( act - a action )' {unit: 2} + IMPERATIVE_NT'to decide what object is the noun part of ( act - a action )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (STORED_ACTION_TY_Part({-by-reference:act}, STORA_NOUN_F' - RULE_NT'to decide what object is the second noun part of ( act - a a' {unit: 2} + IMPERATIVE_NT'to decide what object is the second noun part of ( act - a a' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (STORED_ACTION_TY_Part({-by-reference:act}, STORA_SECOND' - RULE_NT'to decide what object is the actor part of ( act - a action ' {unit: 2} + IMPERATIVE_NT'to decide what object is the actor part of ( act - a action ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (STORED_ACTION_TY_Part({-by-reference:act}, STORA_ACTOR_' HEADING_NT'chapter 4 - the model world' {heading 4} {under: H4'chapter 4 - the model world'} {unit: 2} HEADING_NT'section 1 - ending the story' {heading 5} {under: H5'section 1 - ending the story'} {unit: 2} - RULE_NT'to end the story ( documented at ph_end )' {unit: 2} + IMPERATIVE_NT'to end the story ( documented at ph_end )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- deadflag=3; story_complete=false; ' - RULE_NT'to end the story finally ( documented at ph_endfinally )' {unit: 2} + IMPERATIVE_NT'to end the story finally ( documented at ph_endfinally )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- deadflag=3; story_complete=true; ' - RULE_NT'to end the story saying ( finale - text ) ( documented at ph' {unit: 2} + IMPERATIVE_NT'to end the story saying ( finale - text ) ( documented at ph' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- deadflag={-by-reference:finale}; story_complete=false; ' - RULE_NT'to end the story finally saying ( finale - text ) ( document' {unit: 2} + IMPERATIVE_NT'to end the story finally saying ( finale - text ) ( document' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- deadflag={-by-reference:finale}; story_complete=true; ' - RULE_NT'to decide whether the story has ended ( documented at ph_end' {unit: 2} + IMPERATIVE_NT'to decide whether the story has ended ( documented at ph_end' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (deadflag~=0) ' - RULE_NT'to decide whether the story has ended finally ( documented a' {unit: 2} + IMPERATIVE_NT'to decide whether the story has ended finally ( documented a' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (story_complete) ' - RULE_NT'to decide whether the story has not ended ( documented at ph' {unit: 2} + IMPERATIVE_NT'to decide whether the story has not ended ( documented at ph' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (deadflag==0) ' - RULE_NT'to decide whether the story has not ended finally ( document' {unit: 2} + IMPERATIVE_NT'to decide whether the story has not ended finally ( document' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (story_complete==false) ' - RULE_NT'to resume the story ( documented at ph_resume )' {unit: 2} + IMPERATIVE_NT'to resume the story ( documented at ph_resume )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- resurrect_please = true; ' HEADING_NT'section 2 - times of day' {heading 5} {under: H5'section 2 - times of day'} {unit: 2} - RULE_NT'to decide which number is the minutes part of ( t - time ) (' {unit: 2} + IMPERATIVE_NT'to decide which number is the minutes part of ( t - time ) (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({t}%ONE_HOUR) ' - RULE_NT'to decide which number is the hours part of ( t - time ) ( d' {unit: 2} + IMPERATIVE_NT'to decide which number is the hours part of ( t - time ) ( d' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({t}/ONE_HOUR) ' - RULE_NT'to decide if ( t - time ) is before ( t2 - time ) ( document' {unit: 2} + IMPERATIVE_NT'to decide if ( t - time ) is before ( t2 - time ) ( document' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ((({t}+20*ONE_HOUR)%(TWENTY_FOUR_HOURS))<(({t2}+20*ONE_H' - RULE_NT'to decide if ( t - time ) is after ( t2 - time ) ( documente' {unit: 2} + IMPERATIVE_NT'to decide if ( t - time ) is after ( t2 - time ) ( documente' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ((({t}+20*ONE_HOUR)%(TWENTY_FOUR_HOURS))>(({t2}+20*ONE_H' - RULE_NT'to decide which time is ( t - time ) before ( t2 - time ) ( ' {unit: 2} + IMPERATIVE_NT'to decide which time is ( t - time ) before ( t2 - time ) ( ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (({t2}-{t}+TWENTY_FOUR_HOURS)%(TWENTY_FOUR_HOURS)) ' - RULE_NT'to decide which time is ( t - time ) after ( t2 - time ) ( d' {unit: 2} + IMPERATIVE_NT'to decide which time is ( t - time ) after ( t2 - time ) ( d' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (({t2}+{t}+TWENTY_FOUR_HOURS)%(TWENTY_FOUR_HOURS)) ' HEADING_NT'section 3 - durations' {heading 5} {under: H5'section 3 - durations'} {unit: 2} - RULE_NT'to decide which time is ( n - number ) minutes ( documented ' {unit: 2} + IMPERATIVE_NT'to decide which time is ( n - number ) minutes ( documented ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (({n})%(TWENTY_FOUR_HOURS)) ' - RULE_NT'to decide which time is ( n - number ) hours ( documented at' {unit: 2} + IMPERATIVE_NT'to decide which time is ( n - number ) hours ( documented at' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (({n}*ONE_HOUR)%(TWENTY_FOUR_HOURS)) ' HEADING_NT'section 4 - timed events' {heading 5} {under: H5'section 4 - timed events'} {unit: 2} - RULE_NT'to ( r - rule ) in ( t - number ) turn/turns from now ( docu' {unit: 2} + IMPERATIVE_NT'to ( r - rule ) in ( t - number ) turn/turns from now ( docu' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SetTimedEvent({-mark-event-used:R}, {t}+1, 0); ' - RULE_NT'to ( r - rule ) at ( t - time ) ( documented at ph_attime )' {unit: 2} + IMPERATIVE_NT'to ( r - rule ) at ( t - time ) ( documented at ph_attime )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SetTimedEvent({-mark-event-used:R}, {t}, 1); ' - RULE_NT'to ( r - rule ) in ( t - time ) from now ( documented at ph_' {unit: 2} + IMPERATIVE_NT'to ( r - rule ) in ( t - time ) from now ( documented at ph_' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SetTimedEvent({-mark-event-used:R}, (the_time+{t})%(TWEN' HEADING_NT'section 5 - scenes' {heading 5} {under: H5'section 5 - scenes'} {unit: 2} - RULE_NT'to decide if ( sc - scene ) has happened ( documented at ph_' {unit: 2} + IMPERATIVE_NT'to decide if ( sc - scene ) has happened ( documented at ph_' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (scene_endings-->({sc}-1)) ' - RULE_NT'to decide if ( sc - scene ) has not happened ( documented at' {unit: 2} + IMPERATIVE_NT'to decide if ( sc - scene ) has not happened ( documented at' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (scene_endings-->({sc}-1) == 0) ' - RULE_NT'to decide if ( sc - scene ) has ended ( documented at ph_has' {unit: 2} + IMPERATIVE_NT'to decide if ( sc - scene ) has ended ( documented at ph_has' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (scene_endings-->({sc}-1) > 1) ' - RULE_NT'to decide if ( sc - scene ) has not ended ( documented at ph' {unit: 2} + IMPERATIVE_NT'to decide if ( sc - scene ) has not ended ( documented at ph' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (scene_endings-->({sc}-1) <= 1) ' HEADING_NT'section 6 - timing of scenes' {heading 5} {under: H5'section 6 - timing of scenes'} {unit: 2} - RULE_NT'to decide which time is the time since ( sc - scene ) began ' {unit: 2} + IMPERATIVE_NT'to decide which time is the time since ( sc - scene ) began ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SceneUtility({sc}, 1)) ' - RULE_NT'to decide which time is the time when ( sc - scene ) began (' {unit: 2} + IMPERATIVE_NT'to decide which time is the time when ( sc - scene ) began (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SceneUtility({sc}, 2)) ' - RULE_NT'to decide which time is the time since ( sc - scene ) ended ' {unit: 2} + IMPERATIVE_NT'to decide which time is the time since ( sc - scene ) ended ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SceneUtility({sc}, 3)) ' - RULE_NT'to decide which time is the time when ( sc - scene ) ended (' {unit: 2} + IMPERATIVE_NT'to decide which time is the time when ( sc - scene ) ended (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SceneUtility({sc}, 4)) ' HEADING_NT'section 7 - player's identity and location' {heading 5} {under: H5'section 7 - player's identity and location'} {unit: 2} - RULE_NT'to decide whether in darkness ( documented at ph_indarkness ' {unit: 2} + IMPERATIVE_NT'to decide whether in darkness ( documented at ph_indarkness ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (location==thedark) ' HEADING_NT'section 8 - moving and removing things' {heading 5} {under: H5'section 8 - moving and removing things'} {unit: 2} - RULE_NT'to move ( something - object ) to ( something else - object ' {unit: 2} + IMPERATIVE_NT'to move ( something - object ) to ( something else - object ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MoveObject({something}, {something else}, {phrase option' - RULE_NT'to remove ( something - object ) from play ( deprecated ) ( ' {unit: 2} + IMPERATIVE_NT'to remove ( something - object ) from play ( deprecated ) ( ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RemoveFromPlay({something}); ' - RULE_NT'to move ( o - object ) backdrop to all ( d - description of ' {unit: 2} + IMPERATIVE_NT'to move ( o - object ) backdrop to all ( d - description of ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MoveBackdrop({O}, {D}); ' - RULE_NT'to update backdrop positions ( documented at ph_updatebackdr' {unit: 2} + IMPERATIVE_NT'to update backdrop positions ( documented at ph_updatebackdr' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MoveFloatingObjects(); ' HEADING_NT'section 9 - the map' {heading 5} {under: H5'section 9 - the map'} {unit: 2} - RULE_NT'to decide which room is location of ( o - object ) ( documen' {unit: 2} + IMPERATIVE_NT'to decide which room is location of ( o - object ) ( documen' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LocationOf({O}) ' - RULE_NT'to decide which room is room ( d - direction ) from/of ( r1 ' {unit: 2} + IMPERATIVE_NT'to decide which room is room ( d - direction ) from/of ( r1 ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MapConnection({R1},{D}) ' - RULE_NT'to decide which door is door ( d - direction ) from/of ( r1 ' {unit: 2} + IMPERATIVE_NT'to decide which door is door ( d - direction ) from/of ( r1 ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DoorFrom({R1},{D}) ' - RULE_NT'to decide which object is the other side of ( d - door ) fro' {unit: 2} + IMPERATIVE_NT'to decide which object is the other side of ( d - door ) fro' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- OtherSideOfDoor({D},{R1}) ' - RULE_NT'to decide which object is the direction of ( d - door ) from' {unit: 2} + IMPERATIVE_NT'to decide which object is the direction of ( d - door ) from' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DirectionDoorLeadsIn({D},{R1}) ' - RULE_NT'to decide which object is room-or-door ( d - direction ) fro' {unit: 2} + IMPERATIVE_NT'to decide which object is room-or-door ( d - direction ) fro' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RoomOrDoorFrom({R1},{D}) ' - RULE_NT'to change ( d - direction ) exit of ( r1 - room ) to ( r2 - ' {unit: 2} + IMPERATIVE_NT'to change ( d - direction ) exit of ( r1 - room ) to ( r2 - ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- AssertMapConnection({R1},{D},{R2}); ' - RULE_NT'to change ( d - direction ) exit of ( r1 - room ) to nothing' {unit: 2} + IMPERATIVE_NT'to change ( d - direction ) exit of ( r1 - room ) to nothing' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- AssertMapConnection({R1},{D},nothing); ' - RULE_NT'to decide which room is the front side of ( d - object ) ( d' {unit: 2} + IMPERATIVE_NT'to decide which room is the front side of ( d - object ) ( d' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FrontSideOfDoor({D}) ' - RULE_NT'to decide which room is the back side of ( d - object ) ( do' {unit: 2} + IMPERATIVE_NT'to decide which room is the back side of ( d - object ) ( do' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- BackSideOfDoor({D}) ' HEADING_NT'section 10 - route-finding' {heading 5} {under: H5'section 10 - route-finding'} {unit: 2} - RULE_NT'to decide which object is best route from ( r1 - object ) to' {unit: 2} + IMPERATIVE_NT'to decide which object is best route from ( r1 - object ) to' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MapRouteTo({R1},{R2},0,{phrase options}) ' - RULE_NT'to decide which number is number of moves from ( r1 - object' {unit: 2} + IMPERATIVE_NT'to decide which number is number of moves from ( r1 - object' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MapRouteTo({R1},{R2},0,{phrase options},true) ' - RULE_NT'to decide which object is best route from ( r1 - object ) to' {unit: 2} + IMPERATIVE_NT'to decide which object is best route from ( r1 - object ) to' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MapRouteTo({R1},{R2},{RS},{phrase options}) ' - RULE_NT'to decide which number is number of moves from ( r1 - object' {unit: 2} + IMPERATIVE_NT'to decide which number is number of moves from ( r1 - object' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MapRouteTo({R1},{R2},{RS},{phrase options},true) ' HEADING_NT'section 11 - the object tree' {heading 5} {under: H5'section 11 - the object tree'} {unit: 2} - RULE_NT'to decide which object is holder of ( something - object ) (' {unit: 2} + IMPERATIVE_NT'to decide which object is holder of ( something - object ) (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (HolderOf({something})) ' - RULE_NT'to decide which object is next thing held after ( something ' {unit: 2} + IMPERATIVE_NT'to decide which object is next thing held after ( something ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (sibling({something})) ' - RULE_NT'to decide which object is first thing held by ( something - ' {unit: 2} + IMPERATIVE_NT'to decide which object is first thing held by ( something - ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (child({something})) ' HEADING_NT'chapter 5 - understanding' {heading 4} {under: H4'chapter 5 - understanding'} {unit: 2} HEADING_NT'section 1 - asking yes/no questions' {heading 5} {under: H5'section 1 - asking yes/no questions'} {unit: 2} - RULE_NT'to decide whether player consents ( documented at ph_consent' {unit: 2} + IMPERATIVE_NT'to decide whether player consents ( documented at ph_consent' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- YesOrNo() ' HEADING_NT'section 2 - the player's command' {heading 5} {under: H5'section 2 - the player's command'} {unit: 2} - RULE_NT'to decide if ( s - a snippet ) matches ( t - a topic ) ( doc' {unit: 2} + IMPERATIVE_NT'to decide if ( s - a snippet ) matches ( t - a topic ) ( doc' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SnippetMatches({S}, {T})) ' - RULE_NT'to decide if ( s - a snippet ) does not match ( t - a topic ' {unit: 2} + IMPERATIVE_NT'to decide if ( s - a snippet ) does not match ( t - a topic ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SnippetMatches({S}, {T}) == false) ' - RULE_NT'to decide if ( s - a snippet ) includes ( t - a topic ) ( do' {unit: 2} + IMPERATIVE_NT'to decide if ( s - a snippet ) includes ( t - a topic ) ( do' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (matched_text=SnippetIncludes({T},{S})) ' - RULE_NT'to decide if ( s - a snippet ) does not include ( t - a topi' {unit: 2} + IMPERATIVE_NT'to decide if ( s - a snippet ) does not include ( t - a topi' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SnippetIncludes({T},{S})==0) ' HEADING_NT'section 3 - changing the player's command' {heading 5} {under: H5'section 3 - changing the player's command'} {unit: 2} - RULE_NT'to change the text of the player's command to ( t - text ) (' {unit: 2} + IMPERATIVE_NT'to change the text of the player's command to ( t - text ) (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SetPlayersCommand({-by-reference:T}); ' - RULE_NT'to replace ( s - a snippet ) with ( t - text ) ( documented ' {unit: 2} + IMPERATIVE_NT'to replace ( s - a snippet ) with ( t - text ) ( documented ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SpliceSnippet({S}, {-by-reference:T}); ' - RULE_NT'to cut ( s - a snippet ) ( documented at ph_cutsnippet )' {unit: 2} + IMPERATIVE_NT'to cut ( s - a snippet ) ( documented at ph_cutsnippet )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SpliceSnippet({S}, 0); ' - RULE_NT'to reject the player's command ( documented at ph_rejectcomm' {unit: 2} + IMPERATIVE_NT'to reject the player's command ( documented at ph_rejectcomm' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RulebookFails(); rtrue; - in to only' HEADING_NT'section 4 - scope and pronouns' {heading 5} {under: H5'section 4 - scope and pronouns'} {unit: 2} - RULE_NT'to place ( o - an object ) in scope , but not its contents (' {unit: 2} + IMPERATIVE_NT'to place ( o - an object ) in scope , but not its contents (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PlaceInScope({O}, {phrase options}); ' - RULE_NT'to place the/-- contents of ( o - an object ) in scope ( doc' {unit: 2} + IMPERATIVE_NT'to place the/-- contents of ( o - an object ) in scope ( doc' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ScopeWithin({O}); ' - RULE_NT'to set pronouns from ( o - an object ) ( documented at ph_se' {unit: 2} + IMPERATIVE_NT'to set pronouns from ( o - an object ) ( documented at ph_se' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PronounNotice({O}); ' HEADING_NT'section 5 - the multiple object list' {heading 5} {under: H5'section 5 - the multiple object list'} {unit: 2} - RULE_NT'to decide what list of objects is the multiple object list (' {unit: 2} + IMPERATIVE_NT'to decide what list of objects is the multiple object list (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Mol({-new:list of objects}) ' - RULE_NT'to alter the multiple object list to ( l - list of objects )' {unit: 2} + IMPERATIVE_NT'to alter the multiple object list to ( l - list of objects )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Set_Mol({-by-reference:L}); ' HEADING_NT'section sr5/8/1 - message support - issuance - unindexed' {heading 5} {under: H5'section sr5/8/1 - message support - issuance - unindexed'} {unit: 2} - RULE_NT'to issue score notification message' {unit: 2} + IMPERATIVE_NT'to issue score notification message' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- NotifyTheScore(); ' - RULE_NT'to say pronoun dictionary word' {unit: 2} + IMPERATIVE_NT'to say pronoun dictionary word' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (address) pronoun_word; ' - RULE_NT'to say recap of command' {unit: 2} + IMPERATIVE_NT'to say recap of command' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PrintCommand(); ' SENTENCE_NT'the pronoun reference object is an object that varies' {unit: 2} {classified} @@ -18346,104 +16226,104 @@ ROOT_NT VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 3} UNPARSED_NOUN_NT'pronoun reference object variable' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'pronoun_obj' - RULE_NT'to say pronoun i6 dictionary word' {unit: 2} + IMPERATIVE_NT'to say pronoun i6 dictionary word' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (address) pronoun_word; ' - RULE_NT'to say parser command so far' {unit: 2} + IMPERATIVE_NT'to say parser command so far' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PrintCommand(); ' HEADING_NT'chapter 6 - deprecated or private phrases - unindexed' {heading 4} {under: H4'chapter 6 - deprecated or private phrases - unindexed'} {unit: 2} HEADING_NT'section 1 - spatial modelling - unindexed' {heading 5} {under: H5'section 1 - spatial modelling - unindexed'} {unit: 2} - RULE_NT'to decide which object is the component parts core of ( x - ' {unit: 2} + IMPERATIVE_NT'to decide which object is the component parts core of ( x - ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CoreOf({X}) ' - RULE_NT'to decide which object is the common ancestor of ( o - an ob' {unit: 2} + IMPERATIVE_NT'to decide which object is the common ancestor of ( o - an ob' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (CommonAncestor({O}, {P})) ' - RULE_NT'to decide which object is the not-counting-parts holder of (' {unit: 2} + IMPERATIVE_NT'to decide which object is the not-counting-parts holder of (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (CoreOfParentOfCoreOf({O})) ' - RULE_NT'to decide which object is the visibility-holder of ( o - obj' {unit: 2} + IMPERATIVE_NT'to decide which object is the visibility-holder of ( o - obj' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- VisibilityParent({O}) ' - RULE_NT'to calculate visibility ceiling at low level' {unit: 2} + IMPERATIVE_NT'to calculate visibility ceiling at low level' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FindVisibilityLevels(); ' - RULE_NT'to decide which object is the touchability ceiling of ( o - ' {unit: 2} + IMPERATIVE_NT'to decide which object is the touchability ceiling of ( o - ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TouchabilityCeiling({O}) ' - RULE_NT'to decide which number is the visibility ceiling count calcu' {unit: 2} + IMPERATIVE_NT'to decide which number is the visibility ceiling count calcu' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- visibility_levels ' - RULE_NT'to decide which object is the visibility ceiling calculated' {unit: 2} + IMPERATIVE_NT'to decide which object is the visibility ceiling calculated' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- visibility_ceiling ' HEADING_NT'section 2 - room descriptions - unindexed' {heading 5} {under: H5'section 2 - room descriptions - unindexed'} {unit: 2} - RULE_NT'to produce a room description with going spacing conventions' {unit: 2} + IMPERATIVE_NT'to produce a room description with going spacing conventions' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LookAfterGoing(); ' - RULE_NT'to print the location's description' {unit: 2} + IMPERATIVE_NT'to print the location's description' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PrintOrRun(location, description); ' - RULE_NT'to decide if set to sometimes abbreviated room descriptions' {unit: 2} + IMPERATIVE_NT'to decide if set to sometimes abbreviated room descriptions' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (lookmode == 1) ' - RULE_NT'to decide if set to unabbreviated room descriptions' {unit: 2} + IMPERATIVE_NT'to decide if set to unabbreviated room descriptions' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (lookmode == 2) ' - RULE_NT'to decide if set to abbreviated room descriptions' {unit: 2} + IMPERATIVE_NT'to decide if set to abbreviated room descriptions' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (lookmode == 3) ' HEADING_NT'section 3 - action conversion - unindexed' {heading 5} {under: H5'section 3 - action conversion - unindexed'} {unit: 2} - RULE_NT'to convert to ( an - an action name ) on ( o - an object )' {unit: 2} + IMPERATIVE_NT'to convert to ( an - an action name ) on ( o - an object )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- return GVS_Convert({AN},{O},0); - in to only' - RULE_NT'to convert to request of ( x - object ) to perform ( an - ac' {unit: 2} + IMPERATIVE_NT'to convert to request of ( x - object ) to perform ( an - ac' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- return ConvertToRequest({X}, {AN}, {Y}, {Z}); ' - RULE_NT'to convert to special going-with-push action' {unit: 2} + IMPERATIVE_NT'to convert to special going-with-push action' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- return ConvertToGoingWithPush(); ' HEADING_NT'section 4 - surreptitious violation of invariants - unindexe' {heading 5} {under: H5'section 4 - surreptitious violation of invariants - unindexed'} {unit: 2} - RULE_NT'to surreptitiously move ( something - object ) to ( somethin' {unit: 2} + IMPERATIVE_NT'to surreptitiously move ( something - object ) to ( somethin' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- move {something} to {something else}; ' - RULE_NT'to surreptitiously move ( something - object ) to ( somethin' {unit: 2} + IMPERATIVE_NT'to surreptitiously move ( something - object ) to ( somethin' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MoveDuringGoing({something}, {something else}); ' - RULE_NT'to surreptitiously reckon darkness' {unit: 2} + IMPERATIVE_NT'to surreptitiously reckon darkness' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SilentlyConsiderLight(); ' HEADING_NT'section 5 - capitalised list-writing - unindexed' {heading 5} {under: H5'section 5 - capitalised list-writing - unindexed'} {unit: 2} - RULE_NT'to say list-writer list of marked objects' {unit: 2} + IMPERATIVE_NT'to say list-writer list of marked objects' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- WriteListOfMarkedObjects(ENGLISH_BIT); ' - RULE_NT'to say list-writer articled list of marked objects' {unit: 2} + IMPERATIVE_NT'to say list-writer articled list of marked objects' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- WriteListOfMarkedObjects(ENGLISH_BIT+DEFART_BIT+CFIRS' HEADING_NT'section 6 - printing names - unindexed' {heading 5} {under: H5'section 6 - printing names - unindexed'} {unit: 2} - RULE_NT'to decide if expanding text for comparison purposes' {unit: 2} + IMPERATIVE_NT'to decide if expanding text for comparison purposes' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- say__comp ' HEADING_NT'section 7 - command parsing - unindexed' {heading 5} {under: H5'section 7 - command parsing - unindexed'} {unit: 2} - RULE_NT'to decide whether the i6 parser is running multiple actions' {unit: 2} + IMPERATIVE_NT'to decide whether the i6 parser is running multiple actions' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (multiflag==1) ' HEADING_NT'section 8 - deprecated inform - unindexed' {heading 5} {under: H5'section 8 - deprecated inform - unindexed'} {unit: 2} - RULE_NT'to yes ( documented at ph_yes )' {unit: 2} + IMPERATIVE_NT'to yes ( documented at ph_yes )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rtrue; - in to decide if only' - RULE_NT'to no ( documented at ph_no )' {unit: 2} + IMPERATIVE_NT'to no ( documented at ph_no )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rfalse; - in to decide if only' HEADING_NT'section 9 - debugging inform - unindexed' {heading 5} {under: H5'section 9 - debugging inform - unindexed'} {unit: 2} - RULE_NT'to ***' {unit: 2} + IMPERATIVE_NT'to ***' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:verbose-checking} ' - RULE_NT'to *** ( t - text )' {unit: 2} + IMPERATIVE_NT'to *** ( t - text )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:verbose-checking} ' ENDHERE_NT'the standard rules' {unit: 2} @@ -18462,21 +16342,19 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'asking for information' UNPARSED_NOUN_NT'out of world' - RULE_NT'carry out asking for information' {unit: 4} + IMPERATIVE_NT'carry out asking for information' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "An implementation of the following creative brief:Peo' {control structure: SAY} INVOCATION_LIST_SAY_NT'"An implementation of the following creative brief:People ' INVOCATION_NT'"An implementation of the following creative brief:People ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"An implementation of the following creative brief:People ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"An implementation of the following creative brief:People ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"An implementation of the following creative brief:People ' {kind: text} - RULE_NT'when play begins' {unit: 4} + IMPERATIVE_NT'when play begins' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "Gelato's Syndrome. It's struck, and it's struck hard. I' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Gelato's Syndrome. It's struck, and it's struck hard. In th' INVOCATION_NT'"Gelato's Syndrome. It's struck, and it's struck hard. In th' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Gelato's Syndrome. It's struck, and it's struck hard. In th' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Gelato's Syndrome. It's struck, and it's struck hard. In th' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Gelato's Syndrome. It's struck, and it's struck hard. In th' {kind: text} INVOCATION_LIST_NT'now the command prompt is "[if the destination of the player' {control structure: NOW} CONDITION_CONTEXT_NT'the command prompt is "[if the destination of the player is ' @@ -18489,22 +16367,19 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'current owner' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'current owner' {nonlocal: 'current owner'(var)person}} {created here} COMMON_NOUN_NT'person which varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=people variable-pointer(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'every turn' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if player is active' {colon_block_command} INVOCATION_NT'if player is active' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is active' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is active' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is active' {proposition: << active('player') >>} {term: 'player'} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the character movement rules' {results_from_splitting} {indent: 1} INVOCATION_NT'follow the character movement rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'character movement rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'character movement rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'character movement rules' {kind: rulebook} {rulebook: character movement}{meaning: {character movement rules = RULEBOOK_MC}} - RULE_NT'every turn' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the last person named is the player' {control structure: NOW} CONDITION_CONTEXT_NT'the last person named is the player' @@ -18527,7 +16402,7 @@ ROOT_NT VERB_NT'are' {verb 'be' 3p p act IS_TENSE +ve} PROPER_NOUN_NT'character movement rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: character movement}} {created here} COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'the first character movement rule' {unit: 4} + IMPERATIVE_NT'the first character movement rule' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now group size is 1' {control structure: NOW} CONDITION_CONTEXT_NT'group size is 1' @@ -18537,193 +16412,163 @@ ROOT_NT CONDITION_CONTEXT_NT'the last thing named is the player' INVOCATION_LIST_NT'now the player is passive' {control structure: NOW} CONDITION_CONTEXT_NT'the player is passive' - RULE_NT'a character movement rule' {unit: 4} + IMPERATIVE_NT'a character movement rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with mover running through innocent people' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with mover running through innocent people' {phrase invoked: call} {kind variable declarations: K=person} - NEW_LOCAL_CONTEXT_NT'mover' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: person} {required: K} + NEW_LOCAL_CONTEXT_NT'mover' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: person} {required: K} UNKNOWN_NT'mover' - RVALUE_CONTEXT_NT'innocent people' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'innocent people' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'innocent people' {kind: description of people} {proposition: << kind=person(x) ^ innocent(x) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'now the current actor is the mover' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the current actor is the mover' INVOCATION_LIST_NT'follow the shopper rules' {indent: 2} INVOCATION_NT'follow the shopper rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'shopper rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'shopper rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'shopper rules' {kind: rulebook} {rulebook: shopper}{meaning: {shopper rules = RULEBOOK_MC}} INVOCATION_LIST_NT'now the current actor is passive' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the current actor is passive' INVOCATION_LIST_NT'follow the movement reporting rule' {indent: 1} INVOCATION_NT'follow the movement reporting rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'movement reporting rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'movement reporting rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'movement reporting rule' {kind: rule} {rule: movement reporting rule}{meaning: {movement reporting rule = MISCELLANEOUS_MC}} - RULE_NT'a character movement rule' {unit: 4} + IMPERATIVE_NT'a character movement rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with next mover running through mercantile people' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with next mover running through mercantile people' {phrase invoked: call} {kind variable declarations: K=person} - NEW_LOCAL_CONTEXT_NT'next mover' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: person} {required: K} + NEW_LOCAL_CONTEXT_NT'next mover' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: person} {required: K} UNKNOWN_NT'next mover' - RVALUE_CONTEXT_NT'mercantile people' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'mercantile people' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'mercantile people' {kind: description of people} {proposition: << kind=person(x) ^ mercantile(x) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'now the current owner is the next mover' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the current owner is the next mover' INVOCATION_LIST_NT'follow the shopowner rules' {indent: 2} INVOCATION_NT'follow the shopowner rules' {phrase invoked: call} - RVALUE_CONTEXT_NT'shopowner rules' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'shopowner rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'shopowner rules' {kind: rulebook} {rulebook: shopowner}{meaning: {shopowner rules = RULEBOOK_MC}} INVOCATION_LIST_NT'now the current owner is passive' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the current owner is passive' INVOCATION_LIST_NT'follow the infection rule' {indent: 1} INVOCATION_NT'follow the infection rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'infection rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'infection rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'infection rule' {kind: rule} {rule: infection rule}{meaning: {infection rule = MISCELLANEOUS_MC}} - RULE_NT'to decide whether movement has not yet occurred' {unit: 4} + IMPERATIVE_NT'to decide whether movement has not yet occurred' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is passive' {colon_block_command} INVOCATION_NT'if the player is passive' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is passive' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is passive' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is passive' {proposition: << passive('player') >>} {term: 'player'} CODE_BLOCK_NT INVOCATION_LIST_NT'no' {results_from_splitting} {indent: 1} INVOCATION_NT'no' {phrase invoked: call} INVOCATION_LIST_NT'yes' INVOCATION_NT'yes' {phrase invoked: call} - RULE_NT'definition' {unit: 4} - RULE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} SENTENCE_NT'the shopowner rules is a rulebook' {unit: 4} {classified} {clears pronouns} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'shopowner rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: shopowner}} {created here} COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'a shopowner rule' {unit: 4} + IMPERATIVE_NT'a shopowner rule' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let the shop be a random room owned by the current owner' INVOCATION_NT'let the shop be a random room owned by the current owner' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'shop' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} + NEW_LOCAL_CONTEXT_NT'shop' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} UNKNOWN_NT'shop' - RVALUE_CONTEXT_NT'a random room owned by the current owner' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'a random room owned by the current owner' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'a random room owned by the current owner' INVOCATION_LIST_NT'a random room owned by the current owner' INVOCATION_NT'a random room owned by the current owner' {phrase invoked: call} {resulting: room} {kind variable declarations: K=room} - RVALUE_CONTEXT_NT'room owned by the current owner' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'room owned by the current owner' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'room owned by the current owner' {kind: description of rooms} {proposition: << kind=room(x) ^ ('the current owner' == <(QUOTED_INAME_0_0000005d(*1)) : x>) >>} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the shop is air-conditioned and an open door ( called the' {colon_block_command} INVOCATION_NT'if the shop is air-conditioned and an open door ( called the' {phrase invoked: call} - CONDITION_CONTEXT_NT'shop is air-conditioned and an open door ( called the escape' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'shop is air-conditioned and an open door ( called the escape' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'shop is air-conditioned and an open door ( called the escape' TEST_PROPOSITION_NT'shop is air-conditioned' {proposition: << air-conditioned('shop') >>} {term: 'shop'} TEST_PROPOSITION_NT'an open door ( called the escape ) protects the shop' {proposition: << Exists x : kind=door(x) ^ open(x) ^ called='escape':door(x) ^ protection(x, 'the shop') >>} {term: x} CODE_BLOCK_NT INVOCATION_LIST_NT'try the current owner closing the escape' {results_from_splitting} {indent: 1} INVOCATION_NT'try the current owner closing the escape' {phrase invoked: call} - RVALUE_CONTEXT_NT'current owner closing the escape' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'current owner closing the escape' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'current owner closing the escape' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'current owner closing the escape' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'report someone closing a door when the person asked owns the' {unit: 4} + IMPERATIVE_NT'report someone closing a door when the person asked owns the' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked], muttering darkly about air-conditio' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'", muttering darkly about air-conditioning and electricity, ' INVOCATION_NT'", muttering darkly about air-conditioning and electricity, ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", muttering darkly about air-conditioning and electricity, ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", muttering darkly about air-conditioning and electricity, ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", muttering darkly about air-conditioning and electricity, ' {kind: text} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'report vanessa closing the metal door when the metal door is' {unit: 4} + IMPERATIVE_NT'report vanessa closing the metal door when the metal door is' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if vanessa is visible' {colon_block_command} INVOCATION_NT'if vanessa is visible' {phrase invoked: call} - CONDITION_CONTEXT_NT'vanessa is visible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'vanessa is visible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'vanessa is visible' {proposition: << visible('vanessa') >>} {term: 'vanessa'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Vanessa watches serenely as the metal door slides autom' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Vanessa watches serenely as the metal door slides automatic' INVOCATION_NT'"Vanessa watches serenely as the metal door slides automatic' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Vanessa watches serenely as the metal door slides automatic' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Vanessa watches serenely as the metal door slides automatic' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Vanessa watches serenely as the metal door slides automatic' {kind: text} CODE_BLOCK_NT {control structure: INS} CODE_BLOCK_NT'otherwise' {results_from_splitting} {control structure: O} CODE_BLOCK_NT'say "The metal door slides heavily back into place."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"The metal door slides heavily back into place."' INVOCATION_NT'"The metal door slides heavily back into place."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"The metal door slides heavily back into place."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"The metal door slides heavily back into place."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"The metal door slides heavily back into place."' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'a shopowner rule' {unit: 4} + IMPERATIVE_NT'a shopowner rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the location of the current owner encloses a submitted ar' {colon_block_command} {indent: 1} INVOCATION_NT'if the location of the current owner encloses a submitted ar' {phrase invoked: call} - CONDITION_CONTEXT_NT'location of the current owner encloses a submitted artwork (' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location of the current owner encloses a submitted artwork (' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'location of the current owner encloses a submitted artwork (' {proposition: << Exists x : kind=artwork(x) ^ submitted(x) ^ called='target':artwork(x) ^ encloses('location of the current owner', x) >>} {term: 'location of the current owner'} CODE_BLOCK_NT INVOCATION_LIST_NT'try the current owner filing the target' {indent: 2} INVOCATION_NT'try the current owner filing the target' {phrase invoked: call} - RVALUE_CONTEXT_NT'current owner filing the target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'current owner filing the target' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'current owner filing the target' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'current owner filing the target' {kind: action} {explicit action: } SENTENCE_NT'filing is an action applying to one thing' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'filing' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'before someone filing something which is not carried by the ' {unit: 4} + IMPERATIVE_NT'before someone filing something which is not carried by the ' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked taking the noun' INVOCATION_NT'try the person asked taking the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked taking the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked taking the noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked taking the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked taking the noun' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out someone filing' {unit: 4} + IMPERATIVE_NT'carry out someone filing' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked does not carry the noun and the person a' {colon_block_command} INVOCATION_NT'if the person asked does not carry the noun and the person a' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked does not carry the noun and the person asked is' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked does not carry the noun and the person asked is' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'person asked does not carry the noun and the person asked is' TEST_PROPOSITION_NT'person asked does not carry the noun' {proposition: << NOT< ('person asked' == ) NOT> >>} {term: 'person asked'} TEST_PROPOSITION_NT'the person asked is visible' {proposition: << visible('the person asked') >>} {term: 'the person asked'} @@ -18731,114 +16576,94 @@ ROOT_NT CODE_BLOCK_NT'say "[The person asked] tries unsuccessfully to get [the nou' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" tries unsuccessfully to get "' INVOCATION_NT'" tries unsuccessfully to get "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" tries unsuccessfully to get "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" tries unsuccessfully to get "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" tries unsuccessfully to get "' {kind: text} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT {control structure: INS} INVOCATION_LIST_NT'now the noun is nowhere' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is nowhere' - RULE_NT'report someone filing' {unit: 4} + IMPERATIVE_NT'report someone filing' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] registers [the noun] and files it aw' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" registers "' INVOCATION_NT'" registers "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" registers "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" registers "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" registers "' {kind: text} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" and files it away."' INVOCATION_NT'" and files it away."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" and files it away."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" and files it away."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" and files it away."' {kind: text} SENTENCE_NT'the shopper rules is a rulebook' {unit: 4} {classified} {clears pronouns} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'shopper rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: shopper}} {created here} COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'a shopper rule' {unit: 4} + IMPERATIVE_NT'a shopper rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the current actor carries something ( called the problem ' {colon_block_command} INVOCATION_NT'if the current actor carries something ( called the problem ' {phrase invoked: call} - CONDITION_CONTEXT_NT'current actor carries something ( called the problem )' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'current actor carries something ( called the problem )' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'current actor carries something ( called the problem )' {proposition: << Exists x : kind=thing_c(x) ^ called='problem':thing(x) ^ ('current actor' == ) >>} {term: 'current actor'} CODE_BLOCK_NT INVOCATION_LIST_NT'try the current actor resolving the problem' {results_from_splitting} {indent: 1} INVOCATION_NT'try the current actor resolving the problem' {phrase invoked: call} - RVALUE_CONTEXT_NT'current actor resolving the problem' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'current actor resolving the problem' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'current actor resolving the problem' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'current actor resolving the problem' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'a shopper rule' {unit: 4} + IMPERATIVE_NT'a shopper rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the current actor is not in the pool hall and the air con' {colon_block_command} {indent: 1} INVOCATION_NT'if the current actor is not in the pool hall and the air con' {phrase invoked: call} - CONDITION_CONTEXT_NT'current actor is not in the pool hall and the air conditione' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'current actor is not in the pool hall and the air conditione' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'current actor is not in the pool hall and the air conditione' TEST_PROPOSITION_NT'current actor is not in the pool hall' {proposition: << NOT< ('the pool hall' == ) NOT> >>} {term: 'current actor'} TEST_PROPOSITION_NT'the air conditioner is switched on' {proposition: << switched on('the air conditioner') >>} {term: 'the air conditioner'} CODE_BLOCK_NT INVOCATION_LIST_NT'try the current actor approaching the pool hall' {indent: 2} INVOCATION_NT'try the current actor approaching the pool hall' {phrase invoked: call} - RVALUE_CONTEXT_NT'current actor approaching the pool hall' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'current actor approaching the pool hall' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'current actor approaching the pool hall' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'current actor approaching the pool hall' {kind: action} {explicit action: } CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} INVOCATION_LIST_NT'let way be a random direction' {indent: 2} INVOCATION_NT'let way be a random direction' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: direction} {required: value} + NEW_LOCAL_CONTEXT_NT'way' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: direction} {required: value} UNKNOWN_NT'way' - RVALUE_CONTEXT_NT'a random direction' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'a random direction' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'a random direction' INVOCATION_LIST_NT'a random direction' INVOCATION_NT'a random direction' {phrase invoked: call} {resulting: direction} {kind variable declarations: K=direction} - RVALUE_CONTEXT_NT'direction' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'direction' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'direction' {kind: description of directions} {proposition: << kind=direction(x) >>} INVOCATION_LIST_NT'try the current actor going the way' {indent: 2} INVOCATION_NT'try the current actor going the way' {phrase invoked: call} - RVALUE_CONTEXT_NT'current actor going the way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'current actor going the way' {kind: action} {action pattern: direction}>} - RULE_NT'definition' {unit: 4} + RVALUE_CONTEXT_NT'current actor going the way' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'current actor going the way' {kind: action} {explicit action: direction}>} + IMPERATIVE_NT'definition' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if it is outdoors' {colon_block_command} INVOCATION_NT'if it is outdoors' {phrase invoked: call} - CONDITION_CONTEXT_NT'it is outdoors' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'it is outdoors' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'it is outdoors' {proposition: << outdoors('it') >>} {term: 'it'} CODE_BLOCK_NT INVOCATION_LIST_NT'no' {results_from_splitting} {indent: 1} @@ -18846,9 +16671,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if it is the pool hall and the air conditioner is switched o' {colon_block_command} INVOCATION_NT'if it is the pool hall and the air conditioner is switched o' {phrase invoked: call} - CONDITION_CONTEXT_NT'it is the pool hall and the air conditioner is switched off' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'it is the pool hall and the air conditioner is switched off' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'it is the pool hall and the air conditioner is switched off' TEST_PROPOSITION_NT'it is the pool hall' {proposition: << ('it' == 'the pool hall') >>} {term: 'it'} TEST_PROPOSITION_NT'the air conditioner is switched off' {proposition: << switched off('the air conditioner') >>} {term: 'the air conditioner'} @@ -18858,9 +16681,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if it is protected by a door' {colon_block_command} INVOCATION_NT'if it is protected by a door' {phrase invoked: call} - CONDITION_CONTEXT_NT'it is protected by a door' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'it is protected by a door' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'it is protected by a door' {proposition: << Exists x : kind=door(x) ^ protection(x, 'it') >>} {term: 'it'} CODE_BLOCK_NT INVOCATION_LIST_NT'yes' {results_from_splitting} {indent: 1} @@ -18894,12 +16715,12 @@ ROOT_NT COMMON_NOUN_NT'artwork' {indefinite 'an' n/m/f nom/acc s} {refined} {creation: << kind=artwork(x) >>} {refers: infs'artwork'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of thing' {refined} {refers: infs'thing'} COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before printing the name of an artwork' {unit: 4} + IMPERATIVE_NT'before printing the name of an artwork' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say italic type' {control structure: SAY} INVOCATION_LIST_SAY_NT'italic type' INVOCATION_NT'italic type' {phrase invoked: call} - RULE_NT'after printing the name of an artwork' {unit: 4} + IMPERATIVE_NT'after printing the name of an artwork' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say roman type' {control structure: SAY} INVOCATION_LIST_SAY_NT'roman type' @@ -18916,143 +16737,121 @@ ROOT_NT COMMON_NOUN_NT'book' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=book(x) >>} {refers: infs'book'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of artwork' {refined} {refers: infs'artwork'} COMMON_NOUN_NT'artwork' {refined} {refers: infs'artwork'} {creation: << kind=artwork(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before someone resolving a book when the person asked is not' {unit: 4} + IMPERATIVE_NT'before someone resolving a book when the person asked is not' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked approaching the public library' INVOCATION_NT'try the person asked approaching the public library' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked approaching the public library' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked approaching the public library' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked approaching the public library' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked approaching the public library' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out someone resolving a book' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a book' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'move the noun to the public library' INVOCATION_NT'move the noun to the public library' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RVALUE_CONTEXT_NT'public library' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'public library' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} CONSTANT_NT'public library' {kind: room} {instance: I110'public library'} {enumeration: 0} INVOCATION_LIST_NT'now the noun is submitted' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is submitted' - RULE_NT'report someone resolving a book' {unit: 4} + IMPERATIVE_NT'report someone resolving a book' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] turns in [the noun]."' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" turns in "' INVOCATION_NT'" turns in "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" turns in "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" turns in "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" turns in "' {kind: text} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} - RULE_NT'before listing contents' {unit: 4} + IMPERATIVE_NT'before listing contents' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'group books together' INVOCATION_NT'group books together' {phrase invoked: call} - RVALUE_CONTEXT_NT'books' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'books' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'books' {kind: description of books} {proposition: << kind=book(x) >>} - RULE_NT'before grouping together books' {unit: 4} + IMPERATIVE_NT'before grouping together books' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "books entitled "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"books entitled "' INVOCATION_NT'"books entitled "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"books entitled "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"books entitled "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"books entitled "' {kind: text} SENTENCE_NT'a stamped envelope is a kind of thing' {unit: 4} {classified} {interpretation of subject: infs'book'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} COMMON_NOUN_NT'stamped envelope' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=stamped envelope(x) >>} {refers: infs'stamped envelope'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of thing' {refined} {refers: infs'thing'} COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before someone resolving a stamped envelope when the person ' {unit: 4} + IMPERATIVE_NT'before someone resolving a stamped envelope when the person ' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked approaching the post office' INVOCATION_NT'try the person asked approaching the post office' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked approaching the post office' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked approaching the post office' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked approaching the post office' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked approaching the post office' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out someone resolving a stamped envelope' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a stamped envelope' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is nowhere' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is nowhere' - RULE_NT'report someone resolving a stamped envelope' {unit: 4} + IMPERATIVE_NT'report someone resolving a stamped envelope' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] slips [a noun] into the outgoing mai' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" slips "' INVOCATION_NT'" slips "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" slips "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" slips "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" slips "' {kind: text} INVOCATION_LIST_SAY_NT'a noun' INVOCATION_NT'a noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" into the outgoing mail slot."' INVOCATION_NT'" into the outgoing mail slot."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" into the outgoing mail slot."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" into the outgoing mail slot."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" into the outgoing mail slot."' {kind: text} - RULE_NT'instead of someone resolving a stamped envelope when the per' {unit: 4} + IMPERATIVE_NT'instead of someone resolving a stamped envelope when the per' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is visible' {indent: 1} {colon_block_command} INVOCATION_NT'if the person asked is visible' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is visible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is visible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is visible' {proposition: << visible('person asked') >>} {term: 'person asked'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] shoves into the mail slot [a list of' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" shoves into the mail slot "' INVOCATION_NT'" shoves into the mail slot "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" shoves into the mail slot "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" shoves into the mail slot "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" shoves into the mail slot "' {kind: text} INVOCATION_LIST_SAY_NT'a list of stamped envelopes carried by the person asked' INVOCATION_NT'a list of stamped envelopes carried by the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'stamped envelopes carried by the person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'stamped envelopes carried by the person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'stamped envelopes carried by the person asked' {kind: description of stamped envelopes} {proposition: << kind=stamped envelope(x) ^ ('the person asked' == ) >>} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with item running through stamped envelopes carried b' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with item running through stamped envelopes carried b' {phrase invoked: call} {kind variable declarations: K=stamped envelope} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: stamped envelope} {required: K} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: stamped envelope} {required: K} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'stamped envelopes carried by the person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'stamped envelopes carried by the person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'stamped envelopes carried by the person asked' {kind: description of stamped envelopes} {proposition: << kind=stamped envelope(x) ^ ('the person asked' == ) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'now the item is nowhere' {indent: 2} {control structure: NOW} @@ -19062,139 +16861,116 @@ ROOT_NT COMMON_NOUN_NT'dvd' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=dvd(x) >>} {refers: infs'dvd'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of artwork' {refined} {refers: infs'artwork'} COMMON_NOUN_NT'artwork' {refined} {refers: infs'artwork'} {creation: << kind=artwork(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before someone resolving a dvd when the person asked is not ' {unit: 4} + IMPERATIVE_NT'before someone resolving a dvd when the person asked is not ' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked approaching the rental store' INVOCATION_NT'try the person asked approaching the rental store' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked approaching the rental store' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked approaching the rental store' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked approaching the rental store' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked approaching the rental store' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out someone resolving a dvd' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a dvd' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is submitted' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is submitted' INVOCATION_LIST_NT'move the noun to the movie rental store' INVOCATION_NT'move the noun to the movie rental store' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RVALUE_CONTEXT_NT'movie rental store' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'movie rental store' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} CONSTANT_NT'movie rental store' {kind: room} {instance: I104'movie rental store'} {enumeration: 0} - RULE_NT'report someone resolving a dvd' {unit: 4} + IMPERATIVE_NT'report someone resolving a dvd' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] returns [the noun]."' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" returns "' INVOCATION_NT'" returns "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" returns "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" returns "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" returns "' {kind: text} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} - RULE_NT'instead of someone resolving a dvd when the person asked car' {unit: 4} + IMPERATIVE_NT'instead of someone resolving a dvd when the person asked car' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is visible' {colon_block_command} INVOCATION_NT'if the person asked is visible' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is visible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is visible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is visible' {proposition: << visible('person asked') >>} {term: 'person asked'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] turns in [a list of DVDs carried by ' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" turns in "' INVOCATION_NT'" turns in "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" turns in "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" turns in "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" turns in "' {kind: text} INVOCATION_LIST_SAY_NT'a list of dvds carried by the person asked' INVOCATION_NT'a list of dvds carried by the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'dvds carried by the person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'dvds carried by the person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'dvds carried by the person asked' {kind: description of dvds} {proposition: << kind=dvd(x) ^ ('the person asked' == ) >>} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} INVOCATION_LIST_NT'now every dvd carried by the person asked is submitted' {control structure: NOW} CONDITION_CONTEXT_NT'every dvd carried by the person asked is submitted' INVOCATION_LIST_NT'now every dvd carried by the person asked is in the location' {control structure: NOW} CONDITION_CONTEXT_NT'every dvd carried by the person asked is in the location of ' - RULE_NT'before listing contents' {unit: 4} + IMPERATIVE_NT'before listing contents' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'group dvds together' INVOCATION_NT'group dvds together' {phrase invoked: call} - RVALUE_CONTEXT_NT'dvds' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'dvds' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'dvds' {kind: description of dvds} {proposition: << kind=dvd(x) >>} - RULE_NT'before grouping together dvds' {unit: 4} + IMPERATIVE_NT'before grouping together dvds' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "DVDs of "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"DVDs of "' INVOCATION_NT'"DVDs of "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"DVDs of "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"DVDs of "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"DVDs of "' {kind: text} SENTENCE_NT'approaching is an action applying to one thing' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'approaching' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'carry out someone approaching' {unit: 4} + IMPERATIVE_NT'carry out someone approaching' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let the way be the best route from the location of the perso' INVOCATION_NT'let the way be the best route from the location of the perso' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'way' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'way' - RVALUE_CONTEXT_NT'best route from the location of the person asked to the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'best route from the location of the person asked to the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'best route from the location of the person asked to the noun' INVOCATION_LIST_NT'best route from the location of the person asked to the noun' INVOCATION_NT'best route from the location of the person asked to the noun' {phrase invoked: call} {resulting: object} {phrase options invoked: using doors} - RVALUE_CONTEXT_NT'location of the person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'location of the person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} PHRASE_TO_DECIDE_VALUE_NT'location of the person asked' INVOCATION_LIST_NT'location of the person asked' INVOCATION_NT'location of the person asked' {phrase invoked: call} {resulting: room} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the way is a direction' {colon_block_command} INVOCATION_NT'if the way is a direction' {phrase invoked: call} - CONDITION_CONTEXT_NT'way is a direction' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'way is a direction' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'way is a direction' {proposition: << kind=direction('way') >>} {term: 'way'} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked going the way' {results_from_splitting} {indent: 1} INVOCATION_NT'try the person asked going the way' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked going the way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked going the way' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked going the way' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked going the way' {kind: action} {explicit action: } CODE_BLOCK_NT'otherwise' {results_from_splitting} {control structure: O} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -19203,110 +16979,91 @@ ROOT_NT COMMON_NOUN_NT'coupon' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=coupon(x) >>} {refers: infs'coupon'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of thing' {refined} {refers: infs'thing'} COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'carry out someone resolving a coupon' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a coupon' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked giving the noun to vanessa' INVOCATION_NT'try the person asked giving the noun to vanessa' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked giving the noun to vanessa' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked giving the noun to vanessa' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked giving the noun to vanessa' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked giving the noun to vanessa' {kind: action} {explicit action: } SENTENCE_NT'the block giving rule is not listed in any rulebook' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: negative} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the block giving rule' UNPARSED_NOUN_NT'in any rulebook' - RULE_NT'check giving something to someone ( this is the block player' {unit: 4} + IMPERATIVE_NT'check giving something to someone ( this is the block player' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the block giving rule' INVOCATION_NT'abide by the block giving rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'block giving rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'block giving rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'block giving rule' {kind: rule} {rule: block giving rule}{meaning: {block giving rule = MISCELLANEOUS_MC}} - RULE_NT'before someone resolving a coupon when the person asked is n' {unit: 4} + IMPERATIVE_NT'before someone resolving a coupon when the person asked is n' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked approaching cold comfort' INVOCATION_NT'try the person asked approaching cold comfort' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked approaching cold comfort' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked approaching cold comfort' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked approaching cold comfort' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked approaching cold comfort' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'after someone giving a coupon to vanessa' {unit: 4} + IMPERATIVE_NT'after someone giving a coupon to vanessa' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let the reward be a random ice cream cone' INVOCATION_NT'let the reward be a random ice cream cone' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'reward' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: value} + NEW_LOCAL_CONTEXT_NT'reward' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: value} UNKNOWN_NT'reward' - RVALUE_CONTEXT_NT'a random ice cream cone' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'a random ice cream cone' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'a random ice cream cone' INVOCATION_LIST_NT'a random ice cream cone' INVOCATION_NT'a random ice cream cone' {phrase invoked: call} {resulting: ice cream cone} {kind variable declarations: K=ice cream cone} - RVALUE_CONTEXT_NT'ice cream cone' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'ice cream cone' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'ice cream cone' {kind: description of ice cream cones} {proposition: << kind=ice cream cone(x) >>} INVOCATION_LIST_NT'let the new flavor be a random infection color' INVOCATION_NT'let the new flavor be a random infection color' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'new flavor' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: infection color} {required: value} + NEW_LOCAL_CONTEXT_NT'new flavor' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: infection color} {required: value} UNKNOWN_NT'new flavor' - RVALUE_CONTEXT_NT'a random infection color' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'a random infection color' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'a random infection color' INVOCATION_LIST_NT'a random infection color' INVOCATION_NT'a random infection color' {phrase invoked: call} {resulting: infection color} {kind variable declarations: K=infection color} - RVALUE_CONTEXT_NT'infection color' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'infection color' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'infection color' {kind: description of infection colors} {proposition: << kind=infection color(x) >>} INVOCATION_LIST_NT'now the infection color of the reward is the new flavor' {control structure: NOW} CONDITION_CONTEXT_NT'the infection color of the reward is the new flavor' INVOCATION_LIST_NT'move the reward to the person asked' INVOCATION_NT'move the reward to the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'reward' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'reward' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'reward' {local: LV"reward"-thing thing} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_NT'now the noun is nowhere' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is nowhere' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if vanessa is visible' {colon_block_command} INVOCATION_NT'if vanessa is visible' {phrase invoked: call} - CONDITION_CONTEXT_NT'vanessa is visible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'vanessa is visible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'vanessa is visible' {proposition: << visible('vanessa') >>} {term: 'vanessa'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] trades in [the noun] and receives [a' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" trades in "' INVOCATION_NT'" trades in "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" trades in "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" trades in "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" trades in "' {kind: text} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" and receives "' INVOCATION_NT'" and receives "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" and receives "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" and receives "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" and receives "' {kind: text} INVOCATION_LIST_SAY_NT'a reward' INVOCATION_NT'a reward' {phrase invoked: call} - RVALUE_CONTEXT_NT'reward' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'reward' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'reward' {local: LV"reward"-thing thing} INVOCATION_LIST_SAY_NT'" from Vanessa."' INVOCATION_NT'" from Vanessa."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" from Vanessa."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" from Vanessa."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" from Vanessa."' {kind: text} SENTENCE_NT'infection color is a kind of value' {unit: 4} {classified} {interpretation of subject: infs'coupon'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} @@ -19367,47 +17124,39 @@ ROOT_NT AND_NT',' {refined} PROPER_NOUN_NT'saffron silk' {refined} {refers: infs'saffron silk'} {eval: CONSTANT_NT'saffron silk' {kind: infection color} {instance: I86'saffron silk'[infection color]} {enumeration: 25}} {created here} PROPER_NOUN_NT'cookie dough cream' {refined} {refers: infs'cookie dough cream'} {eval: CONSTANT_NT'cookie dough cream' {kind: infection color} {instance: I87'cookie dough cream'[infection color]} {enumeration: 26}} {created here} - RULE_NT'to say list of flavors' {unit: 4} + IMPERATIVE_NT'to say list of flavors' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let current color be french vanilla' {indent: 1} INVOCATION_NT'let current color be french vanilla' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'current color' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: infection color} {required: value} + NEW_LOCAL_CONTEXT_NT'current color' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: infection color} {required: value} UNKNOWN_NT'current color' - RVALUE_CONTEXT_NT'french vanilla' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'french vanilla' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'french vanilla' {kind: infection color} {instance: I62'french vanilla'[infection color]} {enumeration: 0}{meaning: {french vanilla = NAMED_CONSTANT_MC}} CODE_BLOCK_NT {control structure: WHI} INVOCATION_LIST_NT'while current color is not cookie dough cream' {colon_block_command} {indent: 1} INVOCATION_NT'while current color is not cookie dough cream' {phrase invoked: call} - CONDITION_CONTEXT_NT'current color is not cookie dough cream' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'current color is not cookie dough cream' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'current color is not cookie dough cream' {proposition: << NOT< ('current color' == 'cookie dough cream') NOT> >>} {term: 'current color'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[current color], "' {control structure: SAY} INVOCATION_LIST_SAY_NT'current color' INVOCATION_NT'current color' {phrase invoked: call} {kind variable declarations: K=infection color} - RVALUE_CONTEXT_NT'current color' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'current color' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} LOCAL_VARIABLE_NT'current color' {local: LV"current color"-infection color infection color} INVOCATION_LIST_SAY_NT'", "' INVOCATION_NT'", "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", "' {kind: text} INVOCATION_LIST_NT'now current color is the infection color after the current c' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'current color is the infection color after the current color' CODE_BLOCK_NT'say "and [current color]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"and "' INVOCATION_NT'"and "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"and "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"and "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"and "' {kind: text} INVOCATION_LIST_SAY_NT'current color' INVOCATION_NT'current color' {phrase invoked: call} {kind variable declarations: K=infection color} - RVALUE_CONTEXT_NT'current color' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'current color' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} LOCAL_VARIABLE_NT'current color' {local: LV"current color"-infection color infection color} SENTENCE_NT'understand "ask vanessa for [flavored ice cream]" as buying ' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} @@ -19421,40 +17170,34 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'buying the flavor' UNPARSED_NOUN_NT'applying to one infection color' - RULE_NT'check buying the flavor' {unit: 4} + IMPERATIVE_NT'check buying the flavor' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'unless the player can see vanessa' {colon_block_command} {indent: 1} INVOCATION_NT'unless the player can see vanessa' {phrase invoked: call} - CONDITION_CONTEXT_NT'player can see vanessa' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player can see vanessa' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player can see vanessa' {proposition: << can-see('player', 'vanessa') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "It would help if you were in the presence of an ice cre' {control structure: SAY} INVOCATION_LIST_SAY_NT'"It would help if you were in the presence of an ice cream s' INVOCATION_NT'"It would help if you were in the presence of an ice cream s' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"It would help if you were in the presence of an ice cream s' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"It would help if you were in the presence of an ice cream s' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"It would help if you were in the presence of an ice cream s' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out buying the flavor' {unit: 4} + IMPERATIVE_NT'carry out buying the flavor' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "'Do you have a coupon?' Vanessa demands. You admit you ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"'Do you have a coupon?' Vanessa demands. You admit you do n' INVOCATION_NT'"'Do you have a coupon?' Vanessa demands. You admit you do n' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"'Do you have a coupon?' Vanessa demands. You admit you do n' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"'Do you have a coupon?' Vanessa demands. You admit you do n' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"'Do you have a coupon?' Vanessa demands. You admit you do n' {kind: text} INVOCATION_LIST_SAY_NT'infection color understood' INVOCATION_NT'infection color understood' {phrase invoked: call} {kind variable declarations: K=infection color} - RVALUE_CONTEXT_NT'infection color understood' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'infection color understood' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} NONLOCAL_VARIABLE_NT'infection color understood' {nonlocal: 'infection color understood'(var)infection color}{meaning: {infection color understood = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" for you!'"' INVOCATION_NT'" for you!'"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" for you!'"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" for you!'"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" for you!'"' {kind: text} SENTENCE_NT'understand "ice cream" or "cream" or "ice" or "sherbet" or "' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} @@ -19489,151 +17232,125 @@ ROOT_NT VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'the infection color property' UNPARSED_NOUN_NT'referring to an ice cream cone' - RULE_NT'carry out someone resolving an ice cream cone' {unit: 4} + IMPERATIVE_NT'carry out someone resolving an ice cream cone' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked eating the noun' INVOCATION_NT'try the person asked eating the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked eating the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked eating the noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked eating the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked eating the noun' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'instead of someone eating a fresh ice cream cone' {unit: 4} + IMPERATIVE_NT'instead of someone eating a fresh ice cream cone' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is half-eaten' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is half-eaten' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is visible' {colon_block_command} INVOCATION_NT'if the person asked is visible' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is visible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is visible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is visible' {proposition: << visible('person asked') >>} {term: 'person asked'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] licks [the noun]."' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" licks "' INVOCATION_NT'" licks "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" licks "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" licks "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" licks "' {kind: text} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} - RULE_NT'report someone eating an ice cream cone' {unit: 4} + IMPERATIVE_NT'report someone eating an ice cream cone' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] pops the end of [the noun] into [if ' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" pops the end of "' INVOCATION_NT'" pops the end of "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" pops the end of "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" pops the end of "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" pops the end of "' {kind: text} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" into "' INVOCATION_NT'" into "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" into "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" into "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" into "' {kind: text} INVOCATION_LIST_SAY_NT'if the person asked is female' INVOCATION_NT'if the person asked is female' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is female' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is female' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is female' {proposition: << female('person asked') >>} {term: 'person asked'} INVOCATION_LIST_SAY_NT'"her"' INVOCATION_NT'"her"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"her"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"her"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"her"' {kind: text} INVOCATION_LIST_SAY_NT'otherwise' INVOCATION_NT'otherwise' {phrase invoked: call} INVOCATION_LIST_SAY_NT'"his"' INVOCATION_NT'"his"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"his"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"his"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"his"' {kind: text} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'" mouth and swallows."' INVOCATION_NT'" mouth and swallows."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" mouth and swallows."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" mouth and swallows."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" mouth and swallows."' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'before printing the name of an ice cream cone' {unit: 4} + IMPERATIVE_NT'before printing the name of an ice cream cone' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[if half-eaten]half-eaten [end if][infection color] "' {control structure: SAY} INVOCATION_LIST_SAY_NT'if half-eaten' INVOCATION_NT'if half-eaten' {phrase invoked: call} - CONDITION_CONTEXT_NT'half-eaten' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'half-eaten' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'half-eaten' {proposition: << half-eaten(CONSTANT_NT {kind: object} {self}) >>} {term: CONSTANT_NT {kind: object} {self}} INVOCATION_LIST_SAY_NT'"half-eaten "' INVOCATION_NT'"half-eaten "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"half-eaten "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"half-eaten "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"half-eaten "' {kind: text} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'infection color' INVOCATION_NT'infection color' {phrase invoked: call} {kind variable declarations: K=infection color} {save self} - RVALUE_CONTEXT_NT'infection color' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'infection color' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} PROPERTY_VALUE_NT'infection color' {record as self} CONSTANT_NT'infection color' {kind: infection colors valued property} {property: 'infection color'=infection color}{meaning: {infection color = PROPERTY_MC}} CONSTANT_NT {kind: object} {self} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} HEADING_NT'section 2 - infection rules' {heading 5} {under: H5'section 2 - infection rules'} {unit: 4} - RULE_NT'this is the infection rule' {unit: 4} + IMPERATIVE_NT'this is the infection rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if an infected person ( called typhoid mary ) can see a clea' {colon_block_command} {indent: 1} INVOCATION_NT'if an infected person ( called typhoid mary ) can see a clea' {phrase invoked: call} - CONDITION_CONTEXT_NT'an infected person ( called typhoid mary ) can see a clean p' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'an infected person ( called typhoid mary ) can see a clean p' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'an infected person ( called typhoid mary ) can see a clean p' TEST_PROPOSITION_NT'an infected person ( called typhoid mary ) can see a clean p' {proposition: << Exists x : kind=person(x) ^ infected(x) ^ called='typhoid mary':person(x) ^ Exists y : kind=person(y) ^ clean(y) ^ called='random bystander':person(y) ^ can-see(x, y) >>} {term: x} TEST_VALUE_NT'a random chance of 1 in 3 succeeds' PHRASE_TO_DECIDE_VALUE_NT'a random chance of 1 in 3 succeeds' INVOCATION_LIST_NT'a random chance of 1 in 3 succeeds' INVOCATION_NT'a random chance of 1 in 3 succeeds' {phrase invoked: call} {resulting: truth state} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'number'} {required: number} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'number'} {required: number} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} - RVALUE_CONTEXT_NT'3' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'number'} {required: number} + RVALUE_CONTEXT_NT'3' {token check to do: } {token to be parsed against: TEST_VALUE_NT'number'} {required: number} CONSTANT_NT'3' {kind: number} {explicit literal} {number: 3} CODE_BLOCK_NT INVOCATION_LIST_NT'try typhoid mary sneezing on the random bystander' {indent: 2} INVOCATION_NT'try typhoid mary sneezing on the random bystander' {phrase invoked: call} - RVALUE_CONTEXT_NT'typhoid mary sneezing on the random bystander' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'typhoid mary sneezing on the random bystander' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'typhoid mary sneezing on the random bystander' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'typhoid mary sneezing on the random bystander' {kind: action} {explicit action: } SENTENCE_NT'a person can be infected or clean' {unit: 4} {classified} VERB_NT'can be' {verb 'be able to be' s/p 3p act IS_TENSE +ve} {special meaning: can-be} COMMON_NOUN_NT'a person' {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT} @@ -19646,55 +17363,46 @@ ROOT_NT COMMON_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT} ALLOWED_NT'has' {refined} UNPARSED_NOUN_NT'infection color' {indefinite 'an' n/m/f nom/acc s} {refined} - RULE_NT'every turn' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is infected' {colon_block_command} INVOCATION_NT'if the player is infected' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is infected' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is infected' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is infected' {proposition: << infected('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "You feel itchy."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You feel itchy."' INVOCATION_NT'"You feel itchy."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You feel itchy."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You feel itchy."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You feel itchy."' {kind: text} - RULE_NT'definition' {unit: 4} - RULE_NT'definition' {unit: 4} - RULE_NT'when play begins' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} + IMPERATIVE_NT'when play begins' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now right hand status line is "Sick: [number of infected peo' {control structure: NOW} CONDITION_CONTEXT_NT'right hand status line is "Sick: [number of infected people]' - RULE_NT'every turn' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if every person is infected' {colon_block_command} INVOCATION_NT'if every person is infected' {phrase invoked: call} - CONDITION_CONTEXT_NT'every person is infected' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'every person is infected' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'every person is infected' {proposition: << ForAll x IN< kind=person(x) IN> : infected(x) >>} {term: x} CODE_BLOCK_NT INVOCATION_LIST_NT'end the story saying "Everyone succumbs"' {results_from_splitting} {indent: 1} INVOCATION_NT'end the story saying "Everyone succumbs"' {phrase invoked: call} - RVALUE_CONTEXT_NT'"Everyone succumbs"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'text'} {required: text} + RVALUE_CONTEXT_NT'"Everyone succumbs"' {token check to do: } {token to be parsed against: TEST_VALUE_NT'text'} {required: text} CONSTANT_NT'"Everyone succumbs"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if every person is clean' {colon_block_command} INVOCATION_NT'if every person is clean' {phrase invoked: call} - CONDITION_CONTEXT_NT'every person is clean' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'every person is clean' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'every person is clean' {proposition: << ForAll x IN< kind=person(x) IN> : clean(x) >>} {term: x} CODE_BLOCK_NT INVOCATION_LIST_NT'end the story finally saying "The Syndrome is eradicated"' {results_from_splitting} {indent: 1} INVOCATION_NT'end the story finally saying "The Syndrome is eradicated"' {phrase invoked: call} - RVALUE_CONTEXT_NT'"The Syndrome is eradicated"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'text'} {required: text} + RVALUE_CONTEXT_NT'"The Syndrome is eradicated"' {token check to do: } {token to be parsed against: TEST_VALUE_NT'text'} {required: text} CONSTANT_NT'"The Syndrome is eradicated"' {kind: text} SENTENCE_NT'understand "sneeze on [something]" as sneezing on' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} @@ -19704,125 +17412,105 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'sneezing on' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'check sneezing on' {unit: 4} + IMPERATIVE_NT'check sneezing on' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is clean' {colon_block_command} INVOCATION_NT'if the player is clean' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is clean' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is clean' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is clean' {proposition: << clean('player') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "You're not sickly."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You're not sickly."' INVOCATION_NT'"You're not sickly."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You're not sickly."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You're not sickly."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You're not sickly."' {kind: text} CODE_BLOCK_NT {control structure: INS} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is the player' {colon_block_command} INVOCATION_NT'if the noun is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is the player' {proposition: << ('noun' == 'the player') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Ew."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Ew."' INVOCATION_NT'"Ew."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Ew."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Ew."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Ew."' {kind: text} CODE_BLOCK_NT {control structure: INS} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not a person' {colon_block_command} INVOCATION_NT'if the noun is not a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is not a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is not a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is not a person' {proposition: << NOT< kind=person('noun') NOT> >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] cannot be infected."' {control structure: SAY} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" cannot be infected."' INVOCATION_NT'" cannot be infected."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" cannot be infected."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" cannot be infected."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" cannot be infected."' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out sneezing on' {unit: 4} + IMPERATIVE_NT'carry out sneezing on' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is infected' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is infected' INVOCATION_LIST_NT'now the infection color of the noun is a random infection co' {control structure: NOW} CONDITION_CONTEXT_NT'the infection color of the noun is a random infection color' - RULE_NT'carry out someone sneezing on' {unit: 4} + IMPERATIVE_NT'carry out someone sneezing on' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is infected' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is infected' INVOCATION_LIST_NT'now the infection color of the noun is a random infection co' {control structure: NOW} CONDITION_CONTEXT_NT'the infection color of the noun is a random infection color' - RULE_NT'report sneezing on' {unit: 4} + IMPERATIVE_NT'report sneezing on' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "Unable to control yourself, you sneeze on [noun]."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Unable to control yourself, you sneeze on "' INVOCATION_NT'"Unable to control yourself, you sneeze on "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Unable to control yourself, you sneeze on "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Unable to control yourself, you sneeze on "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Unable to control yourself, you sneeze on "' {kind: text} INVOCATION_LIST_SAY_NT'noun' INVOCATION_NT'noun' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} - RULE_NT'report someone sneezing on' {unit: 4} + IMPERATIVE_NT'report someone sneezing on' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] sneezes on [if the noun is the playe' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" sneezes on "' INVOCATION_NT'" sneezes on "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" sneezes on "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" sneezes on "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" sneezes on "' {kind: text} INVOCATION_LIST_SAY_NT'if the noun is the player' INVOCATION_NT'if the noun is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is the player' {proposition: << ('noun' == 'the player') >>} {term: 'noun'} INVOCATION_LIST_SAY_NT'"you"' INVOCATION_NT'"you"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"you"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"you"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"you"' {kind: text} INVOCATION_LIST_SAY_NT'otherwise' INVOCATION_NT'otherwise' {phrase invoked: call} INVOCATION_LIST_SAY_NT'noun' INVOCATION_NT'noun' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'"!"' INVOCATION_NT'"!"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"!"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"!"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"!"' {kind: text} SENTENCE_NT'understand "inject [someone] with [something]" as injecting ' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} @@ -19844,92 +17532,77 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'injecting it with' UNPARSED_NOUN_NT'applying to two things' - RULE_NT'check injecting it with' {unit: 4} + IMPERATIVE_NT'check injecting it with' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not the syringe' {indent: 1} {colon_block_command} INVOCATION_NT'if the second noun is not the syringe' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is not the syringe' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is not the syringe' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is not the syringe' {proposition: << NOT< ('second noun' == 'the syringe') NOT> >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The second noun] cannot inject anything."' {control structure: SAY} INVOCATION_LIST_SAY_NT'the second noun' INVOCATION_NT'the second noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'second noun' {nonlocal: 'second noun'(var)object}{meaning: {second noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" cannot inject anything."' INVOCATION_NT'" cannot inject anything."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" cannot inject anything."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" cannot inject anything."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" cannot inject anything."' {kind: text} CODE_BLOCK_NT {control structure: INS} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is clean' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is clean' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is clean' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is clean' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is clean' {proposition: << clean('noun') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is the player' {indent: 2} {colon_block_command} INVOCATION_NT'if the noun is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is the player' {proposition: << ('noun' == 'the player') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "You're not infected yet."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You're not infected yet."' INVOCATION_NT'"You're not infected yet."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You're not infected yet."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You're not infected yet."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You're not infected yet."' {kind: text} CODE_BLOCK_NT {control structure: INS} CODE_BLOCK_NT'say "[The noun] is not infected, and the syringe contains a ' {control structure: SAY} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" is not infected, and the syringe contains a cure, not a va' INVOCATION_NT'" is not infected, and the syringe contains a cure, not a va' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" is not infected, and the syringe contains a cure, not a va' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" is not infected, and the syringe contains a cure, not a va' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" is not infected, and the syringe contains a cure, not a va' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out injecting it with' {unit: 4} + IMPERATIVE_NT'carry out injecting it with' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is clean' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is clean' - RULE_NT'after injecting the player with something' {unit: 4} + IMPERATIVE_NT'after injecting the player with something' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You inject yourself, wincing at the sting. But the itch' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You inject yourself, wincing at the sting. But the itching ' INVOCATION_NT'"You inject yourself, wincing at the sting. But the itching ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You inject yourself, wincing at the sting. But the itching ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You inject yourself, wincing at the sting. But the itching ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You inject yourself, wincing at the sting. But the itching ' {kind: text} - RULE_NT'report injecting it with' {unit: 4} + IMPERATIVE_NT'report injecting it with' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You inject [the noun], who is now cured (but could easi' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You inject "' INVOCATION_NT'"You inject "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You inject "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You inject "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You inject "' {kind: text} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'", who is now cured (but could easily be reinfected)."' INVOCATION_NT'", who is now cured (but could easily be reinfected)."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", who is now cured (but could easily be reinfected)."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", who is now cured (but could easily be reinfected)."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", who is now cured (but could easily be reinfected)."' {kind: text} HEADING_NT'section 3 - geography' {heading 5} {under: H5'section 3 - geography'} {unit: 4} INCLUSION_NT'include locksmith by emily short' {unit: 4} @@ -19959,304 +17632,250 @@ ROOT_NT VERB_NT'translates as' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: as} {special meaning: use-translates} UNPARSED_NOUN_NT'sequential action' UNPARSED_NOUN_NT'(- Constant SEQUENTIAL_ACTION; ' - RULE_NT'before going through a closed door ( called the blocking doo' {unit: 4} + IMPERATIVE_NT'before going through a closed door ( called the blocking doo' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} INVOCATION_NT'if sequential action option is active' {phrase invoked: call} - CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'sequential action option is active' {proposition: << active('sequential action option') >>} {term: 'sequential action option'} CODE_BLOCK_NT INVOCATION_LIST_NT'try opening the blocking door' {indent: 2} INVOCATION_NT'try opening the blocking door' {phrase invoked: call} - RVALUE_CONTEXT_NT'opening the blocking door' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'opening the blocking door' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'opening the blocking door' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'opening the blocking door' {kind: action} {explicit action: } CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "(first opening [the blocking door])[command clarificati' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first opening [the blocking door])[command clarification b' INVOCATION_NT'"(first opening [the blocking door])[command clarification b' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first opening [the blocking door])[command clarification b' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first opening [the blocking door])[command clarification b' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first opening [the blocking door])[command clarification b' {kind: text} INVOCATION_LIST_NT'silently try opening the blocking door' {indent: 2} INVOCATION_NT'silently try opening the blocking door' {phrase invoked: call} - RVALUE_CONTEXT_NT'opening the blocking door' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'opening the blocking door' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'opening the blocking door' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'opening the blocking door' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the blocking door is closed' {indent: 1} {colon_block_command} INVOCATION_NT'if the blocking door is closed' {phrase invoked: call} - CONDITION_CONTEXT_NT'blocking door is closed' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'blocking door is closed' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'blocking door is closed' {proposition: << closed('blocking door') >>} {term: 'blocking door'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before locking an open thing ( called the door ajar ) with s' {unit: 4} + IMPERATIVE_NT'before locking an open thing ( called the door ajar ) with s' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} INVOCATION_NT'if sequential action option is active' {phrase invoked: call} - CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'sequential action option is active' {proposition: << active('sequential action option') >>} {term: 'sequential action option'} CODE_BLOCK_NT INVOCATION_LIST_NT'try closing the door ajar' {indent: 2} INVOCATION_NT'try closing the door ajar' {phrase invoked: call} - RVALUE_CONTEXT_NT'closing the door ajar' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'closing the door ajar' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'closing the door ajar' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'closing the door ajar' {kind: action} {explicit action: } CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "(first closing [the door ajar])[command clarification b' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first closing [the door ajar])[command clarification break' INVOCATION_NT'"(first closing [the door ajar])[command clarification break' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first closing [the door ajar])[command clarification break' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first closing [the door ajar])[command clarification break' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first closing [the door ajar])[command clarification break' {kind: text} INVOCATION_LIST_NT'silently try closing the door ajar' {indent: 2} INVOCATION_NT'silently try closing the door ajar' {phrase invoked: call} - RVALUE_CONTEXT_NT'closing the door ajar' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'closing the door ajar' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'closing the door ajar' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'closing the door ajar' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the door ajar is open' {indent: 1} {colon_block_command} INVOCATION_NT'if the door ajar is open' {phrase invoked: call} - CONDITION_CONTEXT_NT'door ajar is open' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'door ajar is open' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'door ajar is open' {proposition: << open('door ajar') >>} {term: 'door ajar'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before locking keylessly an open thing ( called the door aja' {unit: 4} + IMPERATIVE_NT'before locking keylessly an open thing ( called the door aja' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} INVOCATION_NT'if sequential action option is active' {phrase invoked: call} - CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'sequential action option is active' {proposition: << active('sequential action option') >>} {term: 'sequential action option'} CODE_BLOCK_NT INVOCATION_LIST_NT'try closing the door ajar' {indent: 2} INVOCATION_NT'try closing the door ajar' {phrase invoked: call} - RVALUE_CONTEXT_NT'closing the door ajar' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'closing the door ajar' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'closing the door ajar' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'closing the door ajar' {kind: action} {explicit action: } CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "(first closing [the door ajar])[command clarification b' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first closing [the door ajar])[command clarification break' INVOCATION_NT'"(first closing [the door ajar])[command clarification break' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first closing [the door ajar])[command clarification break' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first closing [the door ajar])[command clarification break' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first closing [the door ajar])[command clarification break' {kind: text} INVOCATION_LIST_NT'silently try closing the door ajar' {indent: 2} INVOCATION_NT'silently try closing the door ajar' {phrase invoked: call} - RVALUE_CONTEXT_NT'closing the door ajar' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'closing the door ajar' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'closing the door ajar' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'closing the door ajar' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the door ajar is open' {indent: 1} {colon_block_command} INVOCATION_NT'if the door ajar is open' {phrase invoked: call} - CONDITION_CONTEXT_NT'door ajar is open' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'door ajar is open' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'door ajar is open' {proposition: << open('door ajar') >>} {term: 'door ajar'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before opening a locked thing ( called the sealed chest ) ( ' {unit: 4} + IMPERATIVE_NT'before opening a locked thing ( called the sealed chest ) ( ' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} INVOCATION_NT'if sequential action option is active' {phrase invoked: call} - CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'sequential action option is active' {proposition: << active('sequential action option') >>} {term: 'sequential action option'} CODE_BLOCK_NT INVOCATION_LIST_NT'try unlocking keylessly the sealed chest' {indent: 2} INVOCATION_NT'try unlocking keylessly the sealed chest' {phrase invoked: call} - RVALUE_CONTEXT_NT'unlocking keylessly the sealed chest' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'unlocking keylessly the sealed chest' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'unlocking keylessly the sealed chest' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'unlocking keylessly the sealed chest' {kind: action} {explicit action: } CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say "(first unlocking [the sealed chest])[command clarificat' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(first unlocking [the sealed chest])[command clarification ' INVOCATION_NT'"(first unlocking [the sealed chest])[command clarification ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(first unlocking [the sealed chest])[command clarification ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(first unlocking [the sealed chest])[command clarification ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(first unlocking [the sealed chest])[command clarification ' {kind: text} INVOCATION_LIST_NT'silently try unlocking keylessly the sealed chest' {indent: 2} INVOCATION_NT'silently try unlocking keylessly the sealed chest' {phrase invoked: call} - RVALUE_CONTEXT_NT'unlocking keylessly the sealed chest' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'unlocking keylessly the sealed chest' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'unlocking keylessly the sealed chest' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'unlocking keylessly the sealed chest' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the sealed chest is locked' {indent: 1} {colon_block_command} INVOCATION_NT'if the sealed chest is locked' {phrase invoked: call} - CONDITION_CONTEXT_NT'sealed chest is locked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'sealed chest is locked' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'sealed chest is locked' {proposition: << locked('sealed chest') >>} {term: 'sealed chest'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before someone trying going through a closed door ( called t' {unit: 4} + IMPERATIVE_NT'before someone trying going through a closed door ( called t' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked trying opening the blocking door' INVOCATION_NT'try the person asked trying opening the blocking door' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked trying opening the blocking door' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked trying opening the blocking door' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked trying opening the blocking door' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked trying opening the blocking door' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the blocking door is closed' {colon_block_command} INVOCATION_NT'if the blocking door is closed' {phrase invoked: call} - CONDITION_CONTEXT_NT'blocking door is closed' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'blocking door is closed' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'blocking door is closed' {proposition: << closed('blocking door') >>} {term: 'blocking door'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before someone trying locking an open thing ( called the doo' {unit: 4} + IMPERATIVE_NT'before someone trying locking an open thing ( called the doo' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked trying closing the door ajar' INVOCATION_NT'try the person asked trying closing the door ajar' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked trying closing the door ajar' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked trying closing the door ajar' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked trying closing the door ajar' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked trying closing the door ajar' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the door ajar is open' {colon_block_command} INVOCATION_NT'if the door ajar is open' {phrase invoked: call} - CONDITION_CONTEXT_NT'door ajar is open' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'door ajar is open' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'door ajar is open' {proposition: << open('door ajar') >>} {term: 'door ajar'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before someone trying locking keylessly an open thing ( call' {unit: 4} + IMPERATIVE_NT'before someone trying locking keylessly an open thing ( call' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked trying closing the door ajar' INVOCATION_NT'try the person asked trying closing the door ajar' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked trying closing the door ajar' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked trying closing the door ajar' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked trying closing the door ajar' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked trying closing the door ajar' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the door ajar is open' {colon_block_command} INVOCATION_NT'if the door ajar is open' {phrase invoked: call} - CONDITION_CONTEXT_NT'door ajar is open' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'door ajar is open' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'door ajar is open' {proposition: << open('door ajar') >>} {term: 'door ajar'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before someone trying opening a locked thing ( called the se' {unit: 4} + IMPERATIVE_NT'before someone trying opening a locked thing ( called the se' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked trying unlocking keylessly the sealed c' INVOCATION_NT'try the person asked trying unlocking keylessly the sealed c' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked trying unlocking keylessly the sealed chest' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked trying unlocking keylessly the sealed chest' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked trying unlocking keylessly the sealed chest' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked trying unlocking keylessly the sealed chest' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the sealed chest is locked' {colon_block_command} INVOCATION_NT'if the sealed chest is locked' {phrase invoked: call} - CONDITION_CONTEXT_NT'sealed chest is locked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'sealed chest is locked' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'sealed chest is locked' {proposition: << locked('sealed chest') >>} {term: 'sealed chest'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} HEADING_NT'volume 2 - default locking and unlocking' {heading 1} {under: H1'volume 2 - default locking and unlocking'} {unit: 4} HEADING_NT'part 1 - the matching key rule' {heading 3} {under: H3'part 1 - the matching key rule'} {unit: 4} - RULE_NT'this is the need a matching key rule' {unit: 4} + IMPERATIVE_NT'this is the need a matching key rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked encloses something ( called item ) which' {colon_block_command} {indent: 1} INVOCATION_NT'if the person asked encloses something ( called item ) which' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked encloses something ( called item ) which unlock' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked encloses something ( called item ) which unlock' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked encloses something ( called item ) which unlock' {proposition: << kind=thing_c(<(QUOTED_INAME_0_00000053(*1)) : 'the noun'>) ^ called='item':thing(<(QUOTED_INAME_0_00000053(*1)) : 'the noun'>) ^ encloses('person asked', <(QUOTED_INAME_0_00000053(*1)) : 'the noun'>) >>} {term: 'person asked'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the second noun is the item' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the second noun is the item' INVOCATION_LIST_NT'abide by the must have accessible the second noun rule' {indent: 2} INVOCATION_NT'abide by the must have accessible the second noun rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'must have accessible the second noun rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'must have accessible the second noun rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'must have accessible the second noun rule' {kind: rule} {rule: must have accessible the second noun rule}{meaning: {must have accessible the second noun rule = MISCELLANEOUS_MC}} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if a visible passkey ( called item ) unbolts the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if a visible passkey ( called item ) unbolts the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'a visible passkey ( called item ) unbolts the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'a visible passkey ( called item ) unbolts the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'a visible passkey ( called item ) unbolts the noun' {proposition: << kind=passkey(<(QUOTED_INAME_0_00000103(*1)) : 'the noun'>) ^ visible(<(QUOTED_INAME_0_00000103(*1)) : 'the noun'>) ^ called='item':passkey(<(QUOTED_INAME_0_00000103(*1)) : 'the noun'>) >>} {term: x} CODE_BLOCK_NT INVOCATION_LIST_NT'now the second noun is the item' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the second noun is the item' INVOCATION_LIST_NT'abide by the must have accessible the second noun rule' {indent: 2} INVOCATION_NT'abide by the must have accessible the second noun rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'must have accessible the second noun rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'must have accessible the second noun rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'must have accessible the second noun rule' {kind: rule} {rule: must have accessible the second noun rule}{meaning: {must have accessible the second noun rule = MISCELLANEOUS_MC}} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the person asked' {indent: 2} {colon_block_command} INVOCATION_NT'if the player is the person asked' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the person asked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the person asked' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the person asked' {proposition: << ('player' == 'the person asked') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[key-refusal for noun]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'key-refusal for noun' INVOCATION_NT'key-refusal for noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'to say key-refusal for ( locked-thing - an object )' {unit: 4} + IMPERATIVE_NT'to say key-refusal for ( locked-thing - an object )' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'carry out the refusing keys activity with the locked-thing' INVOCATION_NT'carry out the refusing keys activity with the locked-thing' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'refusing keys' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'refusing keys' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'refusing keys' {kind: activity on objects} {activity: refusing keys}{meaning: {refusing keys = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'locked-thing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'locked-thing' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'locked-thing' {local: LV"locked-thing"-object object} SENTENCE_NT'refusing keys of something is an activity' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-activity} UNPARSED_NOUN_NT'refusing keys of something' UNPARSED_NOUN_NT'an activity' - RULE_NT'rule for refusing keys of something ( called locked-thing ) ' {unit: 4} + IMPERATIVE_NT'rule for refusing keys of something ( called locked-thing ) ' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [lack] a key that fits [the locked-thing]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [lack] a key that fits [the locked-thing]." ( a )' INVOCATION_NT'"[We] [lack] a key that fits [the locked-thing]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[We] [lack] a key that fits [the locked-thing]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[We] [lack] a key that fits [the locked-thing]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [lack] a key that fits [the locked-thing]." ( a )' {kind: text} - RULE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked carries it' {colon_block_command} INVOCATION_NT'if the person asked carries it' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked carries it' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked carries it' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked carries it' {proposition: << ('person asked' == ) >>} {term: 'person asked'} CODE_BLOCK_NT INVOCATION_LIST_NT'yes' {results_from_splitting} {indent: 1} @@ -20264,9 +17883,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if it is on a keychain which is carried by the person asked' {colon_block_command} INVOCATION_NT'if it is on a keychain which is carried by the person asked' {phrase invoked: call} - CONDITION_CONTEXT_NT'it is on a keychain which is carried by the person asked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'it is on a keychain which is carried by the person asked' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'it is on a keychain which is carried by the person asked' {proposition: << kind=keychain() ^ ('the person asked' == >) >>} {term: 'it'} CODE_BLOCK_NT INVOCATION_LIST_NT'yes' {results_from_splitting} {indent: 1} @@ -20315,32 +17932,28 @@ ROOT_NT VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"open [a lockable thing] with [something]"' UNPARSED_NOUN_NT'unlocking it with' - RULE_NT'check unlocking it with ( this is the must be able to reach ' {unit: 4} + IMPERATIVE_NT'check unlocking it with ( this is the must be able to reach ' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the must have accessible the second noun rule' INVOCATION_NT'abide by the must have accessible the second noun rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'must have accessible the second noun rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'must have accessible the second noun rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'must have accessible the second noun rule' {kind: rule} {rule: must have accessible the second noun rule}{meaning: {must have accessible the second noun rule = MISCELLANEOUS_MC}} SENTENCE_NT'the right second rule is listed instead of the can't unlock ' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the right second rule' UNPARSED_NOUN_NT'instead of the can't unlock without the correct key rule in ' - RULE_NT'this is the right second rule' {unit: 4} + IMPERATIVE_NT'this is the right second rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun does not unlock the noun' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun does not unlock the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun does not unlock the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun does not unlock the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun does not unlock the noun' {proposition: << NOT< ('second noun' == <(QUOTED_INAME_0_00000053(*1)) : 'the noun'>) NOT> >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The second noun] [do not fit] [the noun]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The second noun] [do not fit] [the noun]." ( a )' INVOCATION_NT'"[The second noun] [do not fit] [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The second noun] [do not fit] [the noun]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The second noun] [do not fit] [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The second noun] [do not fit] [the noun]." ( a )' {kind: text} CODE_BLOCK_NT {control structure: INS} HEADING_NT'section 2 - keylessly' {heading 5} {under: H5'section 2 - keylessly'} {unit: 4} @@ -20371,33 +17984,28 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'object' {indefinite 'an' n/m/f nom/acc s} UNPARSED_NOUN_NT'key unlocked with' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'check an actor unlocking keylessly ( this is the check keyle' {unit: 4} + IMPERATIVE_NT'check an actor unlocking keylessly ( this is the check keyle' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the can't unlock without a lock rule' INVOCATION_NT'abide by the can't unlock without a lock rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'can't unlock without a lock rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'can't unlock without a lock rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'can't unlock without a lock rule' {kind: rule} {rule: can't unlock without a lock rule}{meaning: {can't unlock without a lock rule = MISCELLANEOUS_MC}} INVOCATION_LIST_NT'abide by the can't unlock what's already unlocked rule' INVOCATION_NT'abide by the can't unlock what's already unlocked rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'can't unlock what's already unlocked rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'can't unlock what's already unlocked rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'can't unlock what's already unlocked rule' {kind: rule} {rule: can't unlock what's already unlocked rule}{meaning: {can't unlock what's already unlocked rule = MISCELLANEOUS_MC}} INVOCATION_LIST_NT'abide by the need a matching key rule' INVOCATION_NT'abide by the need a matching key rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'need a matching key rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'need a matching key rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'need a matching key rule' {kind: rule} {rule: need a matching key rule}{meaning: {need a matching key rule = MISCELLANEOUS_MC}} INVOCATION_LIST_NT'now the key unlocked with is the second noun' {control structure: NOW} CONDITION_CONTEXT_NT'the key unlocked with is the second noun' - RULE_NT'carry out an actor unlocking keylessly ( this is the standar' {unit: 4} + IMPERATIVE_NT'carry out an actor unlocking keylessly ( this is the standar' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} INVOCATION_NT'if sequential action option is active' {phrase invoked: call} - CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'sequential action option is active' {proposition: << active('sequential action option') >>} {term: 'sequential action option'} CODE_BLOCK_NT INVOCATION_LIST_NT'do nothing' {indent: 2} @@ -20406,22 +18014,18 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the person asked is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is the player' {proposition: << ('person asked' == 'the player') >>} {term: 'person asked'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(with [the key unlocked with])[command clarification br' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(with [the key unlocked with])[command clarification break]' INVOCATION_NT'"(with [the key unlocked with])[command clarification break]' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(with [the key unlocked with])[command clarification break]' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(with [the key unlocked with])[command clarification break]' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(with [the key unlocked with])[command clarification break]' {kind: text} INVOCATION_LIST_NT'try the person asked unlocking the noun with the key unlocke' {indent: 1} INVOCATION_NT'try the person asked unlocking the noun with the key unlocke' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked unlocking the noun with the key unlocked with' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked unlocking the noun with the key unlocked with' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked unlocking the noun with the key unlocked with' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked unlocking the noun with the key unlocked with' {kind: action} {explicit action: } HEADING_NT'part 3 - locking' {heading 3} {under: H3'part 3 - locking'} {unit: 4} HEADING_NT'section 1 - regular locking' {heading 5} {under: H5'section 1 - regular locking'} {unit: 4} SENTENCE_NT'understand the command lock as something new' {unit: 4} {classified} @@ -20446,12 +18050,11 @@ ROOT_NT UNPARSED_NOUN_NT'"lock [a lockable thing] with [something]"' UNPARSED_NOUN_NT'locking it with' - RULE_NT'check locking it with' {unit: 4} + IMPERATIVE_NT'check locking it with' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the must have accessible the second noun rule' INVOCATION_NT'abide by the must have accessible the second noun rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'must have accessible the second noun rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'must have accessible the second noun rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'must have accessible the second noun rule' {kind: rule} {rule: must have accessible the second noun rule}{meaning: {must have accessible the second noun rule = MISCELLANEOUS_MC}} SENTENCE_NT'the right second rule is listed instead of the can't lock wi' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} @@ -20485,38 +18088,32 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'object' {indefinite 'an' n/m/f nom/acc s} UNPARSED_NOUN_NT'key locked with' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'check an actor locking keylessly ( this is the check keyless' {unit: 4} + IMPERATIVE_NT'check an actor locking keylessly ( this is the check keyless' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the can't lock without a lock rule' INVOCATION_NT'abide by the can't lock without a lock rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'can't lock without a lock rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'can't lock without a lock rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'can't lock without a lock rule' {kind: rule} {rule: can't lock without a lock rule}{meaning: {can't lock without a lock rule = MISCELLANEOUS_MC}} INVOCATION_LIST_NT'abide by the can't lock what's already locked rule' INVOCATION_NT'abide by the can't lock what's already locked rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'can't lock what's already locked rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'can't lock what's already locked rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'can't lock what's already locked rule' {kind: rule} {rule: can't lock what's already locked rule}{meaning: {can't lock what's already locked rule = MISCELLANEOUS_MC}} INVOCATION_LIST_NT'abide by the can't lock what's open rule' INVOCATION_NT'abide by the can't lock what's open rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'can't lock what's open rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'can't lock what's open rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'can't lock what's open rule' {kind: rule} {rule: can't lock what's open rule}{meaning: {can't lock what's open rule = MISCELLANEOUS_MC}} INVOCATION_LIST_NT'abide by the need a matching key rule' INVOCATION_NT'abide by the need a matching key rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'need a matching key rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'need a matching key rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'need a matching key rule' {kind: rule} {rule: need a matching key rule}{meaning: {need a matching key rule = MISCELLANEOUS_MC}} INVOCATION_LIST_NT'now the key locked with is the second noun' {control structure: NOW} CONDITION_CONTEXT_NT'the key locked with is the second noun' - RULE_NT'carry out an actor locking keylessly ( this is the standard ' {unit: 4} + IMPERATIVE_NT'carry out an actor locking keylessly ( this is the standard ' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} INVOCATION_NT'if sequential action option is active' {phrase invoked: call} - CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'sequential action option is active' {proposition: << active('sequential action option') >>} {term: 'sequential action option'} CODE_BLOCK_NT INVOCATION_LIST_NT'do nothing' {indent: 2} @@ -20525,22 +18122,18 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the person asked is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is the player' {proposition: << ('person asked' == 'the player') >>} {term: 'person asked'} CODE_BLOCK_NT CODE_BLOCK_NT'say "(with [the key locked with])[command clarification brea' {control structure: SAY} INVOCATION_LIST_SAY_NT'"(with [the key locked with])[command clarification break]" ' INVOCATION_NT'"(with [the key locked with])[command clarification break]" ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"(with [the key locked with])[command clarification break]" ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"(with [the key locked with])[command clarification break]" ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"(with [the key locked with])[command clarification break]" ' {kind: text} INVOCATION_LIST_NT'try the person asked locking the noun with the key locked wi' {indent: 1} INVOCATION_NT'try the person asked locking the noun with the key locked wi' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked locking the noun with the key locked with' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked locking the noun with the key locked with' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked locking the noun with the key locked with' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked locking the noun with the key locked with' {kind: action} {explicit action: } HEADING_NT'volume 3 - the passkey kind , needed only if you want keys t' {heading 1} {under: H1'volume 3 - the passkey kind , needed only if you want keys to name themselves'} {unit: 4} SENTENCE_NT'a passkey is a kind of thing' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} @@ -20556,7 +18149,7 @@ ROOT_NT PROPER_NOUN_NT'A kind of key whose inventory listing changes to reflect the' {refined} {eval: CONSTANT_NT'A kind of key whose inventory listing changes to reflect the' {kind: text}} - RULE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} SENTENCE_NT'unbolting relates one passkey to various things' {unit: 4} {classified} VERB_NT'relates' {verb 'relate' 3p s act IS_TENSE +ve} {special meaning: new-relation} UNPARSED_NOUN_NT'unbolting' {new relation: unbolting} @@ -20566,53 +18159,47 @@ ROOT_NT VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to unbolt' UNPARSED_NOUN_NT'unbolting relation' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'after printing the name of an identified passkey ( called th' {unit: 4} + IMPERATIVE_NT'after printing the name of an identified passkey ( called th' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the item' {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the item' CODE_BLOCK_NT'say " (which [open] [the list of things unbolted by the item' {control structure: SAY} INVOCATION_LIST_SAY_NT'" (which [open] [the list of things unbolted by the item])" ' INVOCATION_NT'" (which [open] [the list of things unbolted by the item])" ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" (which [open] [the list of things unbolted by the item])" ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" (which [open] [the list of things unbolted by the item])" ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" (which [open] [the list of things unbolted by the item])" ' {kind: text} - RULE_NT'after examining an identified passkey ( this is the passkey ' {unit: 4} + IMPERATIVE_NT'after examining an identified passkey ( this is the passkey ' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [unlock] [the list of things unbolted by the' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [unlock] [the list of things unbolted by the nou' INVOCATION_NT'"[The noun] [unlock] [the list of things unbolted by the nou' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [unlock] [the list of things unbolted by the nou' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [unlock] [the list of things unbolted by the nou' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [unlock] [the list of things unbolted by the nou' {kind: text} - RULE_NT'carry out unlocking something with a passkey ( this is the s' {unit: 4} + IMPERATIVE_NT'carry out unlocking something with a passkey ( this is the s' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun unlocks the noun' {colon_block_command} INVOCATION_NT'if the second noun unlocks the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun unlocks the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun unlocks the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun unlocks the noun' {proposition: << ('second noun' == <(QUOTED_INAME_0_00000053(*1)) : 'the noun'>) >>} {term: 'second noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the second noun unbolts the noun' {results_from_splitting} {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the second noun unbolts the noun' - RULE_NT'report someone trying unlocking something with a passkey ( t' {unit: 4} + IMPERATIVE_NT'report someone trying unlocking something with a passkey ( t' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the second noun unbolts the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the second noun unbolts the noun' - RULE_NT'carry out locking something with a passkey ( this is the sta' {unit: 4} + IMPERATIVE_NT'carry out locking something with a passkey ( this is the sta' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun unlocks the noun' {colon_block_command} INVOCATION_NT'if the second noun unlocks the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun unlocks the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun unlocks the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun unlocks the noun' {proposition: << ('second noun' == <(QUOTED_INAME_0_00000053(*1)) : 'the noun'>) >>} {term: 'second noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the second noun unbolts the noun' {results_from_splitting} {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the second noun unbolts the noun' - RULE_NT'report someone trying locking something with a passkey ( thi' {unit: 4} + IMPERATIVE_NT'report someone trying locking something with a passkey ( thi' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the second noun unbolts the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the second noun unbolts the noun' @@ -20630,292 +18217,238 @@ ROOT_NT COMMON_NOUN_NT'keychain' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'keychain'} {creation: << kind=keychain(x) >>} {eval: TEST_VALUE_NT} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'A keychain which can hold the player's keys without forcing ' {refined} {eval: CONSTANT_NT'A keychain which can hold the player's keys without forcing ' {kind: text}} - RULE_NT'instead of putting something which is not a passkey on a key' {unit: 4} + IMPERATIVE_NT'instead of putting something which is not a passkey on a key' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [are] not a key." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [are] not a key." ( a )' INVOCATION_NT'"[The noun] [are] not a key." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"[The noun] [are] not a key." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"[The noun] [are] not a key." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [are] not a key." ( a )' {kind: text} SENTENCE_NT'the keychain-aware carrying requirements rule is listed inst' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the keychain-aware carrying requirements rule' UNPARSED_NOUN_NT'instead of the carrying requirements rule in the action-proc' - RULE_NT'this is the keychain-aware carrying requirements rule' {unit: 4} + IMPERATIVE_NT'this is the keychain-aware carrying requirements rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if locking or unlocking something with something which is on' {colon_block_command} {indent: 1} INVOCATION_NT'if locking or unlocking something with something which is on' {phrase invoked: call} - CONDITION_CONTEXT_NT'locking or unlocking something with something which is on a ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'locking or unlocking something with something which is on a ' {token check to do: } {token to be parsed against: } LOGICAL_OR_NT'locking or unlocking something with something which is on a ' TEST_VALUE_NT'locking' - CONSTANT_NT'locking' {kind: described action} {action pattern: } + CONSTANT_NT'locking' {kind: described action} {action pattern: } TEST_VALUE_NT'unlocking something with something which is on a keychain wh' - CONSTANT_NT'unlocking something with something which is on a keychain wh' {kind: described action} {action pattern: } + CONSTANT_NT'unlocking something with something which is on a keychain wh' {kind: described action} {action pattern: > second: << kind=thing_c(x) ^ kind=keychain() ^ ('the actor' == >) >>>} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {indent: 2} INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'abide by the carrying requirements rule' {indent: 1} INVOCATION_NT'abide by the carrying requirements rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'carrying requirements rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'carrying requirements rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'carrying requirements rule' {kind: rule} {rule: carrying requirements rule}{meaning: {carrying requirements rule = MISCELLANEOUS_MC}} SENTENCE_NT'understand "put [passkey] on [keychain]" as putting it on' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"put [passkey] on [keychain]"' UNPARSED_NOUN_NT'putting it on' - RULE_NT'rule for deciding whether all includes passkeys which are on' {unit: 4} + IMPERATIVE_NT'rule for deciding whether all includes passkeys which are on' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a keychain' {colon_block_command} INVOCATION_NT'if the second noun is not a keychain' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is not a keychain' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is not a keychain' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is not a keychain' {proposition: << NOT< kind=keychain('second noun') NOT> >>} {term: 'second noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' {results_from_splitting} {indent: 1} HEADING_NT'volume 5 - support materials' {heading 1} {under: H1'volume 5 - support materials'} {unit: 4} - RULE_NT'this is the noun autotaking rule' {unit: 4} + IMPERATIVE_NT'this is the noun autotaking rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} INVOCATION_NT'if sequential action option is active' {phrase invoked: call} - CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'sequential action option is active' {proposition: << active('sequential action option') >>} {term: 'sequential action option'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the person asked' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is the person asked' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the person asked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the person asked' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the person asked' {proposition: << ('player' == 'the person asked') >>} {term: 'player'} CODE_BLOCK_NT INVOCATION_LIST_NT'try taking the noun' {indent: 3} INVOCATION_NT'try taking the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'taking the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'taking the noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'taking the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'taking the noun' {kind: action} {explicit action: } CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} INVOCATION_LIST_NT'try the person asked trying taking the noun' {indent: 3} INVOCATION_NT'try the person asked trying taking the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked trying taking the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked trying taking the noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked trying taking the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked trying taking the noun' {kind: action} {explicit action: } CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} INVOCATION_LIST_NT'carry out the implicitly taking activity with the noun' {indent: 2} INVOCATION_NT'carry out the implicitly taking activity with the noun' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'implicitly taking' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'implicitly taking' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'implicitly taking' {kind: activity on objects} {activity: implicitly taking}{meaning: {implicitly taking = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'this is the second noun autotaking rule' {unit: 4} + IMPERATIVE_NT'this is the second noun autotaking rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} INVOCATION_NT'if sequential action option is active' {phrase invoked: call} - CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'sequential action option is active' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'sequential action option is active' {proposition: << active('sequential action option') >>} {term: 'sequential action option'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the person asked' {colon_block_command} {indent: 2} INVOCATION_NT'if the player is the person asked' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the person asked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the person asked' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the person asked' {proposition: << ('player' == 'the person asked') >>} {term: 'player'} CODE_BLOCK_NT INVOCATION_LIST_NT'try taking the second noun' {indent: 3} INVOCATION_NT'try taking the second noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'taking the second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'taking the second noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'taking the second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'taking the second noun' {kind: action} {explicit action: } CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} INVOCATION_LIST_NT'try the person asked trying taking the second noun' {indent: 3} INVOCATION_NT'try the person asked trying taking the second noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked trying taking the second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'person asked trying taking the second noun' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'person asked trying taking the second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'person asked trying taking the second noun' {kind: action} {explicit action: } CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} INVOCATION_LIST_NT'carry out the implicitly taking activity with the second nou' {indent: 2} INVOCATION_NT'carry out the implicitly taking activity with the second nou' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'implicitly taking' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: activity} + RVALUE_CONTEXT_NT'implicitly taking' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: activity} CONSTANT_NT'implicitly taking' {kind: activity on objects} {activity: implicitly taking}{meaning: {implicitly taking = ACTIVITY_MC}} - RVALUE_CONTEXT_NT'second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} NONLOCAL_VARIABLE_NT'second noun' {nonlocal: 'second noun'(var)object}{meaning: {second noun = VARIABLE_MC}} - RULE_NT'this is the must hold the noun rule' {unit: 4} + IMPERATIVE_NT'this is the must hold the noun rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked does not have the noun' {colon_block_command} INVOCATION_NT'if the person asked does not have the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked does not have the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked does not have the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked does not have the noun' {proposition: << NOT< ('person asked' == ) NOT> >>} {term: 'person asked'} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the noun autotaking rule' {results_from_splitting} {indent: 1} INVOCATION_NT'follow the noun autotaking rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun autotaking rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'noun autotaking rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'noun autotaking rule' {kind: rule} {rule: noun autotaking rule}{meaning: {noun autotaking rule = MISCELLANEOUS_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked does not have the noun' {colon_block_command} INVOCATION_NT'if the person asked does not have the noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked does not have the noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked does not have the noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked does not have the noun' {proposition: << NOT< ('person asked' == ) NOT> >>} {term: 'person asked'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'make no decision' INVOCATION_NT'make no decision' {phrase invoked: call} - RULE_NT'this is the must hold the second noun rule' {unit: 4} + IMPERATIVE_NT'this is the must hold the second noun rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked does not have the second noun' {colon_block_command} INVOCATION_NT'if the person asked does not have the second noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked does not have the second noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked does not have the second noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked does not have the second noun' {proposition: << NOT< ('person asked' == ) NOT> >>} {term: 'person asked'} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the second noun autotaking rule' {results_from_splitting} {indent: 1} INVOCATION_NT'follow the second noun autotaking rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'second noun autotaking rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'second noun autotaking rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'second noun autotaking rule' {kind: rule} {rule: second noun autotaking rule}{meaning: {second noun autotaking rule = MISCELLANEOUS_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked does not have the second noun' {colon_block_command} INVOCATION_NT'if the person asked does not have the second noun' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked does not have the second noun' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked does not have the second noun' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked does not have the second noun' {proposition: << NOT< ('person asked' == ) NOT> >>} {term: 'person asked'} CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'make no decision' INVOCATION_NT'make no decision' {phrase invoked: call} - RULE_NT'this is the must have accessible the noun rule' {unit: 4} + IMPERATIVE_NT'this is the must have accessible the noun rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not key-accessible' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is not key-accessible' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is not key-accessible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is not key-accessible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is not key-accessible' {proposition: << NOT< key-accessible('noun') NOT> >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is on a keychain ( called the containing keychai' {indent: 2} {colon_block_command} INVOCATION_NT'if the noun is on a keychain ( called the containing keychai' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is on a keychain ( called the containing keychain )' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is on a keychain ( called the containing keychain )' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is on a keychain ( called the containing keychain )' {proposition: << kind=keychain() ^ called='containing keychain':keychain() >>} {term: 'noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is the containing keychain' {results_from_splitting} {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'the noun is the containing keychain' INVOCATION_LIST_NT'follow the noun autotaking rule' {indent: 2} INVOCATION_NT'follow the noun autotaking rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun autotaking rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'noun autotaking rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'noun autotaking rule' {kind: rule} {rule: noun autotaking rule}{meaning: {noun autotaking rule = MISCELLANEOUS_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not key-accessible' {colon_block_command} {indent: 1} INVOCATION_NT'if the noun is not key-accessible' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is not key-accessible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is not key-accessible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is not key-accessible' {proposition: << NOT< key-accessible('noun') NOT> >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the person asked' {indent: 2} {colon_block_command} INVOCATION_NT'if the player is the person asked' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the person asked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the person asked' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the person asked' {proposition: << ('player' == 'the person asked') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Without holding [the noun], [we] [can] do nothing." ( a' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Without holding [the noun], [we] [can] do nothing." ( a )' INVOCATION_NT'"Without holding [the noun], [we] [can] do nothing." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Without holding [the noun], [we] [can] do nothing." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Without holding [the noun], [we] [can] do nothing." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Without holding [the noun], [we] [can] do nothing." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'make no decision' {indent: 1} INVOCATION_NT'make no decision' {phrase invoked: call} - RULE_NT'this is the must have accessible the second noun rule' {unit: 4} + IMPERATIVE_NT'this is the must have accessible the second noun rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not key-accessible' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun is not key-accessible' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is not key-accessible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is not key-accessible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is not key-accessible' {proposition: << NOT< key-accessible('second noun') NOT> >>} {term: 'second noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'let the held second noun be the second noun' {indent: 2} INVOCATION_NT'let the held second noun be the second noun' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'held second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'held second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'held second noun' - RVALUE_CONTEXT_NT'second noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} NONLOCAL_VARIABLE_NT'second noun' {nonlocal: 'second noun'(var)object}{meaning: {second noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is on a keychain ( called the containing ' {indent: 2} {colon_block_command} INVOCATION_NT'if the second noun is on a keychain ( called the containing ' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is on a keychain ( called the containing keychai' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is on a keychain ( called the containing keychai' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is on a keychain ( called the containing keychai' {proposition: << kind=keychain() ^ called='containing keychain':keychain() >>} {term: 'second noun'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the second noun is the containing keychain' {results_from_splitting} {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'the second noun is the containing keychain' INVOCATION_LIST_NT'follow the second noun autotaking rule' {indent: 2} INVOCATION_NT'follow the second noun autotaking rule' {phrase invoked: call} - RVALUE_CONTEXT_NT'second noun autotaking rule' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} + RVALUE_CONTEXT_NT'second noun autotaking rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'second noun autotaking rule' {kind: rule} {rule: second noun autotaking rule}{meaning: {second noun autotaking rule = MISCELLANEOUS_MC}} INVOCATION_LIST_NT'now the second noun is the held second noun' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the second noun is the held second noun' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not key-accessible' {colon_block_command} {indent: 1} INVOCATION_NT'if the second noun is not key-accessible' {phrase invoked: call} - CONDITION_CONTEXT_NT'second noun is not key-accessible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second noun is not key-accessible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second noun is not key-accessible' {proposition: << NOT< key-accessible('second noun') NOT> >>} {term: 'second noun'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the person asked' {indent: 2} {colon_block_command} INVOCATION_NT'if the player is the person asked' {phrase invoked: call} - CONDITION_CONTEXT_NT'player is the person asked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player is the person asked' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player is the person asked' {proposition: << ('player' == 'the person asked') >>} {term: 'player'} CODE_BLOCK_NT CODE_BLOCK_NT'say "Without holding [the second noun], [we] [can] do nothin' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Without holding [the second noun], [we] [can] do nothing." ' INVOCATION_NT'"Without holding [the second noun], [we] [can] do nothing." ' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Without holding [the second noun], [we] [can] do nothing." ' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Without holding [the second noun], [we] [can] do nothing." ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Without holding [the second noun], [we] [can] do nothing." ' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} @@ -20930,16 +18463,14 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'universal unlocking' UNPARSED_NOUN_NT'applying to nothing' - RULE_NT'carry out universal unlocking ( this is the lock debugging r' {unit: 4} + IMPERATIVE_NT'carry out universal unlocking ( this is the lock debugging r' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with item running through locked things' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with item running through locked things' {phrase invoked: call} {kind variable declarations: K=thing} - NEW_LOCAL_CONTEXT_NT'item' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} + NEW_LOCAL_CONTEXT_NT'item' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: K} UNKNOWN_NT'item' - RVALUE_CONTEXT_NT'locked things' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'locked things' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'locked things' {kind: description of things} {proposition: << kind=thing(x) ^ locked(x) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'now the item is unlocked' {indent: 2} {control structure: NOW} @@ -20947,16 +18478,14 @@ ROOT_NT CODE_BLOCK_NT'say "Unlocking [the item]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Unlocking [the item]." ( a )' INVOCATION_NT'"Unlocking [the item]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Unlocking [the item]." ( a )' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Unlocking [the item]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Unlocking [the item]." ( a )' {kind: text} - RULE_NT'report universal unlocking ( this is the report universal un' {unit: 4} + IMPERATIVE_NT'report universal unlocking ( this is the report universal un' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "A loud stereophonic click assures you that everything i' {control structure: SAY} INVOCATION_LIST_SAY_NT'"A loud stereophonic click assures you that everything in th' INVOCATION_NT'"A loud stereophonic click assures you that everything in th' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"A loud stereophonic click assures you that everything in th' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"A loud stereophonic click assures you that everything in th' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"A loud stereophonic click assures you that everything in th' {kind: text} ENDHERE_NT'locksmith' {unit: 4} SENTENCE_NT'understand "go to/toward/into [any room]" as going toward' {unit: 4} {classified} @@ -20978,91 +18507,74 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'going toward' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'check going toward' {unit: 4} + IMPERATIVE_NT'check going toward' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is the location' {colon_block_command} INVOCATION_NT'if the noun is the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is the location' {proposition: << ('noun' == 'the location') >>} {term: 'noun'} CODE_BLOCK_NT CODE_BLOCK_NT'say "You're already in [the location]."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You're already in "' INVOCATION_NT'"You're already in "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You're already in "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You're already in "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You're already in "' {kind: text} INVOCATION_LIST_SAY_NT'the location' INVOCATION_NT'the location' {phrase invoked: call} - RVALUE_CONTEXT_NT'location' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'location' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'location' {nonlocal: 'location'(var)object}{meaning: {location = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out going toward' {unit: 4} + IMPERATIVE_NT'carry out going toward' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the destination of the player is the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the destination of the player is the noun' INVOCATION_LIST_NT'let heading be the best route from the location to the noun ' INVOCATION_NT'let heading be the best route from the location to the noun ' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'heading' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'heading' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'heading' - RVALUE_CONTEXT_NT'best route from the location to the noun , using even locked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'best route from the location to the noun , using even locked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'best route from the location to the noun , using even locked' INVOCATION_LIST_NT'best route from the location to the noun , using even locked' INVOCATION_NT'best route from the location to the noun' {phrase invoked: call} {resulting: object} {phrase options invoked: using even locked doors} - RVALUE_CONTEXT_NT'location' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'location' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'location' {nonlocal: 'location'(var)object}{meaning: {location = VARIABLE_MC}} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if heading is not a direction' {colon_block_command} INVOCATION_NT'if heading is not a direction' {phrase invoked: call} - CONDITION_CONTEXT_NT'heading is not a direction' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'heading is not a direction' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'heading is not a direction' {proposition: << NOT< kind=direction('heading') NOT> >>} {term: 'heading'} CODE_BLOCK_NT CODE_BLOCK_NT'say "You can't think how to get there from here."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You can't think how to get there from here."' INVOCATION_NT'"You can't think how to get there from here."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You can't think how to get there from here."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You can't think how to get there from here."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You can't think how to get there from here."' {kind: text} CODE_BLOCK_NT {control structure: INS} INVOCATION_LIST_NT'try going heading' INVOCATION_NT'try going heading' {phrase invoked: call} - RVALUE_CONTEXT_NT'going heading' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'going heading' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'going heading' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'going heading' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the location is the destination of the player' {colon_block_command} INVOCATION_NT'if the location is the destination of the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is the destination of the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is the destination of the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'location is the destination of the player' {proposition: << ('location' == 'the destination of the player') >>} {term: 'location'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the destination of the player is blank' {results_from_splitting} {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the destination of the player is blank' - RULE_NT'instead of waiting when the destination of the player is not' {unit: 4} + IMPERATIVE_NT'instead of waiting when the destination of the player is not' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the destination of the player is the location' {colon_block_command} {indent: 1} INVOCATION_NT'if the destination of the player is the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'destination of the player is the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'destination of the player is the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'destination of the player is the location' {proposition: << ('destination of the player' == 'the location') >>} {term: 'destination of the player'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the destination of the player is blank' {indent: 2} {control structure: NOW} @@ -21070,15 +18582,12 @@ ROOT_NT CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} INVOCATION_LIST_NT'try going toward destination of the player' {indent: 2} INVOCATION_NT'try going toward destination of the player' {phrase invoked: call} - RVALUE_CONTEXT_NT'going toward destination of the player' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'going toward destination of the player' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'going toward destination of the player' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'going toward destination of the player' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the location is the destination of the player' {indent: 2} {colon_block_command} INVOCATION_NT'if the location is the destination of the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is the destination of the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is the destination of the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'location is the destination of the player' {proposition: << ('location' == 'the destination of the player') >>} {term: 'location'} CODE_BLOCK_NT INVOCATION_LIST_NT'now the destination of the player is blank' {results_from_splitting} {indent: 3} {control structure: NOW} @@ -21091,45 +18600,41 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'stopping' UNPARSED_NOUN_NT'applying to nothing' - RULE_NT'carry out stopping' {unit: 4} + IMPERATIVE_NT'carry out stopping' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the destination of the player is blank' {control structure: NOW} CONDITION_CONTEXT_NT'the destination of the player is blank' - RULE_NT'report stopping' {unit: 4} + IMPERATIVE_NT'report stopping' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You stop in your tracks."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You stop in your tracks."' INVOCATION_NT'"You stop in your tracks."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You stop in your tracks."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You stop in your tracks."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You stop in your tracks."' {kind: text} - RULE_NT'after going to an air-conditioned room' {unit: 4} + IMPERATIVE_NT'after going to an air-conditioned room' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You step into the mercifully air-conditioned surroundin' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You step into the mercifully air-conditioned surroundings o' INVOCATION_NT'"You step into the mercifully air-conditioned surroundings o' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You step into the mercifully air-conditioned surroundings o' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You step into the mercifully air-conditioned surroundings o' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You step into the mercifully air-conditioned surroundings o' {kind: text} INVOCATION_LIST_NT'continue the action' INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'after going from an air-conditioned room' {unit: 4} + IMPERATIVE_NT'after going from an air-conditioned room' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You emerge from the air-conditioning into heat like a w' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You emerge from the air-conditioning into heat like a wall.' INVOCATION_NT'"You emerge from the air-conditioning into heat like a wall.' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You emerge from the air-conditioning into heat like a wall.' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You emerge from the air-conditioning into heat like a wall.' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You emerge from the air-conditioning into heat like a wall.' {kind: text} INVOCATION_LIST_NT'continue the action' INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'instead of listening to an air-conditioned room' {unit: 4} + IMPERATIVE_NT'instead of listening to an air-conditioned room' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "The air-conditioning hums softly."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"The air-conditioning hums softly."' INVOCATION_NT'"The air-conditioning hums softly."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"The air-conditioning hums softly."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"The air-conditioning hums softly."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"The air-conditioning hums softly."' {kind: text} SENTENCE_NT'the alfred cralle pool hall is a room' {unit: 4} {classified} {interpretation of subject: infs'person'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} @@ -21172,28 +18677,24 @@ ROOT_NT PROPER_NOUN_NT'felt door' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'felt door'} {eval: CONSTANT_NT'felt door' {kind: door} {instance: I90'felt door'} {enumeration: 0}} PROPER_NOUN_NT'description' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'description'=text}} PROPER_NOUN_NT'"It has a prominent lock, designed for an old-fashioned key.' {refined} {eval: CONSTANT_NT'"It has a prominent lock, designed for an old-fashioned key.' {kind: text}} - RULE_NT'after locking a door with something in the presence of an ot' {unit: 4} + IMPERATIVE_NT'after locking a door with something in the presence of an ot' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The audience] looks a little non-plussed when you lock' {control structure: SAY} INVOCATION_LIST_SAY_NT'the audience' INVOCATION_NT'the audience' {phrase invoked: call} - RVALUE_CONTEXT_NT'audience' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'audience' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'audience' {local: LV"audience"-person person} INVOCATION_LIST_SAY_NT'" looks a little non-plussed when you lock "' INVOCATION_NT'" looks a little non-plussed when you lock "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" looks a little non-plussed when you lock "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" looks a little non-plussed when you lock "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" looks a little non-plussed when you lock "' {kind: text} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'", but shrugs."' INVOCATION_NT'", but shrugs."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", but shrugs."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", but shrugs."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", but shrugs."' {kind: text} SENTENCE_NT'nancy johnson memorial square is west of the felt door' {unit: 4} {classified} {interpretation of subject: infs'key to the city'} VERB_NT'is west of' {verb 'be' 3p s act IS_TENSE +ve} {prep1: west of} @@ -21256,22 +18757,20 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'slot' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'slot'} {eval: CONSTANT_NT'slot' {kind: object} {instance: I97'slot'} {enumeration: 0}} COMMON_NOUN_NT'container' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'container'} {creation: << kind=container(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'carry out inserting something into the slot' {unit: 4} + IMPERATIVE_NT'carry out inserting something into the slot' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is nowhere' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is nowhere' - RULE_NT'report inserting something into the slot' {unit: 4} + IMPERATIVE_NT'report inserting something into the slot' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] falls out of sight, and you know you will ne' {control structure: SAY} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" falls out of sight, and you know you will never see it aga' INVOCATION_NT'" falls out of sight, and you know you will never see it aga' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" falls out of sight, and you know you will never see it aga' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" falls out of sight, and you know you will never see it aga' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" falls out of sight, and you know you will never see it aga' {kind: text} SENTENCE_NT'hamwi street is northeast of an iron gate' {unit: 4} {classified} {interpretation of subject: infs'slot'} VERB_NT'is northeast of' {verb 'be' 3p s act IS_TENSE +ve} {prep1: northeast of} @@ -21296,59 +18795,48 @@ ROOT_NT AND_NT'and' {refined} ADJECTIVE_NT'lockable' {refined} {predicate: lockable} {creation: << lockable(x) ^ lockable(x) >>} ADJECTIVE_NT'unlocked' {refined} {predicate: unlocked} {creation: << unlocked(x) ^ unlocked(x) >>} - RULE_NT'before printing the name of the iron gate while not opening ' {unit: 4} + IMPERATIVE_NT'before printing the name of the iron gate while not opening ' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is the player' {colon_block_command} {indent: 1} INVOCATION_NT'if the person asked is the player' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is the player' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is the player' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is the player' {proposition: << ('person asked' == 'the player') >>} {term: 'person asked'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the gate is open' {indent: 2} {colon_block_command} INVOCATION_NT'if the gate is open' {phrase invoked: call} - CONDITION_CONTEXT_NT'gate is open' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'gate is open' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'gate is open' {proposition: << open('gate') >>} {term: 'gate'} CODE_BLOCK_NT CODE_BLOCK_NT'say "open "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"open "' INVOCATION_NT'"open "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"open "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"open "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"open "' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the gate is locked' {colon_block_command} {indent: 1} INVOCATION_NT'if the gate is locked' {phrase invoked: call} - CONDITION_CONTEXT_NT'gate is locked' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'gate is locked' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'gate is locked' {proposition: << locked('gate') >>} {term: 'gate'} CODE_BLOCK_NT CODE_BLOCK_NT'say "locked "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"locked "' INVOCATION_NT'"locked "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"locked "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"locked "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"locked "' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the gate is closed' {colon_block_command} {indent: 1} INVOCATION_NT'if the gate is closed' {phrase invoked: call} - CONDITION_CONTEXT_NT'gate is closed' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'gate is closed' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'gate is closed' {proposition: << closed('gate') >>} {term: 'gate'} CODE_BLOCK_NT CODE_BLOCK_NT'say "closed "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"closed "' INVOCATION_NT'"closed "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"closed "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"closed "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"closed "' {kind: text} SENTENCE_NT'cold comfort ice cream is north of a metal door' {unit: 4} {classified} {interpretation of subject: infs'iron gate'} VERB_NT'is north of' {verb 'be' 3p s act IS_TENSE +ve} {prep1: north of} @@ -21455,23 +18943,21 @@ ROOT_NT VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"glass"' UNPARSED_NOUN_NT'the box' - RULE_NT'instead of attacking the closed emergency box' {unit: 4} + IMPERATIVE_NT'instead of attacking the closed emergency box' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You hit the emergency box, which shatters open."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You hit the emergency box, which shatters open."' INVOCATION_NT'"You hit the emergency box, which shatters open."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You hit the emergency box, which shatters open."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You hit the emergency box, which shatters open."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You hit the emergency box, which shatters open."' {kind: text} INVOCATION_LIST_NT'now the emergency box is open' {control structure: NOW} CONDITION_CONTEXT_NT'the emergency box is open' - RULE_NT'instead of attacking the open emergency box' {unit: 4} + IMPERATIVE_NT'instead of attacking the open emergency box' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "The glass has already been thoroughly broken."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"The glass has already been thoroughly broken."' INVOCATION_NT'"The glass has already been thoroughly broken."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"The glass has already been thoroughly broken."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"The glass has already been thoroughly broken."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"The glass has already been thoroughly broken."' {kind: text} SENTENCE_NT'the syringe is in the emergency box' {unit: 4} {classified} {interpretation of subject: infs'emergency box'} VERB_NT'is in' {verb 'be' 3p s act IS_TENSE +ve} {prep1: in} @@ -21575,250 +19061,198 @@ ROOT_NT SENTENCE_NT'use full-length room descriptions' {unit: 4} {classified} VERB_NT'use' {verb 'use' 3p p act IS_TENSE +ve} {special meaning: use} UNPARSED_NOUN_NT'full-length room descriptions' - RULE_NT'after looking in an outdoors room' {unit: 4} + IMPERATIVE_NT'after looking in an outdoors room' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let started printing be false' {indent: 1} INVOCATION_NT'let started printing be false' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'started printing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: truth state} {required: value} + NEW_LOCAL_CONTEXT_NT'started printing' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: truth state} {required: value} UNKNOWN_NT'started printing' - RVALUE_CONTEXT_NT'false' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'false' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'false' {kind: truth state} {explicit literal} {number: 0} INVOCATION_LIST_NT'now every proximate door is not mentioned' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'every proximate door is not mentioned' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if an indoors room is adjacent' {colon_block_command} {indent: 1} INVOCATION_NT'if an indoors room is adjacent' {phrase invoked: call} - CONDITION_CONTEXT_NT'an indoors room is adjacent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'an indoors room is adjacent' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'an indoors room is adjacent' {proposition: << Exists x : kind=room(x) ^ indoors(x) ^ adjacent(x) >>} {term: x} CODE_BLOCK_NT INVOCATION_LIST_NT'let started printing be true' {indent: 2} INVOCATION_NT'let started printing be true' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'started printing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'started printing' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'started printing' {local: LV"started printing"-truth state truth state} - RVALUE_CONTEXT_NT'true' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'true' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'true' {kind: truth state} {explicit literal} {number: 1} CODE_BLOCK_NT'say "From here you can head into [the list of adjacent indoo' {control structure: SAY} INVOCATION_LIST_SAY_NT'"From here you can head into "' INVOCATION_NT'"From here you can head into "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"From here you can head into "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"From here you can head into "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"From here you can head into "' {kind: text} INVOCATION_LIST_SAY_NT'the list of adjacent indoors rooms' INVOCATION_NT'the list of adjacent indoors rooms' {phrase invoked: call} - RVALUE_CONTEXT_NT'adjacent indoors rooms' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'adjacent indoors rooms' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'adjacent indoors rooms' {kind: description of rooms} {proposition: << kind=room(x) ^ adjacent(x) ^ indoors(x) >>} INVOCATION_LIST_SAY_NT'if a proximate door is not mentioned' INVOCATION_NT'if a proximate door is not mentioned' {phrase invoked: call} - CONDITION_CONTEXT_NT'a proximate door is not mentioned' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'a proximate door is not mentioned' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'a proximate door is not mentioned' {proposition: << Exists x : kind=door(x) ^ proximate(x) ^ NOT< mentioned(x) NOT> >>} {term: x} INVOCATION_LIST_SAY_NT'", or go through "' INVOCATION_NT'", or go through "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", or go through "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", or go through "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", or go through "' {kind: text} INVOCATION_LIST_SAY_NT'the list of proximate doors which are not mentioned' INVOCATION_NT'the list of proximate doors which are not mentioned' {phrase invoked: call} - RVALUE_CONTEXT_NT'proximate doors which are not mentioned' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'proximate doors which are not mentioned' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'proximate doors which are not mentioned' {kind: description of doors} {proposition: << kind=door(x) ^ proximate(x) ^ NOT< mentioned(x) NOT> >>} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'". "' {suppress_newlines} INVOCATION_NT'". "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'". "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'". "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'". "' {kind: text} INVOCATION_LIST_SAY_NT'run paragraph on' INVOCATION_NT'run paragraph on' {phrase invoked: call} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if an outdoors room is adjacent' {colon_block_command} {indent: 1} INVOCATION_NT'if an outdoors room is adjacent' {phrase invoked: call} - CONDITION_CONTEXT_NT'an outdoors room is adjacent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'an outdoors room is adjacent' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'an outdoors room is adjacent' {proposition: << Exists x : kind=room(x) ^ outdoors(x) ^ adjacent(x) >>} {term: x} CODE_BLOCK_NT CODE_BLOCK_NT'say "You could[if started printing is true] also[end if] go ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You could"' INVOCATION_NT'"You could"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You could"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You could"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You could"' {kind: text} INVOCATION_LIST_SAY_NT'if started printing is true' INVOCATION_NT'if started printing is true' {phrase invoked: call} - CONDITION_CONTEXT_NT'started printing is true' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'started printing is true' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'started printing is true' {proposition: << ('started printing' == 'true') >>} {term: 'started printing'} INVOCATION_LIST_SAY_NT'" also"' INVOCATION_NT'" also"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" also"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" also"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" also"' {kind: text} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'" go "' INVOCATION_NT'" go "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" go "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" go "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" go "' {kind: text} INVOCATION_LIST_NT'let count be the number of adjacent outdoors rooms' {indent: 2} INVOCATION_NT'let count be the number of adjacent outdoors rooms' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'count' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'count' - RVALUE_CONTEXT_NT'number of adjacent outdoors rooms' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'number of adjacent outdoors rooms' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'number of adjacent outdoors rooms' INVOCATION_LIST_NT'number of adjacent outdoors rooms' INVOCATION_NT'number of adjacent outdoors rooms' {phrase invoked: call} {resulting: number} - RVALUE_CONTEXT_NT'adjacent outdoors rooms' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of values'} {required: description of values} + RVALUE_CONTEXT_NT'adjacent outdoors rooms' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of values'} {required: description of values} CONSTANT_NT'adjacent outdoors rooms' {kind: description of rooms} {proposition: << kind=room(x) ^ adjacent(x) ^ outdoors(x) >>} INVOCATION_LIST_NT'let index be count' {indent: 2} INVOCATION_NT'let index be count' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'index' - RVALUE_CONTEXT_NT'count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} LOCAL_VARIABLE_NT'count' {local: LV object} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with next room running through adjacent outdoors room' {colon_block_command} {indent: 2} INVOCATION_NT'repeat with next room running through adjacent outdoors room' {phrase invoked: call} {kind variable declarations: K=room} - NEW_LOCAL_CONTEXT_NT'next room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: K} + NEW_LOCAL_CONTEXT_NT'next room' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: K} UNKNOWN_NT'next room' - RVALUE_CONTEXT_NT'adjacent outdoors rooms' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'adjacent outdoors rooms' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'adjacent outdoors rooms' {kind: description of rooms} {proposition: << kind=room(x) ^ adjacent(x) ^ outdoors(x) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'let way be the best route from the location to the next room' {indent: 3} INVOCATION_NT'let way be the best route from the location to the next room' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} + NEW_LOCAL_CONTEXT_NT'way' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: object} {required: value} UNKNOWN_NT'way' - RVALUE_CONTEXT_NT'best route from the location to the next room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'best route from the location to the next room' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'best route from the location to the next room' INVOCATION_LIST_NT'best route from the location to the next room' INVOCATION_NT'best route from the location to the next room' {phrase invoked: call} {resulting: object} - RVALUE_CONTEXT_NT'location' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'location' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'location' {nonlocal: 'location'(var)object}{meaning: {location = VARIABLE_MC}} - RVALUE_CONTEXT_NT'next room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'next room' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'next room' {local: LV room} CODE_BLOCK_NT'say "[way] to [the next room]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'way' INVOCATION_NT'way' {phrase invoked: call} {kind variable declarations: K=object} - RVALUE_CONTEXT_NT'way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'way' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} LOCAL_VARIABLE_NT'way' {local: LV object} INVOCATION_LIST_SAY_NT'" to "' INVOCATION_NT'" to "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" to "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" to "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" to "' {kind: text} INVOCATION_LIST_SAY_NT'the next room' INVOCATION_NT'the next room' {phrase invoked: call} - RVALUE_CONTEXT_NT'next room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'next room' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'next room' {local: LV room} INVOCATION_LIST_NT'decrement index' {indent: 3} INVOCATION_NT'decrement index' {phrase invoked: call} - LVALUE_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} LOCAL_VARIABLE_NT'index' {local: LV number} INVOCATION_LIST_NT'make delimiter index of count , continuing' {indent: 2} INVOCATION_NT'make delimiter index of count' {phrase invoked: call} {phrase options invoked: continuing} - RVALUE_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} + RVALUE_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} LOCAL_VARIABLE_NT'index' {local: LV number} - RVALUE_CONTEXT_NT'count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} + RVALUE_CONTEXT_NT'count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} LOCAL_VARIABLE_NT'count' {local: LV object} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if a proximate door is not mentioned' {colon_block_command} {indent: 1} INVOCATION_NT'if a proximate door is not mentioned' {phrase invoked: call} - CONDITION_CONTEXT_NT'a proximate door is not mentioned' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'a proximate door is not mentioned' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'a proximate door is not mentioned' {proposition: << Exists x : kind=door(x) ^ proximate(x) ^ NOT< mentioned(x) NOT> >>} {term: x} CODE_BLOCK_NT INVOCATION_LIST_NT'let started printing be true' {indent: 2} INVOCATION_NT'let started printing be true' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'started printing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'started printing' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'started printing' {local: LV"started printing"-truth state truth state} - RVALUE_CONTEXT_NT'true' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'true' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'true' {kind: truth state} {explicit literal} {number: 1} CODE_BLOCK_NT'say "[if started printing is true]Also available[otherwise]Y' {control structure: SAY} INVOCATION_LIST_SAY_NT'if started printing is true' INVOCATION_NT'if started printing is true' {phrase invoked: call} - CONDITION_CONTEXT_NT'started printing is true' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'started printing is true' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'started printing is true' {proposition: << ('started printing' == 'true') >>} {term: 'started printing'} INVOCATION_LIST_SAY_NT'"Also available"' INVOCATION_NT'"Also available"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Also available"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Also available"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Also available"' {kind: text} INVOCATION_LIST_SAY_NT'otherwise' INVOCATION_NT'otherwise' {phrase invoked: call} INVOCATION_LIST_SAY_NT'"Your available exits"' INVOCATION_NT'"Your available exits"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Your available exits"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Your available exits"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Your available exits"' {kind: text} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} INVOCATION_LIST_SAY_NT'is-are the list of proximate doors which are not mentioned' INVOCATION_NT'is-are the list of proximate doors which are not mentioned' {phrase invoked: call} - RVALUE_CONTEXT_NT'proximate doors which are not mentioned' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'proximate doors which are not mentioned' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'proximate doors which are not mentioned' {kind: description of doors} {proposition: << kind=door(x) ^ proximate(x) ^ NOT< mentioned(x) NOT> >>} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if started printing is true' {indent: 2} {colon_block_command} INVOCATION_NT'if started printing is true' {phrase invoked: call} - CONDITION_CONTEXT_NT'started printing is true' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'started printing is true' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'started printing is true' {proposition: << ('started printing' == 'true') >>} {term: 'started printing'} CODE_BLOCK_NT CODE_BLOCK_NT'say paragraph break' {control structure: SAY} INVOCATION_LIST_SAY_NT'paragraph break' INVOCATION_NT'paragraph break' {phrase invoked: call} - RULE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the front side of it is the location' {colon_block_command} INVOCATION_NT'if the front side of it is the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'front side of it is the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'front side of it is the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'front side of it is the location' {proposition: << ('front side of it' == 'the location') >>} {term: 'front side of it'} CODE_BLOCK_NT INVOCATION_LIST_NT'yes' {results_from_splitting} {indent: 1} @@ -21826,69 +19260,56 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the back side of it is the location' {colon_block_command} INVOCATION_NT'if the back side of it is the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'back side of it is the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'back side of it is the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'back side of it is the location' {proposition: << ('back side of it' == 'the location') >>} {term: 'back side of it'} CODE_BLOCK_NT INVOCATION_LIST_NT'yes' {results_from_splitting} {indent: 1} INVOCATION_NT'yes' {phrase invoked: call} INVOCATION_LIST_NT'no' INVOCATION_NT'no' {phrase invoked: call} - RULE_NT'before exiting when the player is in an indoors room' {unit: 4} + IMPERATIVE_NT'before exiting when the player is in an indoors room' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player can see a door ( called nearest exit )' {indent: 1} {colon_block_command} INVOCATION_NT'if the player can see a door ( called nearest exit )' {phrase invoked: call} - CONDITION_CONTEXT_NT'player can see a door ( called nearest exit )' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player can see a door ( called nearest exit )' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'player can see a door ( called nearest exit )' {proposition: << Exists x : kind=door(x) ^ called='nearest exit':door(x) ^ can-see('player', x) >>} {term: 'player'} CODE_BLOCK_NT INVOCATION_LIST_NT'try entering the nearest exit' {results_from_splitting} {indent: 2} INVOCATION_NT'try entering the nearest exit' {phrase invoked: call} - RVALUE_CONTEXT_NT'entering the nearest exit' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'entering the nearest exit' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'entering the nearest exit' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'entering the nearest exit' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with way running through directions' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with way running through directions' {phrase invoked: call} {kind variable declarations: K=direction} - NEW_LOCAL_CONTEXT_NT'way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: direction} {required: K} + NEW_LOCAL_CONTEXT_NT'way' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: direction} {required: K} UNKNOWN_NT'way' - RVALUE_CONTEXT_NT'directions' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'directions' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'directions' {kind: description of directions} {proposition: << kind=direction(x) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'let next room be the room way from the location' {indent: 2} INVOCATION_NT'let next room be the room way from the location' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'next room' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} + NEW_LOCAL_CONTEXT_NT'next room' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} UNKNOWN_NT'next room' - RVALUE_CONTEXT_NT'room way from the location' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'room way from the location' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'room way from the location' INVOCATION_LIST_NT'room way from the location' INVOCATION_NT'room way from the location' {phrase invoked: call} {resulting: room} {unproven} - RVALUE_CONTEXT_NT'way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'direction'} {required: direction} + RVALUE_CONTEXT_NT'way' {token check to do: } {token to be parsed against: TEST_VALUE_NT'direction'} {required: direction} LOCAL_VARIABLE_NT'way' {local: LV direction} RVALUE_CONTEXT_NT'location' {token check to do: TEST_VALUE_NT'room'} {token to be parsed against: TEST_VALUE_NT'room'} {required: room} NONLOCAL_VARIABLE_NT'location' {nonlocal: 'location'(var)object}{meaning: {location = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the next room is a room' {indent: 2} {colon_block_command} INVOCATION_NT'if the next room is a room' {phrase invoked: call} - CONDITION_CONTEXT_NT'next room is a room' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'next room is a room' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'next room is a room' {proposition: << kind=room('next room') >>} {term: 'next room'} CODE_BLOCK_NT INVOCATION_LIST_NT'try going way' {results_from_splitting} {indent: 3} INVOCATION_NT'try going way' {phrase invoked: call} - RVALUE_CONTEXT_NT'going way' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'going way' {kind: action} {action pattern: direction}>} + RVALUE_CONTEXT_NT'going way' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'going way' {kind: action} {explicit action: direction}>} CODE_BLOCK_NT {control structure: INS} SENTENCE_NT'blank is a room' {unit: 4} {classified} {interpretation of subject: infs'key to the city'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} @@ -22115,21 +19536,18 @@ ROOT_NT PROPER_NOUN_NT'ned' {refined} {refers: infs'ned'} {eval: CONSTANT_NT'ned' {kind: man} {instance: I166'ned'} {enumeration: 0}} RELATIONSHIP_NT'owns' {meaning: ownership-r} {refined} PROPER_NOUN_NT'movie rental' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'movie rental store'} {eval: CONSTANT_NT'movie rental store' {kind: object} {instance: I104'movie rental store'} {enumeration: 0}} - RULE_NT'after printing the name of someone ( called target ) while l' {unit: 4} + IMPERATIVE_NT'after printing the name of someone ( called target ) while l' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the target owns the location of the target' {colon_block_command} INVOCATION_NT'if the target owns the location of the target' {phrase invoked: call} - CONDITION_CONTEXT_NT'target owns the location of the target' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'target owns the location of the target' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'target owns the location of the target' {proposition: << ('target' == <(QUOTED_INAME_0_0000005d(*1)) : 'the location of the target'>) >>} {term: 'target'} CODE_BLOCK_NT CODE_BLOCK_NT'say " (the owner)"' {control structure: SAY} INVOCATION_LIST_SAY_NT'" (the owner)"' INVOCATION_NT'" (the owner)"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" (the owner)"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" (the owner)"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" (the owner)"' {kind: text} SENTENCE_NT'the description of a person is usually "[The noun] [if the n' {unit: 4} {classified} {interpretation of subject: infs'ned'} VERB_NT'is usually' {certainty:likely} {verb 'be' 3p s act IS_TENSE +ve} @@ -22137,58 +19555,48 @@ ROOT_NT COMMON_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT} PROPER_NOUN_NT'description' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'description'=text}} PROPER_NOUN_NT'"[The noun] [if the noun is clean]looks healthy[otherwise]is' {refined} {eval: CONSTANT_NT'"[The noun] [if the noun is clean]looks healthy[otherwise]is' {kind: text}} - RULE_NT'after examining another person who is carrying something' {unit: 4} + IMPERATIVE_NT'after examining another person who is carrying something' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[if the noun is female]She[otherwise]He[end if] is carr' {control structure: SAY} INVOCATION_LIST_SAY_NT'if the noun is female' INVOCATION_NT'if the noun is female' {phrase invoked: call} - CONDITION_CONTEXT_NT'noun is female' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'noun is female' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'noun is female' {proposition: << female('noun') >>} {term: 'noun'} INVOCATION_LIST_SAY_NT'"She"' INVOCATION_NT'"She"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"She"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"She"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"She"' {kind: text} INVOCATION_LIST_SAY_NT'otherwise' INVOCATION_NT'otherwise' {phrase invoked: call} INVOCATION_LIST_SAY_NT'"He"' INVOCATION_NT'"He"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"He"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"He"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"He"' {kind: text} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'" is carrying "' INVOCATION_NT'" is carrying "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" is carrying "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" is carrying "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" is carrying "' {kind: text} INVOCATION_LIST_SAY_NT'a list of things carried by the noun' INVOCATION_NT'a list of things carried by the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'things carried by the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'things carried by the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'things carried by the noun' {kind: description of things} {proposition: << kind=thing(x) ^ ('the noun' == ) >>} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} - RULE_NT'when play begins' {unit: 4} + IMPERATIVE_NT'when play begins' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let patient zero be a random other person' INVOCATION_NT'let patient zero be a random other person' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'patient zero' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: value} + NEW_LOCAL_CONTEXT_NT'patient zero' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: value} UNKNOWN_NT'patient zero' - RVALUE_CONTEXT_NT'a random other person' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'a random other person' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'a random other person' INVOCATION_LIST_NT'a random other person' INVOCATION_NT'a random other person' {phrase invoked: call} {resulting: person} {kind variable declarations: K=person} - RVALUE_CONTEXT_NT'other person' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'other person' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'other person' {kind: description of people} {proposition: << kind=person(x) ^ other(x) >>} INVOCATION_LIST_NT'now patient zero is infected' {control structure: NOW} CONDITION_CONTEXT_NT'patient zero is infected' @@ -22200,57 +19608,47 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'table name' {indefinite 'a' n/m/f nom/acc s} UNPARSED_NOUN_NT'conversation' - RULE_NT'instead of asking someone about something' {unit: 4} + IMPERATIVE_NT'instead of asking someone about something' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let the source be the conversation of the noun' {indent: 1} INVOCATION_NT'let the source be the conversation of the noun' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'source' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: table name} {required: value} + NEW_LOCAL_CONTEXT_NT'source' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: table name} {required: value} UNKNOWN_NT'source' - RVALUE_CONTEXT_NT'conversation of the noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'conversation of the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PROPERTY_VALUE_NT'conversation of the noun' CONSTANT_NT {kind: nothing valued property} {property: 'conversation'=table name}{meaning: {conversation = PROPERTY_MC}} NONLOCAL_VARIABLE_NT'the noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if topic understood is a topic listed in source' {colon_block_command} {indent: 1} INVOCATION_NT'if topic understood is a topic listed in source' {phrase invoked: call} - CONDITION_CONTEXT_NT'topic understood is a topic listed in source' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'topic understood is a topic listed in source' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'topic understood is a topic listed in source' {proposition: << kind=snippet('topic understood') ^ listed_in('topic understood', 'source') >>} {term: 'topic understood'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if there is a turn stamp entry' {colon_block_command} {indent: 2} INVOCATION_NT'if there is a turn stamp entry' {phrase invoked: call} - CONDITION_CONTEXT_NT'there is a turn stamp entry' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'there is a turn stamp entry' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'there is a turn stamp entry' PHRASE_TO_DECIDE_VALUE_NT'there is a turn stamp entry' INVOCATION_LIST_NT'there is a turn stamp entry' INVOCATION_NT'there is a turn stamp entry' {phrase invoked: call} {resulting: truth state} - LVALUE_TR_CONTEXT_NT'a turn stamp entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table'} + LVALUE_TR_CONTEXT_NT'a turn stamp entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table'} TABLE_ENTRY_NT'a turn stamp entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'turn stamp'}{meaning: {turn stamp = TABLE_COLUMN_MC}} CODE_BLOCK_NT CODE_BLOCK_NT'say "You have already heard that [summary entry]."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You have already heard that "' INVOCATION_NT'"You have already heard that "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You have already heard that "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You have already heard that "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You have already heard that "' {kind: text} INVOCATION_LIST_SAY_NT'summary entry' INVOCATION_NT'summary entry' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'summary entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'summary entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} TABLE_ENTRY_NT'summary entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'summary'}{meaning: {summary = TABLE_COLUMN_MC}} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} INVOCATION_LIST_NT'now turn stamp entry is the turn count' {indent: 3} {control structure: NOW} @@ -22260,8 +19658,7 @@ ROOT_NT CODE_BLOCK_NT'say "[reply entry][paragraph break]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'reply entry' {suppress_newlines} INVOCATION_NT'reply entry' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'reply entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'reply entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} TABLE_ENTRY_NT'reply entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'reply'}{meaning: {reply = TABLE_COLUMN_MC}} INVOCATION_LIST_SAY_NT'paragraph break' @@ -22270,21 +19667,18 @@ ROOT_NT CODE_BLOCK_NT'say "[The noun] stares at you blankly."' {control structure: SAY} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" stares at you blankly."' INVOCATION_NT'" stares at you blankly."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" stares at you blankly."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" stares at you blankly."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" stares at you blankly."' {kind: text} - RULE_NT'instead of telling someone about something' {unit: 4} + IMPERATIVE_NT'instead of telling someone about something' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try asking the noun about it' INVOCATION_NT'try asking the noun about it' {phrase invoked: call} - RVALUE_CONTEXT_NT'asking the noun about it' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} - CONSTANT_NT'asking the noun about it' {kind: action} {action pattern: } + RVALUE_CONTEXT_NT'asking the noun about it' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} + CONSTANT_NT'asking the noun about it' {kind: action} {explicit action: } SENTENCE_NT'understand "recap" or "recall" or "review" as recalling conv' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"recap" or "recall" or "review"' @@ -22293,99 +19687,81 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'recalling conversations' UNPARSED_NOUN_NT'applying to nothing' - RULE_NT'carry out recalling conversations' {unit: 4} + IMPERATIVE_NT'carry out recalling conversations' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with speaker running through other people' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with speaker running through other people' {phrase invoked: call} {kind variable declarations: K=person} - NEW_LOCAL_CONTEXT_NT'speaker' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: person} {required: K} + NEW_LOCAL_CONTEXT_NT'speaker' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: person} {required: K} UNKNOWN_NT'speaker' - RVALUE_CONTEXT_NT'other people' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'other people' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'other people' {kind: description of people} {proposition: << kind=person(x) ^ other(x) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'let source be the conversation of the speaker' {indent: 2} INVOCATION_NT'let source be the conversation of the speaker' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'source' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: table name} {required: value} + NEW_LOCAL_CONTEXT_NT'source' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: table name} {required: value} UNKNOWN_NT'source' - RVALUE_CONTEXT_NT'conversation of the speaker' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'conversation of the speaker' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PROPERTY_VALUE_NT'conversation of the speaker' CONSTANT_NT {kind: nothing valued property} {property: 'conversation'=table name}{meaning: {conversation = PROPERTY_MC}} LOCAL_VARIABLE_NT'the speaker' {local: LV person} INVOCATION_LIST_NT'sort source in turn stamp order' {indent: 2} INVOCATION_NT'sort source in turn stamp order' {phrase invoked: call} - RVALUE_CONTEXT_NT'source' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'source' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} LOCAL_VARIABLE_NT'source' {local: LV table name} - RVALUE_CONTEXT_NT'turn stamp' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table column'} {required: table column} + RVALUE_CONTEXT_NT'turn stamp' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table column'} {required: table column} CONSTANT_NT'turn stamp' {kind: nothing valued table column} {table column: 'turn stamp'}{meaning: {turn stamp = TABLE_COLUMN_MC}} CODE_BLOCK_NT'say "[The speaker] has so far told you: [line break]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'the speaker' INVOCATION_NT'the speaker' {phrase invoked: call} - RVALUE_CONTEXT_NT'speaker' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'speaker' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'speaker' {local: LV person} INVOCATION_LIST_SAY_NT'" has so far told you: "' {suppress_newlines} INVOCATION_NT'" has so far told you: "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" has so far told you: "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" has so far told you: "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" has so far told you: "' {kind: text} INVOCATION_LIST_SAY_NT'line break' INVOCATION_NT'line break' {phrase invoked: call} INVOCATION_LIST_NT'let index be 0' {indent: 2} INVOCATION_NT'let index be 0' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'index' - RVALUE_CONTEXT_NT'0' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'0' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'0' {kind: number} {explicit literal} {number: 0} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through source' {colon_block_command} {indent: 2} INVOCATION_NT'repeat through source' {phrase invoked: call} - RVALUE_CONTEXT_NT'source' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'source' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} LOCAL_VARIABLE_NT'source' {local: LV table name} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if there is a turn stamp entry and the speaker is character ' {colon_block_command} {indent: 3} INVOCATION_NT'if there is a turn stamp entry and the speaker is character ' {phrase invoked: call} - CONDITION_CONTEXT_NT'there is a turn stamp entry and the speaker is character ent' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'there is a turn stamp entry and the speaker is character ent' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'there is a turn stamp entry and the speaker is character ent' TEST_VALUE_NT'there is a turn stamp entry' PHRASE_TO_DECIDE_VALUE_NT'there is a turn stamp entry' INVOCATION_LIST_NT'there is a turn stamp entry' INVOCATION_NT'there is a turn stamp entry' {phrase invoked: call} {resulting: truth state} - LVALUE_TR_CONTEXT_NT'a turn stamp entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table'} + LVALUE_TR_CONTEXT_NT'a turn stamp entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table'} TABLE_ENTRY_NT'a turn stamp entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'turn stamp'}{meaning: {turn stamp = TABLE_COLUMN_MC}} TEST_PROPOSITION_NT'the speaker is character entry' {proposition: << ('the speaker' == 'character entry') >>} {term: 'the speaker'} CODE_BLOCK_NT INVOCATION_LIST_NT'let index be 1' {indent: 4} INVOCATION_NT'let index be 1' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'index' {local: LV number} - RVALUE_CONTEXT_NT'1' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'1' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} CODE_BLOCK_NT'say " [summary entry][line break]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} INVOCATION_LIST_SAY_NT'summary entry' {suppress_newlines} INVOCATION_NT'summary entry' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'summary entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'summary entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} TABLE_ENTRY_NT'summary entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'summary'}{meaning: {summary = TABLE_COLUMN_MC}} INVOCATION_LIST_SAY_NT'line break' @@ -22393,16 +19769,13 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if index is 0' {indent: 2} {colon_block_command} INVOCATION_NT'if index is 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'index is 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'index is 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'index is 0' {proposition: << ('index' == '0') >>} {term: 'index'} CODE_BLOCK_NT CODE_BLOCK_NT'say " absolutely nothing[line break]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'" absolutely nothing"' {suppress_newlines} INVOCATION_NT'" absolutely nothing"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" absolutely nothing"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" absolutely nothing"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" absolutely nothing"' {kind: text} INVOCATION_LIST_SAY_NT'line break' INVOCATION_NT'line break' {phrase invoked: call} @@ -22423,29 +19796,24 @@ ROOT_NT PROPER_NOUN_NT'conversation' {refined} {eval: CONSTANT_NT {kind: table names valued property} {property: 'conversation'=table name}} PROPER_NOUN_NT'table of vanessa chatter' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'table of vanessa chatter' {kind: table name} {table: table_data}{meaning: {table of vanessa chatter = TABLE_MC}}} TABLE_NT'table of vanessa chatter topic reply summary turn stamp char' {unit: 4} - RULE_NT'after reading a command' {unit: 4} + IMPERATIVE_NT'after reading a command' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: WHI} INVOCATION_LIST_NT'while player's command includes "the"' {colon_block_command} {indent: 1} INVOCATION_NT'while player's command includes "the"' {phrase invoked: call} - CONDITION_CONTEXT_NT'player's command includes "the"' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'player's command includes "the"' {token check to do: } {token to be parsed against: } TEST_VALUE_NT'player's command includes "the"' PHRASE_TO_DECIDE_VALUE_NT'player's command includes "the"' INVOCATION_LIST_NT'player's command includes "the"' INVOCATION_NT'player's command includes "the"' {phrase invoked: call} {resulting: truth state} - RVALUE_CONTEXT_NT'player's command' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} + RVALUE_CONTEXT_NT'player's command' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} NONLOCAL_VARIABLE_NT'player's command' {nonlocal: 'player's command'(var)snippet}{meaning: {player's command = VARIABLE_MC}} - RVALUE_CONTEXT_NT'"the"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a topic'} {required: topic} + RVALUE_CONTEXT_NT'"the"' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a topic'} {required: topic} CONSTANT_NT'"the"' {kind: topic} CODE_BLOCK_NT INVOCATION_LIST_NT'cut the matched text' {indent: 2} INVOCATION_NT'cut the matched text' {phrase invoked: call} - RVALUE_CONTEXT_NT'matched text' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} + RVALUE_CONTEXT_NT'matched text' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a snippet'} {required: snippet} NONLOCAL_VARIABLE_NT'matched text' {nonlocal: 'matched text'(var)snippet}{meaning: {matched text = VARIABLE_MC}} HEADING_NT'section 6 - movement description' {heading 5} {under: H5'section 6 - movement description'} {unit: 4} SENTENCE_NT'a person has some text called walk style' {unit: 4} {classified} @@ -22493,68 +19861,55 @@ ROOT_NT PROPER_NOUN_NT'"sashay"' {refined} {eval: CONSTANT_NT'"sashay"' {kind: text}} TABLE_NT'table of visible exits character second third heading chosen' {unit: 4} TABLE_NT'table of visible entrances character second third heading ch' {unit: 4} - RULE_NT'to clear ( current table - a table name )' {unit: 4} + IMPERATIVE_NT'to clear ( current table - a table name )' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through current table' {colon_block_command} {indent: 1} INVOCATION_NT'repeat through current table' {phrase invoked: call} - RVALUE_CONTEXT_NT'current table' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'current table' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} LOCAL_VARIABLE_NT'current table' {local: LV"current table"-table name table name} CODE_BLOCK_NT INVOCATION_LIST_NT'blank out the whole row' {indent: 2} INVOCATION_NT'blank out the whole row' {phrase invoked: call} - RULE_NT'to tidy departures of ( current table - a table name )' {unit: 4} + IMPERATIVE_NT'to tidy departures of ( current table - a table name )' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let next direction be up' {indent: 1} INVOCATION_NT'let next direction be up' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'next direction' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: direction} {required: value} + NEW_LOCAL_CONTEXT_NT'next direction' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: direction} {required: value} UNKNOWN_NT'next direction' - RVALUE_CONTEXT_NT'up' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'up' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} CONSTANT_NT'up' {kind: direction} {instance: I30'up'} {enumeration: 0} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through current table' {colon_block_command} {indent: 1} INVOCATION_NT'repeat through current table' {phrase invoked: call} - RVALUE_CONTEXT_NT'current table' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'current table' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} LOCAL_VARIABLE_NT'current table' {local: LV"current table"-table name table name} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if heading chosen entry is next direction' {colon_block_command} {indent: 2} INVOCATION_NT'if heading chosen entry is next direction' {phrase invoked: call} - CONDITION_CONTEXT_NT'heading chosen entry is next direction' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'heading chosen entry is next direction' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'heading chosen entry is next direction' {proposition: << ('heading chosen entry' == 'next direction') >>} {term: 'heading chosen entry'} CODE_BLOCK_NT INVOCATION_LIST_NT'let accomplice be character entry' {indent: 3} INVOCATION_NT'let accomplice be character entry' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'accomplice' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: value} + NEW_LOCAL_CONTEXT_NT'accomplice' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: value} UNKNOWN_NT'accomplice' - RVALUE_CONTEXT_NT'character entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'character entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} TABLE_ENTRY_NT'character entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'character'}{meaning: {character = TABLE_COLUMN_MC}} INVOCATION_LIST_NT'choose row with heading chosen of next direction in the curr' {indent: 3} INVOCATION_NT'choose row with heading chosen of next direction in the curr' {phrase invoked: call} {kind variable declarations: K=direction} - RVALUE_CONTEXT_NT'heading chosen' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: table column} + RVALUE_CONTEXT_NT'heading chosen' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: table column} CONSTANT_NT'heading chosen' {kind: nothing valued table column} {table column: 'heading chosen'}{meaning: {heading chosen = TABLE_COLUMN_MC}} - RVALUE_CONTEXT_NT'next direction' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'next direction' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'next direction' {local: LV"next direction"-direction direction} - RVALUE_CONTEXT_NT'current table' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'current table' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} LOCAL_VARIABLE_NT'current table' {local: LV"current table"-table name table name} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if total entry is 1' {colon_block_command} {indent: 3} INVOCATION_NT'if total entry is 1' {phrase invoked: call} - CONDITION_CONTEXT_NT'total entry is 1' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'total entry is 1' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'total entry is 1' {proposition: << ('total entry' == '1') >>} {term: 'total entry'} CODE_BLOCK_NT INVOCATION_LIST_NT'now second entry is accomplice' {indent: 4} {control structure: NOW} @@ -22564,17 +19919,13 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if total entry is 2' {colon_block_command} {indent: 3} INVOCATION_NT'if total entry is 2' {phrase invoked: call} - CONDITION_CONTEXT_NT'total entry is 2' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'total entry is 2' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'total entry is 2' {proposition: << ('total entry' == '2') >>} {term: 'total entry'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'unless the second entry is accomplice' {colon_block_command} {indent: 4} INVOCATION_NT'unless the second entry is accomplice' {phrase invoked: call} - CONDITION_CONTEXT_NT'second entry is accomplice' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'second entry is accomplice' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'second entry is accomplice' {proposition: << ('second entry' == 'accomplice') >>} {term: 'second entry'} CODE_BLOCK_NT INVOCATION_LIST_NT'now third entry is accomplice' {indent: 5} {control structure: NOW} @@ -22583,25 +19934,20 @@ ROOT_NT CONDITION_CONTEXT_NT'total entry is 3' INVOCATION_LIST_NT'choose row with character of accomplice in the current table' {indent: 3} INVOCATION_NT'choose row with character of accomplice in the current table' {phrase invoked: call} {kind variable declarations: K=thing} - RVALUE_CONTEXT_NT'character' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: table column} + RVALUE_CONTEXT_NT'character' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: table column} CONSTANT_NT'character' {kind: nothing valued table column} {table column: 'character'}{meaning: {character = TABLE_COLUMN_MC}} - RVALUE_CONTEXT_NT'accomplice' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + RVALUE_CONTEXT_NT'accomplice' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'accomplice' {local: LV thing} - RVALUE_CONTEXT_NT'current table' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'current table' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} LOCAL_VARIABLE_NT'current table' {local: LV"current table"-table name table name} INVOCATION_LIST_NT'blank out the whole row' {indent: 3} INVOCATION_NT'blank out the whole row' {phrase invoked: call} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} INVOCATION_LIST_NT'let next direction be heading chosen entry' {indent: 3} INVOCATION_NT'let next direction be heading chosen entry' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'next direction' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'next direction' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'next direction' {local: LV"next direction"-direction direction} - RVALUE_CONTEXT_NT'heading chosen entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'heading chosen entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} TABLE_ENTRY_NT'heading chosen entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'heading chosen'}{meaning: {heading chosen = TABLE_COLUMN_MC}} SENTENCE_NT'a door has a person called last opener' {unit: 4} {classified} {interpretation of subject: infs'person'} @@ -22611,7 +19957,7 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s} UNPARSED_NOUN_NT'last opener' - RULE_NT'report someone opening a door' {unit: 4} + IMPERATIVE_NT'report someone opening a door' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now group size is 1' {control structure: NOW} CONDITION_CONTEXT_NT'group size is 1' @@ -22620,31 +19966,25 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is visible' {colon_block_command} INVOCATION_NT'if the person asked is visible' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is visible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is visible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is visible' {proposition: << visible('person asked') >>} {term: 'person asked'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] opens [the noun]. [run paragraph on]' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" opens "' INVOCATION_NT'" opens "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" opens "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" opens "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" opens "' {kind: text} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'". "' {suppress_newlines} INVOCATION_NT'". "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'". "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'". "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'". "' {kind: text} INVOCATION_LIST_SAY_NT'run paragraph on' INVOCATION_NT'run paragraph on' {phrase invoked: call} @@ -22653,25 +19993,21 @@ ROOT_NT CODE_BLOCK_NT'say "[The noun] opens from the other side. [run paragraph on' {control structure: SAY} INVOCATION_LIST_SAY_NT'the noun' INVOCATION_NT'the noun' {phrase invoked: call} - RVALUE_CONTEXT_NT'noun' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_SAY_NT'" opens from the other side. "' {suppress_newlines} INVOCATION_NT'" opens from the other side. "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" opens from the other side. "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" opens from the other side. "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" opens from the other side. "' {kind: text} INVOCATION_LIST_SAY_NT'run paragraph on' INVOCATION_NT'run paragraph on' {phrase invoked: call} CODE_BLOCK_NT {control structure: INS} - RULE_NT'report someone going through a door ( called route )' {unit: 4} + IMPERATIVE_NT'report someone going through a door ( called route )' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is not the last opener of the route' {colon_block_command} INVOCATION_NT'if the person asked is not the last opener of the route' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is not the last opener of the route' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is not the last opener of the route' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is not the last opener of the route' {proposition: << NOT< ('person asked' == 'the last opener of the route') NOT> >>} {term: 'person asked'} CODE_BLOCK_NT INVOCATION_LIST_NT'continue the action' {results_from_splitting} {indent: 1} @@ -22679,9 +20015,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is the last person named' {colon_block_command} INVOCATION_NT'if the person asked is the last person named' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is the last person named' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is the last person named' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is the last person named' {proposition: << ('person asked' == 'the last person named') >>} {term: 'person asked'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked as pronoun]"' {control structure: SAY} @@ -22696,92 +20030,76 @@ ROOT_NT CODE_BLOCK_NT'say "[The person asked]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' INVOCATION_NT'the person asked' {phrase invoked: call} - RVALUE_CONTEXT_NT'person asked' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'person asked' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'person asked' {nonlocal: 'person asked'(var)object}{meaning: {person asked = VARIABLE_MC}} CODE_BLOCK_NT'say " [if the person asked is in the location]comes[otherwis' {control structure: SAY} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} INVOCATION_LIST_SAY_NT'if the person asked is in the location' INVOCATION_NT'if the person asked is in the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is in the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is in the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is in the location' {proposition: << ('the location' == ) >>} {term: 'person asked'} INVOCATION_LIST_SAY_NT'"comes"' INVOCATION_NT'"comes"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"comes"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"comes"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"comes"' {kind: text} INVOCATION_LIST_SAY_NT'otherwise' INVOCATION_NT'otherwise' {phrase invoked: call} INVOCATION_LIST_SAY_NT'"goes"' INVOCATION_NT'"goes"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"goes"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"goes"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"goes"' {kind: text} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'" through"' INVOCATION_NT'" through"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" through"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" through"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" through"' {kind: text} INVOCATION_LIST_SAY_NT'if the last thing named is not the route' INVOCATION_NT'if the last thing named is not the route' {phrase invoked: call} - CONDITION_CONTEXT_NT'last thing named is not the route' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'last thing named is not the route' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'last thing named is not the route' {proposition: << NOT< ('last thing named' == 'the route') NOT> >>} {term: 'last thing named'} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} INVOCATION_LIST_SAY_NT'the route' INVOCATION_NT'the route' {phrase invoked: call} - RVALUE_CONTEXT_NT'route' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'route' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'route' {local: LV"route"-door door} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT {control structure: INS} SENTENCE_NT'the last thing named is a thing that varies' {unit: 4} {classified} {interpretation of subject: infs'door'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'last thing named' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'last thing named' {nonlocal: 'last thing named'(var)thing}} {created here} COMMON_NOUN_NT'thing that varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=things variable-pointer(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before printing the name of something ( called target ) whic' {unit: 4} + IMPERATIVE_NT'before printing the name of something ( called target ) whic' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the last thing named is the target' {control structure: NOW} CONDITION_CONTEXT_NT'the last thing named is the target' - RULE_NT'report someone going a direction' {unit: 4} + IMPERATIVE_NT'report someone going a direction' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is in the location' {colon_block_command} INVOCATION_NT'if the person asked is in the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is in the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is in the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is in the location' {proposition: << ('the location' == ) >>} {term: 'person asked'} CODE_BLOCK_NT INVOCATION_LIST_NT'choose a blank row in the table of visible entrances' {results_from_splitting} {indent: 1} INVOCATION_NT'choose a blank row in the table of visible entrances' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of visible entrances' {kind: table name} {table: table_data}{meaning: {table of visible entrances = TABLE_MC}} CODE_BLOCK_NT'otherwise' {results_from_splitting} {control structure: O} INVOCATION_LIST_NT'choose a blank row in the table of visible exits' {indent: 1} INVOCATION_NT'choose a blank row in the table of visible exits' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of visible exits' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible exits' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of visible exits' {kind: table name} {table: table_data}{meaning: {table of visible exits = TABLE_MC}} INVOCATION_LIST_NT'now character entry is the person asked' {control structure: NOW} CONDITION_CONTEXT_NT'character entry is the person asked' @@ -22790,9 +20108,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is in the location' {colon_block_command} INVOCATION_NT'if the person asked is in the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'person asked is in the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'person asked is in the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'person asked is in the location' {proposition: << ('the location' == ) >>} {term: 'person asked'} CODE_BLOCK_NT INVOCATION_LIST_NT'now heading chosen entry is the opposite of the noun' {results_from_splitting} {indent: 1} {control structure: NOW} @@ -22802,145 +20118,115 @@ ROOT_NT CONDITION_CONTEXT_NT'heading chosen entry is the noun' INVOCATION_LIST_NT'stop the action' INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'this is the movement reporting rule' {unit: 4} + IMPERATIVE_NT'this is the movement reporting rule' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'sort the table of visible entrances in heading chosen order' INVOCATION_NT'sort the table of visible entrances in heading chosen order' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of visible entrances' {kind: table name} {table: table_data}{meaning: {table of visible entrances = TABLE_MC}} - RVALUE_CONTEXT_NT'heading chosen' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table column'} {required: table column} + RVALUE_CONTEXT_NT'heading chosen' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table column'} {required: table column} CONSTANT_NT'heading chosen' {kind: nothing valued table column} {table column: 'heading chosen'}{meaning: {heading chosen = TABLE_COLUMN_MC}} INVOCATION_LIST_NT'tidy departures of the table of visible entrances' INVOCATION_NT'tidy departures of the table of visible entrances' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} CONSTANT_NT'table of visible entrances' {kind: table name} {table: table_data}{meaning: {table of visible entrances = TABLE_MC}} INVOCATION_LIST_NT'sort the table of visible exits in heading chosen order' INVOCATION_NT'sort the table of visible exits in heading chosen order' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of visible exits' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible exits' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of visible exits' {kind: table name} {table: table_data}{meaning: {table of visible exits = TABLE_MC}} - RVALUE_CONTEXT_NT'heading chosen' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table column'} {required: table column} + RVALUE_CONTEXT_NT'heading chosen' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table column'} {required: table column} CONSTANT_NT'heading chosen' {kind: nothing valued table column} {table column: 'heading chosen'}{meaning: {heading chosen = TABLE_COLUMN_MC}} INVOCATION_LIST_NT'tidy departures of the table of visible exits' INVOCATION_NT'tidy departures of the table of visible exits' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of visible exits' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible exits' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} CONSTANT_NT'table of visible exits' {kind: table name} {table: table_data}{meaning: {table of visible exits = TABLE_MC}} INVOCATION_LIST_NT'let total row count be the number of filled rows in the tabl' INVOCATION_NT'let total row count be the number of filled rows in the tabl' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'total row count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'total row count' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'total row count' - RVALUE_CONTEXT_NT'number of filled rows in the table of visible entrances plus' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'number of filled rows in the table of visible entrances plus' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'number of filled rows in the table of visible entrances plus' INVOCATION_LIST_NT'number of filled rows in the table of visible entrances plus' INVOCATION_NT'number of filled rows in the table of visible entrances plus' {phrase invoked: call} {resulting: number} - RVALUE_CONTEXT_NT'number of filled rows in the table of visible entrances' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'arithmetic value'} {required: arithmetic value} + RVALUE_CONTEXT_NT'number of filled rows in the table of visible entrances' {token check to do: } {token to be parsed against: TEST_VALUE_NT'arithmetic value'} {required: arithmetic value} PHRASE_TO_DECIDE_VALUE_NT'number of filled rows in the table of visible entrances' INVOCATION_LIST_NT'number of filled rows in the table of visible entrances' INVOCATION_NT'number of filled rows in the table of visible entrances' {phrase invoked: call} {resulting: number} - RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of visible entrances' {kind: table name} {table: table_data}{meaning: {table of visible entrances = TABLE_MC}} - RVALUE_CONTEXT_NT'number of filled rows in the table of visible exits' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'arithmetic value'} {required: arithmetic value} + RVALUE_CONTEXT_NT'number of filled rows in the table of visible exits' {token check to do: } {token to be parsed against: TEST_VALUE_NT'arithmetic value'} {required: arithmetic value} PHRASE_TO_DECIDE_VALUE_NT'number of filled rows in the table of visible exits' INVOCATION_LIST_NT'number of filled rows in the table of visible exits' INVOCATION_NT'number of filled rows in the table of visible exits' {phrase invoked: call} {resulting: number} - RVALUE_CONTEXT_NT'table of visible exits' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible exits' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of visible exits' {kind: table name} {table: table_data}{meaning: {table of visible exits = TABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if total row count is 0' {colon_block_command} INVOCATION_NT'if total row count is 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'total row count is 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'total row count is 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'total row count is 0' {proposition: << ('total row count' == '0') >>} {term: 'total row count'} CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' {results_from_splitting} {indent: 1} INVOCATION_NT'rule succeeds' {phrase invoked: call} INVOCATION_LIST_NT'generate descriptions from the table of visible entrances' INVOCATION_NT'generate descriptions from the table of visible entrances' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} CONSTANT_NT'table of visible entrances' {kind: table name} {table: table_data}{meaning: {table of visible entrances = TABLE_MC}} INVOCATION_LIST_NT'generate descriptions from the table of visible exits' INVOCATION_NT'generate descriptions from the table of visible exits' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of visible exits' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible exits' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} CONSTANT_NT'table of visible exits' {kind: table name} {table: table_data}{meaning: {table of visible exits = TABLE_MC}} INVOCATION_LIST_NT'clear the table of visible entrances' INVOCATION_NT'clear the table of visible entrances' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible entrances' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} CONSTANT_NT'table of visible entrances' {kind: table name} {table: table_data}{meaning: {table of visible entrances = TABLE_MC}} INVOCATION_LIST_NT'clear the table of visible exits' INVOCATION_NT'clear the table of visible exits' {phrase invoked: call} - RVALUE_CONTEXT_NT'table of visible exits' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} + RVALUE_CONTEXT_NT'table of visible exits' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} CONSTANT_NT'table of visible exits' {kind: table name} {table: table_data}{meaning: {table of visible exits = TABLE_MC}} - RULE_NT'to generate descriptions from ( current table - a table name' {unit: 4} + IMPERATIVE_NT'to generate descriptions from ( current table - a table name' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let count be the number of filled rows in the current table' {indent: 1} INVOCATION_NT'let count be the number of filled rows in the current table' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'count' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'count' - RVALUE_CONTEXT_NT'number of filled rows in the current table' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'number of filled rows in the current table' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'number of filled rows in the current table' INVOCATION_LIST_NT'number of filled rows in the current table' INVOCATION_NT'number of filled rows in the current table' {phrase invoked: call} {resulting: number} - RVALUE_CONTEXT_NT'current table' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'current table' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} LOCAL_VARIABLE_NT'current table' {local: LV"current table"-table name table name} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if count is 0' {indent: 1} {colon_block_command} INVOCATION_NT'if count is 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'count is 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'count is 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'count is 0' {proposition: << ('count' == '0') >>} {term: 'count'} CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' {results_from_splitting} {indent: 2} INVOCATION_NT'rule succeeds' {phrase invoked: call} INVOCATION_LIST_NT'let index be count' {indent: 1} INVOCATION_NT'let index be count' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'index' - RVALUE_CONTEXT_NT'count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} LOCAL_VARIABLE_NT'count' {local: LV"count"-number number} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through the current table' {colon_block_command} {indent: 1} INVOCATION_NT'repeat through the current table' {phrase invoked: call} - RVALUE_CONTEXT_NT'current table' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'current table' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} LOCAL_VARIABLE_NT'current table' {local: LV"current table"-table name table name} CODE_BLOCK_NT INVOCATION_LIST_NT'let accomplice be character entry' {indent: 2} INVOCATION_NT'let accomplice be character entry' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'accomplice' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: value} + NEW_LOCAL_CONTEXT_NT'accomplice' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: thing} {required: value} UNKNOWN_NT'accomplice' - RVALUE_CONTEXT_NT'character entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'character entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} TABLE_ENTRY_NT'character entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'character'}{meaning: {character = TABLE_COLUMN_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if character entry is a person' {indent: 2} {colon_block_command} INVOCATION_NT'if character entry is a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'character entry is a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'character entry is a person' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'character entry is a person' {proposition: << kind=person('character entry') >>} {term: 'character entry'} CODE_BLOCK_NT INVOCATION_LIST_NT'now character entry is marked for listing' {results_from_splitting} {indent: 3} {control structure: NOW} @@ -22948,16 +20234,13 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if there is a second entry and second entry is a person' {indent: 2} {colon_block_command} INVOCATION_NT'if there is a second entry and second entry is a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'there is a second entry and second entry is a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'there is a second entry and second entry is a person' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'there is a second entry and second entry is a person' TEST_VALUE_NT'there is a second entry' PHRASE_TO_DECIDE_VALUE_NT'there is a second entry' INVOCATION_LIST_NT'there is a second entry' INVOCATION_NT'there is a second entry' {phrase invoked: call} {resulting: truth state} - LVALUE_TR_CONTEXT_NT'a second entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table'} + LVALUE_TR_CONTEXT_NT'a second entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table'} TABLE_ENTRY_NT'a second entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'second'}{meaning: {second = TABLE_COLUMN_MC}} TEST_PROPOSITION_NT'second entry is a person' {proposition: << kind=person('second entry') >>} {term: 'second entry'} @@ -22967,16 +20250,13 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if there is a third entry and third entry is a person' {indent: 2} {colon_block_command} INVOCATION_NT'if there is a third entry and third entry is a person' {phrase invoked: call} - CONDITION_CONTEXT_NT'there is a third entry and third entry is a person' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'there is a third entry and third entry is a person' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'there is a third entry and third entry is a person' TEST_VALUE_NT'there is a third entry' PHRASE_TO_DECIDE_VALUE_NT'there is a third entry' INVOCATION_LIST_NT'there is a third entry' INVOCATION_NT'there is a third entry' {phrase invoked: call} {resulting: truth state} - LVALUE_TR_CONTEXT_NT'a third entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table'} + LVALUE_TR_CONTEXT_NT'a third entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table'} TABLE_ENTRY_NT'a third entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'third'}{meaning: {third = TABLE_COLUMN_MC}} TEST_PROPOSITION_NT'third entry is a person' {proposition: << kind=person('third entry') >>} {term: 'third entry'} @@ -22985,16 +20265,13 @@ ROOT_NT CONDITION_CONTEXT_NT'third entry is marked for listing' INVOCATION_LIST_NT'let target be the room the heading chosen entry from the loc' {indent: 2} INVOCATION_NT'let target be the room the heading chosen entry from the loc' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} + NEW_LOCAL_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: room} {required: value} UNKNOWN_NT'target' - RVALUE_CONTEXT_NT'room the heading chosen entry from the location' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'room the heading chosen entry from the location' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'room the heading chosen entry from the location' INVOCATION_LIST_NT'room the heading chosen entry from the location' INVOCATION_NT'room the heading chosen entry from the location' {phrase invoked: call} {resulting: room} {unproven} - RVALUE_CONTEXT_NT'heading chosen entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'direction'} {required: direction} + RVALUE_CONTEXT_NT'heading chosen entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'direction'} {required: direction} TABLE_ENTRY_NT'heading chosen entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'heading chosen'}{meaning: {heading chosen = TABLE_COLUMN_MC}} RVALUE_CONTEXT_NT'location' {token check to do: TEST_VALUE_NT'room'} {token to be parsed against: TEST_VALUE_NT'room'} {required: room} @@ -23002,92 +20279,74 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if total entry is 3' {indent: 2} {colon_block_command} INVOCATION_NT'if total entry is 3' {phrase invoked: call} - CONDITION_CONTEXT_NT'total entry is 3' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'total entry is 3' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'total entry is 3' {proposition: << ('total entry' == '3') >>} {term: 'total entry'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The character entry], [the second entry][optional comm' {control structure: SAY} INVOCATION_LIST_SAY_NT'the character entry' INVOCATION_NT'the character entry' {phrase invoked: call} - RVALUE_CONTEXT_NT'character entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'character entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} TABLE_ENTRY_NT'character entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'character'}{meaning: {character = TABLE_COLUMN_MC}} INVOCATION_LIST_SAY_NT'", "' INVOCATION_NT'", "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", "' {kind: text} INVOCATION_LIST_SAY_NT'the second entry' INVOCATION_NT'the second entry' {phrase invoked: call} - RVALUE_CONTEXT_NT'second entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'second entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} TABLE_ENTRY_NT'second entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'second'}{meaning: {second = TABLE_COLUMN_MC}} INVOCATION_LIST_SAY_NT'optional comma' INVOCATION_NT'optional comma' {phrase invoked: call} INVOCATION_LIST_SAY_NT'" and "' INVOCATION_NT'" and "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" and "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" and "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" and "' {kind: text} INVOCATION_LIST_SAY_NT'the third entry' INVOCATION_NT'the third entry' {phrase invoked: call} - RVALUE_CONTEXT_NT'third entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'third entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} TABLE_ENTRY_NT'third entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'third'}{meaning: {third = TABLE_COLUMN_MC}} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if total entry is 2' {indent: 2} {colon_block_command} INVOCATION_NT'if total entry is 2' {phrase invoked: call} - CONDITION_CONTEXT_NT'total entry is 2' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'total entry is 2' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'total entry is 2' {proposition: << ('total entry' == '2') >>} {term: 'total entry'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The character entry] and [the second entry] "' {control structure: SAY} INVOCATION_LIST_SAY_NT'the character entry' INVOCATION_NT'the character entry' {phrase invoked: call} - RVALUE_CONTEXT_NT'character entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'character entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} TABLE_ENTRY_NT'character entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'character'}{meaning: {character = TABLE_COLUMN_MC}} INVOCATION_LIST_SAY_NT'" and "' INVOCATION_NT'" and "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" and "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" and "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" and "' {kind: text} INVOCATION_LIST_SAY_NT'the second entry' INVOCATION_NT'the second entry' {phrase invoked: call} - RVALUE_CONTEXT_NT'second entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'second entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} TABLE_ENTRY_NT'second entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'second'}{meaning: {second = TABLE_COLUMN_MC}} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if total entry is 1' {colon_block_command} {indent: 2} INVOCATION_NT'if total entry is 1' {phrase invoked: call} - CONDITION_CONTEXT_NT'total entry is 1' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'total entry is 1' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'total entry is 1' {proposition: << ('total entry' == '1') >>} {term: 'total entry'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the character entry is the last person named' {indent: 3} {colon_block_command} INVOCATION_NT'if the character entry is the last person named' {phrase invoked: call} - CONDITION_CONTEXT_NT'character entry is the last person named' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'character entry is the last person named' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'character entry is the last person named' {proposition: << ('character entry' == 'the last person named') >>} {term: 'character entry'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The character entry as pronoun] "' {control structure: SAY} @@ -23102,83 +20361,67 @@ ROOT_NT CONSTANT_NT {kind: nothing valued table column} {table column: 'character'}{meaning: {character = TABLE_COLUMN_MC}} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} CODE_BLOCK_NT'otherwise' {results_from_splitting} {indent: 3} {control structure: O} CODE_BLOCK_NT'say "[The character entry] "' {control structure: SAY} INVOCATION_LIST_SAY_NT'the character entry' INVOCATION_NT'the character entry' {phrase invoked: call} - RVALUE_CONTEXT_NT'character entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'character entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} TABLE_ENTRY_NT'character entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'character'}{meaning: {character = TABLE_COLUMN_MC}} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if total entry is 1' {indent: 2} {colon_block_command} INVOCATION_NT'if total entry is 1' {phrase invoked: call} - CONDITION_CONTEXT_NT'total entry is 1' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'total entry is 1' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'total entry is 1' {proposition: << ('total entry' == '1') >>} {term: 'total entry'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[walk style of the character entry]s "' {control structure: SAY} INVOCATION_LIST_SAY_NT'walk style of the character entry' INVOCATION_NT'walk style of the character entry' {phrase invoked: call} {kind variable declarations: K=text} {save self} - RVALUE_CONTEXT_NT'walk style of the character entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'walk style of the character entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} PROPERTY_VALUE_NT'walk style of the character entry' {record as self} CONSTANT_NT {kind: nothing valued property} {property: 'walk style'=text}{meaning: {walk style = PROPERTY_MC}} TABLE_ENTRY_NT'the character entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'character'}{meaning: {character = TABLE_COLUMN_MC}} INVOCATION_LIST_SAY_NT'"s "' INVOCATION_NT'"s "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"s "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"s "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"s "' {kind: text} CODE_BLOCK_NT'otherwise' {results_from_splitting} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "walk[if total entry is 1]s[end if] "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"walk"' INVOCATION_NT'"walk"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"walk"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"walk"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"walk"' {kind: text} INVOCATION_LIST_SAY_NT'if total entry is 1' INVOCATION_NT'if total entry is 1' {phrase invoked: call} - CONDITION_CONTEXT_NT'total entry is 1' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'total entry is 1' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'total entry is 1' {proposition: << ('total entry' == '1') >>} {term: 'total entry'} INVOCATION_LIST_SAY_NT'"s"' INVOCATION_NT'"s"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"s"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"s"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"s"' {kind: text} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the character entry is in the location' {colon_block_command} {indent: 2} INVOCATION_NT'if the character entry is in the location' {phrase invoked: call} - CONDITION_CONTEXT_NT'character entry is in the location' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'character entry is in the location' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'character entry is in the location' {proposition: << ('the location' == ) >>} {term: 'character entry'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if location is indoors and target is indoors' {indent: 3} {colon_block_command} INVOCATION_NT'if location is indoors and target is indoors' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is indoors and target is indoors' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is indoors and target is indoors' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'location is indoors and target is indoors' TEST_PROPOSITION_NT'location is indoors' {proposition: << indoors('location') >>} {term: 'location'} TEST_PROPOSITION_NT'target is indoors' {proposition: << indoors('target') >>} {term: 'target'} @@ -23186,15 +20429,12 @@ ROOT_NT CODE_BLOCK_NT'say "over from "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"over from "' INVOCATION_NT'"over from "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"over from "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"over from "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"over from "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if location is outdoors and target is indoors' {indent: 3} {colon_block_command} INVOCATION_NT'if location is outdoors and target is indoors' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is outdoors and target is indoors' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is outdoors and target is indoors' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'location is outdoors and target is indoors' TEST_PROPOSITION_NT'location is outdoors' {proposition: << outdoors('location') >>} {term: 'location'} TEST_PROPOSITION_NT'target is indoors' {proposition: << indoors('target') >>} {term: 'target'} @@ -23202,15 +20442,12 @@ ROOT_NT CODE_BLOCK_NT'say "out of "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"out of "' INVOCATION_NT'"out of "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"out of "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"out of "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"out of "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if location is indoors and target is outdoors' {indent: 3} {colon_block_command} INVOCATION_NT'if location is indoors and target is outdoors' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is indoors and target is outdoors' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is indoors and target is outdoors' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'location is indoors and target is outdoors' TEST_PROPOSITION_NT'location is indoors' {proposition: << indoors('location') >>} {term: 'location'} TEST_PROPOSITION_NT'target is outdoors' {proposition: << outdoors('target') >>} {term: 'target'} @@ -23218,15 +20455,12 @@ ROOT_NT CODE_BLOCK_NT'say "in from "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"in from "' INVOCATION_NT'"in from "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"in from "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"in from "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"in from "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if location is outdoors and target is outdoors' {indent: 3} {colon_block_command} INVOCATION_NT'if location is outdoors and target is outdoors' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is outdoors and target is outdoors' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is outdoors and target is outdoors' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'location is outdoors and target is outdoors' TEST_PROPOSITION_NT'location is outdoors' {proposition: << outdoors('location') >>} {term: 'location'} TEST_PROPOSITION_NT'target is outdoors' {proposition: << outdoors('target') >>} {term: 'target'} @@ -23234,16 +20468,13 @@ ROOT_NT CODE_BLOCK_NT'say "over from "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"over from "' INVOCATION_NT'"over from "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"over from "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"over from "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"over from "' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if location is indoors and target is indoors' {indent: 3} {colon_block_command} INVOCATION_NT'if location is indoors and target is indoors' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is indoors and target is indoors' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is indoors and target is indoors' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'location is indoors and target is indoors' TEST_PROPOSITION_NT'location is indoors' {proposition: << indoors('location') >>} {term: 'location'} TEST_PROPOSITION_NT'target is indoors' {proposition: << indoors('target') >>} {term: 'target'} @@ -23251,15 +20482,12 @@ ROOT_NT CODE_BLOCK_NT'say "over to "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"over to "' INVOCATION_NT'"over to "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"over to "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"over to "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"over to "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if location is outdoors and target is indoors' {indent: 3} {colon_block_command} INVOCATION_NT'if location is outdoors and target is indoors' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is outdoors and target is indoors' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is outdoors and target is indoors' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'location is outdoors and target is indoors' TEST_PROPOSITION_NT'location is outdoors' {proposition: << outdoors('location') >>} {term: 'location'} TEST_PROPOSITION_NT'target is indoors' {proposition: << indoors('target') >>} {term: 'target'} @@ -23267,15 +20495,12 @@ ROOT_NT CODE_BLOCK_NT'say "into "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"into "' INVOCATION_NT'"into "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"into "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"into "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"into "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if location is indoors and target is outdoors' {indent: 3} {colon_block_command} INVOCATION_NT'if location is indoors and target is outdoors' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is indoors and target is outdoors' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is indoors and target is outdoors' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'location is indoors and target is outdoors' TEST_PROPOSITION_NT'location is indoors' {proposition: << indoors('location') >>} {term: 'location'} TEST_PROPOSITION_NT'target is outdoors' {proposition: << outdoors('target') >>} {term: 'target'} @@ -23283,38 +20508,30 @@ ROOT_NT CODE_BLOCK_NT'say "out [if a door is visible][the random visible door][end' {control structure: SAY} INVOCATION_LIST_SAY_NT'"out "' INVOCATION_NT'"out "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"out "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"out "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"out "' {kind: text} INVOCATION_LIST_SAY_NT'if a door is visible' INVOCATION_NT'if a door is visible' {phrase invoked: call} - CONDITION_CONTEXT_NT'a door is visible' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'a door is visible' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'a door is visible' {proposition: << Exists x : kind=door(x) ^ visible(x) >>} {term: x} INVOCATION_LIST_SAY_NT'the random visible door' INVOCATION_NT'the random visible door' {phrase invoked: call} - RVALUE_CONTEXT_NT'random visible door' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'random visible door' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} PHRASE_TO_DECIDE_VALUE_NT'random visible door' INVOCATION_LIST_NT'random visible door' INVOCATION_NT'random visible door' {phrase invoked: call} {resulting: door} {kind variable declarations: K=door} - RVALUE_CONTEXT_NT'visible door' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'visible door' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'visible door' {kind: description of doors} {proposition: << kind=door(x) ^ visible(x) >>} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'" to "' INVOCATION_NT'" to "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" to "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" to "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" to "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if location is outdoors and target is outdoors' {indent: 3} {colon_block_command} INVOCATION_NT'if location is outdoors and target is outdoors' {phrase invoked: call} - CONDITION_CONTEXT_NT'location is outdoors and target is outdoors' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'location is outdoors and target is outdoors' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'location is outdoors and target is outdoors' TEST_PROPOSITION_NT'location is outdoors' {proposition: << outdoors('location') >>} {term: 'location'} TEST_PROPOSITION_NT'target is outdoors' {proposition: << outdoors('target') >>} {term: 'target'} @@ -23322,37 +20539,30 @@ ROOT_NT CODE_BLOCK_NT'say "over to "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"over to "' INVOCATION_NT'"over to "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"over to "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"over to "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"over to "' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if target is outdoors' {indent: 2} {colon_block_command} INVOCATION_NT'if target is outdoors' {phrase invoked: call} - CONDITION_CONTEXT_NT'target is outdoors' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'target is outdoors' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'target is outdoors' {proposition: << outdoors('target') >>} {term: 'target'} CODE_BLOCK_NT CODE_BLOCK_NT'say "[the heading chosen entry]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'the heading chosen entry' INVOCATION_NT'the heading chosen entry' {phrase invoked: call} - RVALUE_CONTEXT_NT'heading chosen entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'heading chosen entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} TABLE_ENTRY_NT'heading chosen entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'heading chosen'}{meaning: {heading chosen = TABLE_COLUMN_MC}} CODE_BLOCK_NT'otherwise' {results_from_splitting} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "[the target]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'the target' INVOCATION_NT'the target' {phrase invoked: call} - RVALUE_CONTEXT_NT'target' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'target' {local: LV room} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the total entry is 1 and count is 1 and accomplice carrie' {indent: 2} {colon_block_command} INVOCATION_NT'if the total entry is 1 and count is 1 and accomplice carrie' {phrase invoked: call} - CONDITION_CONTEXT_NT'total entry is 1 and count is 1 and accomplice carries somet' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'total entry is 1 and count is 1 and accomplice carries somet' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'total entry is 1 and count is 1 and accomplice carries somet' TEST_PROPOSITION_NT'total entry is 1' {proposition: << ('total entry' == '1') >>} {term: 'total entry'} LOGICAL_AND_NT @@ -23362,46 +20572,37 @@ ROOT_NT CODE_BLOCK_NT'say ", carrying [a list of things carried by the accomplice]' {control structure: SAY} INVOCATION_LIST_SAY_NT'", carrying "' INVOCATION_NT'", carrying "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", carrying "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", carrying "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", carrying "' {kind: text} INVOCATION_LIST_SAY_NT'a list of things carried by the accomplice' INVOCATION_NT'a list of things carried by the accomplice' {phrase invoked: call} - RVALUE_CONTEXT_NT'things carried by the accomplice' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'things carried by the accomplice' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'things carried by the accomplice' {kind: description of things} {proposition: << kind=thing(x) ^ ('the accomplice' == ) >>} INVOCATION_LIST_NT'decrement index' {indent: 2} INVOCATION_NT'decrement index' {phrase invoked: call} - LVALUE_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} LOCAL_VARIABLE_NT'index' {local: LV"index"-number number} INVOCATION_LIST_NT'make delimiter index of count , continuing' {indent: 2} INVOCATION_NT'make delimiter index of count' {phrase invoked: call} {phrase options invoked: continuing} - RVALUE_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} + RVALUE_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} LOCAL_VARIABLE_NT'index' {local: LV"index"-number number} - RVALUE_CONTEXT_NT'count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} + RVALUE_CONTEXT_NT'count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} LOCAL_VARIABLE_NT'count' {local: LV"count"-number number} INVOCATION_LIST_NT'now group size is total entry' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'group size is total entry' CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if a marked for listing person is infected' {colon_block_command} {indent: 1} INVOCATION_NT'if a marked for listing person is infected' {phrase invoked: call} - CONDITION_CONTEXT_NT'a marked for listing person is infected' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'a marked for listing person is infected' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'a marked for listing person is infected' {proposition: << Exists x : kind=person(x) ^ marked for listing(x) ^ infected(x) >>} {term: x} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if looking and a marked for listing person is not in the loc' {colon_block_command} {indent: 2} INVOCATION_NT'if looking and a marked for listing person is not in the loc' {phrase invoked: call} - CONDITION_CONTEXT_NT'looking and a marked for listing person is not in the locati' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'looking and a marked for listing person is not in the locati' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'looking and a marked for listing person is not in the locati' TEST_VALUE_NT'looking' - CONSTANT_NT'looking' {kind: action} {action pattern: } + CONSTANT_NT'looking' {kind: action} {explicit action: } TEST_PROPOSITION_NT'a marked for listing person is not in the location' {proposition: << Exists x : kind=person(x) ^ marked for listing(x) ^ NOT< ('the location' == ) NOT> >>} {term: x} CODE_BLOCK_NT INVOCATION_LIST_NT'clear marked people' {indent: 3} @@ -23422,7 +20623,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'last person named' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'last person named' {nonlocal: 'last person named'(var)person}} {created here} COMMON_NOUN_NT'person that varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=people variable-pointer(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before printing the name of a person ( called target )' {unit: 4} + IMPERATIVE_NT'before printing the name of a person ( called target )' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the last person named is the target' {control structure: NOW} CONDITION_CONTEXT_NT'the last person named is the target' @@ -23434,28 +20635,24 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'group size' {refined} {eval: NONLOCAL_VARIABLE_NT'group size' {nonlocal: 'group size'(var)number}{meaning: {group size = VARIABLE_MC}}} PROPER_NOUN_NT'1' {refined} {eval: CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1}} - RULE_NT'to clear marked people' {unit: 4} + IMPERATIVE_NT'to clear marked people' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with named party running through people' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with named party running through people' {phrase invoked: call} {kind variable declarations: K=person} - NEW_LOCAL_CONTEXT_NT'named party' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: person} {required: K} + NEW_LOCAL_CONTEXT_NT'named party' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: person} {required: K} UNKNOWN_NT'named party' - RVALUE_CONTEXT_NT'people' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'people' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'people' {kind: description of people} {proposition: << kind=person(x) >>} CODE_BLOCK_NT INVOCATION_LIST_NT'now the named party is not marked for listing' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the named party is not marked for listing' - RULE_NT'before listing nondescript items' {unit: 4} + IMPERATIVE_NT'before listing nondescript items' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of people who are marked for listing is 0' {colon_block_command} INVOCATION_NT'if the number of people who are marked for listing is 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of people who are marked for listing is 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of people who are marked for listing is 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of people who are marked for listing is 0' {proposition: << ('number of people who are marked for listing' == '0') >>} {term: 'number of people who are marked for listing'} CODE_BLOCK_NT INVOCATION_LIST_NT'make no decision' {results_from_splitting} {indent: 1} @@ -23463,18 +20660,15 @@ ROOT_NT CODE_BLOCK_NT'say "You can see [a list of people who are marked for listin' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You can see "' INVOCATION_NT'"You can see "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"You can see "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"You can see "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You can see "' {kind: text} INVOCATION_LIST_SAY_NT'a list of people who are marked for listing' INVOCATION_NT'a list of people who are marked for listing' {phrase invoked: call} - RVALUE_CONTEXT_NT'people who are marked for listing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'people who are marked for listing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'people who are marked for listing' {kind: description of people} {proposition: << kind=person(x) ^ marked for listing(x) >>} INVOCATION_LIST_SAY_NT'" here. "' INVOCATION_NT'" here. "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" here. "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" here. "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" here. "' {kind: text} INVOCATION_LIST_NT'now group size is the number of people who are marked for li' {control structure: NOW} CONDITION_CONTEXT_NT'group size is the number of people who are marked for listin' @@ -23482,14 +20676,12 @@ ROOT_NT INVOCATION_NT'describe patients' {phrase invoked: call} INVOCATION_LIST_NT'now every marked for listing person is not marked for listin' {control structure: NOW} CONDITION_CONTEXT_NT'every marked for listing person is not marked for listing' - RULE_NT'to describe patients' {unit: 4} + IMPERATIVE_NT'to describe patients' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if every marked for listing person is infected and at least ' {colon_block_command} {indent: 1} INVOCATION_NT'if every marked for listing person is infected and at least ' {phrase invoked: call} - CONDITION_CONTEXT_NT'every marked for listing person is infected and at least thr' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'every marked for listing person is infected and at least thr' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'every marked for listing person is infected and at least thr' TEST_PROPOSITION_NT'every marked for listing person is infected' {proposition: << ForAll x IN< kind=person(x) ^ marked for listing(x) IN> : infected(x) >>} {term: x} TEST_PROPOSITION_NT'at least three people are marked for listing' {proposition: << Card>=3 x IN< kind=person(x) IN> : marked for listing(x) >>} {term: x} @@ -23497,8 +20689,7 @@ ROOT_NT CODE_BLOCK_NT'say "They are all sick as dogs, every one."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"They are all sick as dogs, every one."' INVOCATION_NT'"They are all sick as dogs, every one."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"They are all sick as dogs, every one."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"They are all sick as dogs, every one."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"They are all sick as dogs, every one."' {kind: text} INVOCATION_LIST_NT'clear marked people' {indent: 2} INVOCATION_NT'clear marked people' {phrase invoked: call} @@ -23508,9 +20699,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of people who are marked for listing is greate' {colon_block_command} {indent: 2} INVOCATION_NT'if the number of people who are marked for listing is greate' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of people who are marked for listing is greater than ' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of people who are marked for listing is greater than ' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'number of people who are marked for listing is greater than ' TEST_PROPOSITION_NT'number of people who are marked for listing is greater than ' {proposition: << greater-than('number of people who are marked for listing', 'two') >>} {term: 'number of people who are marked for listing'} TEST_PROPOSITION_NT'the number of infected people who are marked for listing is ' {proposition: << greater-than('the number of infected people who are marked for listing', 'the number of clean people who are marked for listing') >>} {term: 'the number of infected people who are marked for listing'} @@ -23518,36 +20707,29 @@ ROOT_NT CODE_BLOCK_NT'say "Only [the list of clean people who are marked for listi' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Only "' INVOCATION_NT'"Only "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"Only "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"Only "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Only "' {kind: text} INVOCATION_LIST_SAY_NT'the list of clean people who are marked for listing' INVOCATION_NT'the list of clean people who are marked for listing' {phrase invoked: call} - RVALUE_CONTEXT_NT'clean people who are marked for listing' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} + RVALUE_CONTEXT_NT'clean people who are marked for listing' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'clean people who are marked for listing' {kind: description of people} {proposition: << kind=person(x) ^ clean(x) ^ marked for listing(x) >>} INVOCATION_LIST_SAY_NT'" currently remain"' INVOCATION_NT'" currently remain"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" currently remain"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" currently remain"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" currently remain"' {kind: text} INVOCATION_LIST_SAY_NT'if the number of clean people who are marked for listing is ' INVOCATION_NT'if the number of clean people who are marked for listing is ' {phrase invoked: call} - CONDITION_CONTEXT_NT'number of clean people who are marked for listing is 1' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'number of clean people who are marked for listing is 1' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'number of clean people who are marked for listing is 1' {proposition: << ('number of clean people who are marked for listing' == '1') >>} {term: 'number of clean people who are marked for listing'} INVOCATION_LIST_SAY_NT'"s"' INVOCATION_NT'"s"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"s"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"s"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"s"' {kind: text} INVOCATION_LIST_SAY_NT'end if' INVOCATION_NT'end if' {phrase invoked: call} INVOCATION_LIST_SAY_NT'" untainted."' INVOCATION_NT'" untainted."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" untainted."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" untainted."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" untainted."' {kind: text} INVOCATION_LIST_NT'clear marked people' {indent: 3} INVOCATION_NT'clear marked people' {phrase invoked: call} @@ -23555,23 +20737,18 @@ ROOT_NT INVOCATION_NT'rule succeeds' {phrase invoked: call} INVOCATION_LIST_NT'let count be the number of marked for listing other people w' {indent: 1} INVOCATION_NT'let count be the number of marked for listing other people w' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'count' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'count' - RVALUE_CONTEXT_NT'number of marked for listing other people who are infected' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'number of marked for listing other people who are infected' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'number of marked for listing other people who are infected' INVOCATION_LIST_NT'number of marked for listing other people who are infected' INVOCATION_NT'number of marked for listing other people who are infected' {phrase invoked: call} {resulting: number} - RVALUE_CONTEXT_NT'marked for listing other people who are infected' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'description of values'} {required: description of values} + RVALUE_CONTEXT_NT'marked for listing other people who are infected' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of values'} {required: description of values} CONSTANT_NT'marked for listing other people who are infected' {kind: description of people} {proposition: << kind=person(x) ^ marked for listing(x) ^ other(x) ^ infected(x) >>} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if count is 0' {colon_block_command} {indent: 1} INVOCATION_NT'if count is 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'count is 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'count is 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'count is 0' {proposition: << ('count' == '0') >>} {term: 'count'} CODE_BLOCK_NT CODE_BLOCK_NT'say paragraph break' {control structure: SAY} @@ -23581,36 +20758,28 @@ ROOT_NT INVOCATION_NT'make no decision' {phrase invoked: call} INVOCATION_LIST_NT'let index be count' {indent: 1} INVOCATION_NT'let index be count' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'index' - RVALUE_CONTEXT_NT'count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} LOCAL_VARIABLE_NT'count' {local: LV"count"-number number} CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with patient running through marked for listing other' {colon_block_command} {indent: 1} INVOCATION_NT'repeat with patient running through marked for listing other' {phrase invoked: call} {kind variable declarations: K=person} - NEW_LOCAL_CONTEXT_NT'patient' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: person} {required: K} + NEW_LOCAL_CONTEXT_NT'patient' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: person} {required: K} UNKNOWN_NT'patient' - RVALUE_CONTEXT_NT'marked for listing other people who are infected' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: description of values} + RVALUE_CONTEXT_NT'marked for listing other people who are infected' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: description of values} CONSTANT_NT'marked for listing other people who are infected' {kind: description of people} {proposition: << kind=person(x) ^ marked for listing(x) ^ other(x) ^ infected(x) >>} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if index is count' {colon_block_command} {indent: 2} INVOCATION_NT'if index is count' {phrase invoked: call} - CONDITION_CONTEXT_NT'index is count' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'index is count' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'index is count' {proposition: << ('index' == 'count') >>} {term: 'index'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if count is 1 and the patient is the last person named' {colon_block_command} {indent: 3} INVOCATION_NT'if count is 1 and the patient is the last person named' {phrase invoked: call} - CONDITION_CONTEXT_NT'count is 1 and the patient is the last person named' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'count is 1 and the patient is the last person named' {token check to do: } {token to be parsed against: } LOGICAL_AND_NT'count is 1 and the patient is the last person named' TEST_PROPOSITION_NT'count is 1' {proposition: << ('count' == '1') >>} {term: 'count'} TEST_PROPOSITION_NT'the patient is the last person named' {proposition: << ('the patient' == 'the last person named') >>} {term: 'the patient'} @@ -23627,194 +20796,155 @@ ROOT_NT CODE_BLOCK_NT'say "[The patient]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'the patient' INVOCATION_NT'the patient' {phrase invoked: call} - RVALUE_CONTEXT_NT'patient' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'patient' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'patient' {local: LV person} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "[the patient]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'the patient' INVOCATION_NT'the patient' {phrase invoked: call} - RVALUE_CONTEXT_NT'patient' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} + RVALUE_CONTEXT_NT'patient' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'patient' {local: LV person} CODE_BLOCK_NT'say " [looks as though dipped in for index] [infection color' {control structure: SAY} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} INVOCATION_LIST_SAY_NT'looks as though dipped in for index' INVOCATION_NT'looks as though dipped in for index' {phrase invoked: call} - RVALUE_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} + RVALUE_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} LOCAL_VARIABLE_NT'index' {local: LV"index"-number number} INVOCATION_LIST_SAY_NT'" "' INVOCATION_NT'" "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} INVOCATION_LIST_SAY_NT'infection color of the patient' INVOCATION_NT'infection color of the patient' {phrase invoked: call} {kind variable declarations: K=infection color} {save self} - RVALUE_CONTEXT_NT'infection color of the patient' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'infection color of the patient' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} PROPERTY_VALUE_NT'infection color of the patient' {record as self} CONSTANT_NT {kind: infection colors valued property} {property: 'infection color'=infection color}{meaning: {infection color = PROPERTY_MC}} LOCAL_VARIABLE_NT'the patient' {local: LV person} INVOCATION_LIST_NT'decrement index' {indent: 2} INVOCATION_NT'decrement index' {phrase invoked: call} - LVALUE_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'equation'} + LVALUE_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT'equation'} LOCAL_VARIABLE_NT'index' {local: LV"index"-number number} INVOCATION_LIST_NT'make delimiter index of count' {indent: 2} INVOCATION_NT'make delimiter index of count' {phrase invoked: call} - RVALUE_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} + RVALUE_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} LOCAL_VARIABLE_NT'index' {local: LV"index"-number number} - RVALUE_CONTEXT_NT'count' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} + RVALUE_CONTEXT_NT'count' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a number'} {required: number} LOCAL_VARIABLE_NT'count' {local: LV"count"-number number} INVOCATION_LIST_NT'clear marked people' {indent: 1} INVOCATION_NT'clear marked people' {phrase invoked: call} - RULE_NT'to say ( named character - a man ) as pronoun' {unit: 4} + IMPERATIVE_NT'to say ( named character - a man ) as pronoun' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if group size is 1' {colon_block_command} INVOCATION_NT'if group size is 1' {phrase invoked: call} - CONDITION_CONTEXT_NT'group size is 1' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'group size is 1' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'group size is 1' {proposition: << ('group size' == '1') >>} {term: 'group size'} CODE_BLOCK_NT CODE_BLOCK_NT'say "He"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"He"' INVOCATION_NT'"He"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"He"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"He"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"He"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if group size is 2' {colon_block_command} INVOCATION_NT'if group size is 2' {phrase invoked: call} - CONDITION_CONTEXT_NT'group size is 2' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'group size is 2' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'group size is 2' {proposition: << ('group size' == '2') >>} {term: 'group size'} CODE_BLOCK_NT CODE_BLOCK_NT'say "The latter"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"The latter"' INVOCATION_NT'"The latter"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"The latter"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"The latter"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"The latter"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if group size is greater than 2' {colon_block_command} INVOCATION_NT'if group size is greater than 2' {phrase invoked: call} - CONDITION_CONTEXT_NT'group size is greater than 2' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'group size is greater than 2' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'group size is greater than 2' {proposition: << greater-than('group size', '2') >>} {term: 'group size'} CODE_BLOCK_NT CODE_BLOCK_NT'say "The last"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"The last"' INVOCATION_NT'"The last"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"The last"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"The last"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"The last"' {kind: text} - RULE_NT'to say ( named character - a woman ) as pronoun' {unit: 4} + IMPERATIVE_NT'to say ( named character - a woman ) as pronoun' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if group size is 1' {colon_block_command} INVOCATION_NT'if group size is 1' {phrase invoked: call} - CONDITION_CONTEXT_NT'group size is 1' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'group size is 1' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'group size is 1' {proposition: << ('group size' == '1') >>} {term: 'group size'} CODE_BLOCK_NT CODE_BLOCK_NT'say "She"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"She"' INVOCATION_NT'"She"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"She"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"She"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"She"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if group size is 2' {colon_block_command} INVOCATION_NT'if group size is 2' {phrase invoked: call} - CONDITION_CONTEXT_NT'group size is 2' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'group size is 2' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'group size is 2' {proposition: << ('group size' == '2') >>} {term: 'group size'} CODE_BLOCK_NT CODE_BLOCK_NT'say "The latter"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"The latter"' INVOCATION_NT'"The latter"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"The latter"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"The latter"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"The latter"' {kind: text} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if group size is greater than 2' {colon_block_command} INVOCATION_NT'if group size is greater than 2' {phrase invoked: call} - CONDITION_CONTEXT_NT'group size is greater than 2' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'group size is greater than 2' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'group size is greater than 2' {proposition: << greater-than('group size', '2') >>} {term: 'group size'} CODE_BLOCK_NT CODE_BLOCK_NT'say "The last"' {control structure: SAY} INVOCATION_LIST_SAY_NT'"The last"' INVOCATION_NT'"The last"' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"The last"' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"The last"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"The last"' {kind: text} - RULE_NT'to say looks as though dipped in for ( index - a number )' {unit: 4} + IMPERATIVE_NT'to say looks as though dipped in for ( index - a number )' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let divider be the number of filled rows in the table of dip' INVOCATION_NT'let divider be the number of filled rows in the table of dip' {phrase invoked: call} - NEW_LOCAL_CONTEXT_NT'divider' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} + NEW_LOCAL_CONTEXT_NT'divider' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {new var: number} {required: value} UNKNOWN_NT'divider' - RVALUE_CONTEXT_NT'number of filled rows in the table of dipping phrases' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'number of filled rows in the table of dipping phrases' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'number of filled rows in the table of dipping phrases' INVOCATION_LIST_NT'number of filled rows in the table of dipping phrases' INVOCATION_NT'number of filled rows in the table of dipping phrases' {phrase invoked: call} {resulting: number} - RVALUE_CONTEXT_NT'table of dipping phrases' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of dipping phrases' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of dipping phrases' {kind: table name} {table: table_data}{meaning: {table of dipping phrases = TABLE_MC}} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if index is greater than 4' {colon_block_command} INVOCATION_NT'if index is greater than 4' {phrase invoked: call} - CONDITION_CONTEXT_NT'index is greater than 4' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'index is greater than 4' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'index is greater than 4' {proposition: << greater-than('index', '4') >>} {term: 'index'} CODE_BLOCK_NT INVOCATION_LIST_NT'let index be the remainder after dividing index by divider' {results_from_splitting} {indent: 1} INVOCATION_NT'let index be the remainder after dividing index by divider' {phrase invoked: call} - LVALUE_LOCAL_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: value} + LVALUE_LOCAL_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'index' {local: LV"index"-number number} - RVALUE_CONTEXT_NT'remainder after dividing index by divider' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} + RVALUE_CONTEXT_NT'remainder after dividing index by divider' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} PHRASE_TO_DECIDE_VALUE_NT'remainder after dividing index by divider' INVOCATION_LIST_NT'remainder after dividing index by divider' INVOCATION_NT'remainder after dividing index by divider' {phrase invoked: call} {resulting: number} - RVALUE_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'arithmetic value'} {required: arithmetic value} + RVALUE_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT'arithmetic value'} {required: arithmetic value} LOCAL_VARIABLE_NT'index' {local: LV"index"-number number} - RVALUE_CONTEXT_NT'divider' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'arithmetic value'} {required: arithmetic value} + RVALUE_CONTEXT_NT'divider' {token check to do: } {token to be parsed against: TEST_VALUE_NT'arithmetic value'} {required: arithmetic value} LOCAL_VARIABLE_NT'divider' {local: LV"divider"-number number} INVOCATION_LIST_NT'choose row index in the table of dipping phrases' INVOCATION_NT'choose row index in the table of dipping phrases' {phrase invoked: call} - RVALUE_CONTEXT_NT'index' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'number'} {required: number} + RVALUE_CONTEXT_NT'index' {token check to do: } {token to be parsed against: TEST_VALUE_NT'number'} {required: number} LOCAL_VARIABLE_NT'index' {local: LV"index"-number number} - RVALUE_CONTEXT_NT'table of dipping phrases' {token check to do: - } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} + RVALUE_CONTEXT_NT'table of dipping phrases' {token check to do: } {token to be parsed against: TEST_VALUE_NT'table name'} {required: table name} CONSTANT_NT'table of dipping phrases' {kind: table name} {table: table_data}{meaning: {table of dipping phrases = TABLE_MC}} CODE_BLOCK_NT'say dipping entry' {control structure: SAY} INVOCATION_LIST_SAY_NT'dipping entry' INVOCATION_NT'dipping entry' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'dipping entry' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'dipping entry' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} TABLE_ENTRY_NT'dipping entry' CONSTANT_NT {kind: nothing valued table column} {table column: 'dipping'}{meaning: {dipping = TABLE_COLUMN_MC}} TABLE_NT'table of dipping phrases dipping "looks as though dipped in"' {unit: 4} @@ -23822,29 +20952,24 @@ ROOT_NT VERB_NT'is usually' {certainty:likely} {verb 'be' 3p s act IS_TENSE +ve} COMMON_NOUN_NT'door' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'door'} {creation: << kind=door(x) >>} {eval: TEST_VALUE_NT} ADJECTIVE_NT'scenery' {refined} {predicate: scenery} {creation: << scenery(x) ^ scenery(x) >>} - RULE_NT'to make delimiter ( index - a number ) of ( count - a number' {unit: 4} + IMPERATIVE_NT'to make delimiter ( index - a number ) of ( count - a number' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if index is 0' {colon_block_command} {indent: 1} INVOCATION_NT'if index is 0' {phrase invoked: call} - CONDITION_CONTEXT_NT'index is 0' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'index is 0' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'index is 0' {proposition: << ('index' == '0') >>} {term: 'index'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if continuing' {indent: 2} {colon_block_command} INVOCATION_NT'if continuing' {phrase invoked: call} - CONDITION_CONTEXT_NT'continuing' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'continuing' {token check to do: } {token to be parsed against: } TEST_PHRASE_OPTION_NT'continuing' {phrase option: 00000001} CODE_BLOCK_NT CODE_BLOCK_NT'say ". [run paragraph on]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'". "' {suppress_newlines} INVOCATION_NT'". "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'". "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'". "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'". "' {kind: text} INVOCATION_LIST_SAY_NT'run paragraph on' INVOCATION_NT'run paragraph on' {phrase invoked: call} @@ -23852,31 +20977,25 @@ ROOT_NT CODE_BLOCK_NT'say "."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"."' INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'"."' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT'otherwise' {control structure: O} CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if index is 1' {colon_block_command} {indent: 1} INVOCATION_NT'if index is 1' {phrase invoked: call} - CONDITION_CONTEXT_NT'index is 1' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'index is 1' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'index is 1' {proposition: << ('index' == '1') >>} {term: 'index'} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if count is 2' {indent: 2} {colon_block_command} INVOCATION_NT'if count is 2' {phrase invoked: call} - CONDITION_CONTEXT_NT'count is 2' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'count is 2' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'count is 2' {proposition: << ('count' == '2') >>} {term: 'count'} CODE_BLOCK_NT CODE_BLOCK_NT'say " and "' {control structure: SAY} INVOCATION_LIST_SAY_NT'" and "' INVOCATION_NT'" and "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" and "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" and "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" and "' {kind: text} CODE_BLOCK_NT'otherwise' {results_from_splitting} {indent: 2} {control structure: O} CODE_BLOCK_NT'say "[optional comma] and "' {control structure: SAY} @@ -23884,31 +21003,26 @@ ROOT_NT INVOCATION_NT'optional comma' {phrase invoked: call} INVOCATION_LIST_SAY_NT'" and "' INVOCATION_NT'" and "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'" and "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'" and "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" and "' {kind: text} CODE_BLOCK_NT'otherwise' {colon_block_command} {indent: 1} {control structure: O} CODE_BLOCK_NT'say ", "' {control structure: SAY} INVOCATION_LIST_SAY_NT'", "' INVOCATION_NT'", "' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'", "' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'", "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", "' {kind: text} - RULE_NT'to say optional comma' {unit: 4} + IMPERATIVE_NT'to say optional comma' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the serial comma option is active' {colon_block_command} {indent: 1} INVOCATION_NT'if the serial comma option is active' {phrase invoked: call} - CONDITION_CONTEXT_NT'serial comma option is active' {token check to do: - } {token to be parsed against: - } + CONDITION_CONTEXT_NT'serial comma option is active' {token check to do: } {token to be parsed against: } TEST_PROPOSITION_NT'serial comma option is active' {proposition: << active('serial comma option') >>} {term: 'serial comma option'} CODE_BLOCK_NT CODE_BLOCK_NT'say ","' {control structure: SAY} INVOCATION_LIST_SAY_NT'","' INVOCATION_NT'","' {phrase invoked: call} {kind variable declarations: K=text} - RVALUE_CONTEXT_NT'","' {token check to do: - } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} + RVALUE_CONTEXT_NT'","' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'","' {kind: text} SENTENCE_NT'test me with go to cold comfort / z / z / z / z / ask vaness' {unit: 4} {classified} VERB_NT'test' {verb 'test' 3p p act IS_TENSE +ve} {prep2: with} {special meaning: test-with} diff --git a/docs/knowledge-module/3-ma.html b/docs/knowledge-module/3-ma.html index 83668773f..1da8cf2d9 100644 --- a/docs/knowledge-module/3-ma.html +++ b/docs/knowledge-module/3-ma.html @@ -243,7 +243,7 @@ can't normally be unravelled at compile time. Grading::make_superlative(mdef->headword, Task::language_of_syntax()); Feed the preamble for the superlative phrase into the lexer3.3.1; Feed the body of the superlative phrase into the lexer3.3.2; - RuleSubtrees::register_recently_lexed_phrases(); + ImperativeSubtrees::accept_all();

    §3.3.1. Feed the preamble for the superlative phrase into the lexer3.3.1 = diff --git a/docs/runtime-module/2-emt.html b/docs/runtime-module/2-emt.html index 91453c37f..f0509c5c6 100644 --- a/docs/runtime-module/2-emt.html +++ b/docs/runtime-module/2-emt.html @@ -84,7 +84,7 @@ function togglePopup(material_id) { inter_tree *I7_generation_tree = NULL; -inter_tree *Emit::tree(void) { +inter_tree *Emit::tree(void) { return I7_generation_tree; } @@ -316,7 +316,7 @@ insert them into the Inter stream close to the top. Inter::SymbolsTables::id_from_IRS_and_symbol(Packaging::at(Emit::tree()), prop_name), Inter::SymbolsTables::id_from_IRS_and_symbol(Packaging::at(Emit::tree()), owner_kind), v1, v2, Produce::baseline(Packaging::at(Emit::tree())), NULL)); } -void Emit::named_string_constant(inter_name *name, text_stream *contents) { +void Emit::named_string_constant(inter_name *name, text_stream *contents) { packaging_state save = Packaging::enter_home_of(name); inter_ti ID = Inter::Warehouse::create_text(Inter::Tree::warehouse(Emit::tree()), Inter::Bookmarks::package(Packaging::at(Emit::tree()))); Str::copy(Inter::Warehouse::get_text(Inter::Tree::warehouse(Emit::tree()), ID), contents); @@ -349,7 +349,7 @@ insert them into the Inter stream close to the top. Packaging::exit(Emit::tree(), save); } -inter_name *Emit::named_numeric_constant(inter_name *name, inter_ti val) { +inter_name *Emit::named_numeric_constant(inter_name *name, inter_ti val) { packaging_state save = Packaging::enter_home_of(name); inter_symbol *con_name = Produce::define_symbol(name); Produce::guard(Inter::Constant::new_numerical(Packaging::at(Emit::tree()), Inter::SymbolsTables::id_from_IRS_and_symbol(Packaging::at(Emit::tree()), con_name), Inter::SymbolsTables::id_from_IRS_and_symbol(Packaging::at(Emit::tree()), int_interk), LITERAL_IVAL, val, Produce::baseline(Packaging::at(Emit::tree())), NULL)); @@ -502,7 +502,7 @@ insert them into the Inter stream close to the top. return save; } -packaging_state Emit::named_array_begin(inter_name *N, kind *K) { +packaging_state Emit::named_array_begin(inter_name *N, kind *K) { packaging_state save = Packaging::enter_home_of(N); inter_symbol *symb = Produce::define_symbol(N); Emit::push_array(); @@ -512,7 +512,7 @@ insert them into the Inter stream close to the top. return save; } -void Emit::array_iname_entry(inter_name *iname) { +void Emit::array_iname_entry(inter_name *iname) { if (current_A == NULL) internal_error("entry outside of inter array"); inter_symbol *alias; if (iname == NULL) alias = Site::veneer_symbol(Emit::tree(), NOTHING_VSYMB); @@ -547,7 +547,7 @@ insert them into the Inter stream close to the top. } #endif -void Emit::array_text_entry(text_stream *content) { +void Emit::array_text_entry(text_stream *content) { if (current_A == NULL) internal_error("entry outside of inter array"); inter_ti v1 = 0, v2 = 0; Produce::text_value(Emit::tree(), &v1, &v2, content); @@ -568,7 +568,7 @@ insert them into the Inter stream close to the top. Emit::add_entry(v1, v2); } -void Emit::array_numeric_entry(inter_ti N) { +void Emit::array_numeric_entry(inter_ti N) { if (current_A == NULL) internal_error("entry outside of inter array"); Emit::add_entry(LITERAL_IVAL, N); } @@ -586,7 +586,7 @@ insert them into the Inter stream close to the top. return IBM; } -void Emit::array_end(packaging_state save) { +void Emit::array_end(packaging_state save) { if (current_A == NULL) internal_error("inter array not opened"); inter_symbol *con_name = current_A->array_name_symbol; inter_bookmark *IBM = Packaging::at(Emit::tree()); @@ -617,7 +617,7 @@ insert them into the Inter stream close to the top. Packaging::exit(Emit::tree(), save); } -inter_name *Emit::named_iname_constant(inter_name *name, kind *K, inter_name *iname) { +inter_name *Emit::named_iname_constant(inter_name *name, kind *K, inter_name *iname) { packaging_state save = Packaging::enter_home_of(name); inter_symbol *con_name = Produce::define_symbol(name); inter_symbol *val_kind = Produce::kind_to_symbol(K); diff --git a/docs/runtime-module/2-hrr.html b/docs/runtime-module/2-hrr.html index 23f759fdb..1a412a33a 100644 --- a/docs/runtime-module/2-hrr.html +++ b/docs/runtime-module/2-hrr.html @@ -1723,11 +1723,11 @@ function togglePopup(material_id) {

    §4.

    -inter_name *Hierarchy::find(int id) {
    +inter_name *Hierarchy::find(int id) {
         return HierarchyLocations::find(Emit::tree(), id);
     }
     
    -void Hierarchy::make_available(inter_tree *I, inter_name *iname) {
    +void Hierarchy::make_available(inter_tree *I, inter_name *iname) {
         text_stream *ma_as = Produce::get_translation(iname);
         if (Str::len(ma_as) == 0) ma_as = Emit::to_text(iname);
         PackageTypes::get(I, I"_linkage");
    @@ -1743,7 +1743,7 @@ function togglePopup(material_id) {
         return HierarchyLocations::attach_new_package(Emit::tree(), NULL, NULL, hap_id);
     }
     
    -package_request *Hierarchy::local_package(int hap_id) {
    +package_request *Hierarchy::local_package(int hap_id) {
         return HierarchyLocations::attach_new_package(Emit::tree(), CompilationUnits::find(current_sentence), NULL, hap_id);
     }
     
    @@ -1755,7 +1755,7 @@ function togglePopup(material_id) {
         return HierarchyLocations::attach_new_package(Emit::tree(), NULL, super, hap_id);
     }
     
    -inter_name *Hierarchy::make_iname_in(int id, package_request *P) {
    +inter_name *Hierarchy::make_iname_in(int id, package_request *P) {
         return HierarchyLocations::find_in_package(Emit::tree(), id, P, EMPTY_WORDING, NULL, -1, NULL);
     }
     
    @@ -1771,7 +1771,7 @@ function togglePopup(material_id) {
         return HierarchyLocations::find_in_package(Emit::tree(), id, P, EMPTY_WORDING, NULL, -1, NULL);
     }
     
    -inter_name *Hierarchy::make_iname_with_memo(int id, package_request *P, wording W) {
    +inter_name *Hierarchy::make_iname_with_memo(int id, package_request *P, wording W) {
         return HierarchyLocations::find_in_package(Emit::tree(), id, P, W, NULL, -1, NULL);
     }
     
    @@ -1789,7 +1789,7 @@ function togglePopup(material_id) {
         HierarchyLocations::markup(Emit::tree(), R, hm_id, value);
     }
     
    -void Hierarchy::markup_wording(package_request *R, int hm_id, wording W) {
    +void Hierarchy::markup_wording(package_request *R, int hm_id, wording W) {
         TEMPORARY_TEXT(ANT)
         WRITE_TO(ANT, "%W", W);
         Hierarchy::markup(R, hm_id, ANT);
    diff --git a/docs/runtime-module/3-ad.html b/docs/runtime-module/3-ad.html
    index 35686a7eb..31a65ff0b 100644
    --- a/docs/runtime-module/3-ad.html
    +++ b/docs/runtime-module/3-ad.html
    @@ -190,7 +190,7 @@ the doubled use of colons is unfortunate.)
     
     void Phrases::Adjectives::look_for_headers(parse_node *p) {
    -    if (Node::get_type(p) == RULE_NT)
    +    if (Node::get_type(p) == IMPERATIVE_NT)
             if (<definition-header>(Node::get_text(p))) {
                 compilation_unit *cm = CompilationUnits::current();
                 CompilationUnits::set_current(p);
    @@ -223,7 +223,7 @@ is defined by routine or not.
     
     
         if ((p->next == NULL) ||
    -        (Node::get_type(p->next) != RULE_NT)) {
    +        (Node::get_type(p->next) != IMPERATIVE_NT)) {
             StandardProblems::sentence_problem(Task::syntax_tree(), _p_(BelievedImpossible),
                 "don't leave me in suspense",
                 "write a definition after 'Definition:'!");
    diff --git a/docs/runtime-module/4-rls.html b/docs/runtime-module/4-rls.html
    index 5f6011654..58d7392a2 100644
    --- a/docs/runtime-module/4-rls.html
    +++ b/docs/runtime-module/4-rls.html
    @@ -442,7 +442,7 @@ which were introduced in December 2010.
     

    -void RTRules::start_list_compilation(void) {
    +void RTRules::start_list_compilation(void) {
         inter_name *iname = Hierarchy::find(EMPTY_RULEBOOK_INAME_HL);
         packaging_state save = Routines::begin(iname);
         LocalVariables::add_named_call(I"forbid_breaks");
    @@ -459,7 +459,7 @@ which were introduced in December 2010.
     define RULE_OPTIMISATION_THRESHOLD 20  group arrays when larger than this number of rules
     
    -inter_name *RTRules::list_compile(booking_list *L,
    +inter_name *RTRules::list_compile(booking_list *L,
         inter_name *identifier, int action_based, int parameter_based) {
         if (L == NULL) return NULL;
         inter_name *rb_symb = NULL;
    @@ -755,6 +755,15 @@ than once for each rule.
     

    §10.

    +
    +void RTRules::compile_NUMBER_RULEBOOKS_CREATED(void) {
    +    inter_name *iname = Hierarchy::find(NUMBER_RULEBOOKS_CREATED_HL);
    +    Emit::named_numeric_constant(iname, (inter_ti) NUMBER_CREATED(rulebook));
    +    Hierarchy::make_available(Emit::tree(), iname);
    +}
    +
    +

    §11.

    +
     typedef struct rulebook_compilation_data {
         struct inter_name *stv_creator_iname;
    @@ -772,7 +781,7 @@ than once for each rule.
     }
     
    • The structure rulebook_compilation_data is private to this section.
    -

    §11. We do not actually compile the I6 routines for a rulebook here, but simply +

    §12. We do not actually compile the I6 routines for a rulebook here, but simply act as a proxy. The I6 arrays making the rulebooks available to run-time code are the real outcome of the code in this section.

    @@ -834,7 +843,7 @@ code are the real outcome of the code in this section. } -inter_name *RTRules::get_stv_creator_iname(rulebook *B) { +inter_name *RTRules::get_stv_creator_iname(rulebook *B) { if (B->compilation_data.stv_creator_iname == NULL) B->compilation_data.stv_creator_iname = Hierarchy::make_iname_in(RULEBOOK_STV_CREATOR_FN_HL, B->compilation_data.rb_package); @@ -846,7 +855,7 @@ code are the real outcome of the code in this section. LOOP_OVER(B, rulebook) if (StackedVariables::owner_empty(B->my_variables) == FALSE) StackedVariables::compile_frame_creator(B->my_variables, - RTRules::get_stv_creator_iname(B)); + RTRules::get_stv_creator_iname(B)); if (global_compilation_settings.memory_economy_in_force == FALSE) { inter_name *iname = Hierarchy::find(RULEBOOK_VAR_CREATORS_HL); @@ -858,10 +867,10 @@ code are the real outcome of the code in this section. Emit::array_numeric_entry(0); Emit::array_end(save); Hierarchy::make_available(Emit::tree(), iname); - } else Make slow lookup routine11.1; + } else Make slow lookup routine12.1; }
    -

    §11.1. Make slow lookup routine11.1 = +

    §12.1. Make slow lookup routine12.1 =

    @@ -885,7 +894,7 @@ code are the real outcome of the code in this section.
                         Produce::down(Emit::tree());
                             Produce::inv_primitive(Emit::tree(), RETURN_BIP);
                             Produce::down(Emit::tree());
    -                            Produce::val_iname(Emit::tree(), K_value, RTRules::get_stv_creator_iname(B));
    +                            Produce::val_iname(Emit::tree(), K_value, RTRules::get_stv_creator_iname(B));
                             Produce::up(Emit::tree());
                         Produce::up(Emit::tree());
                     Produce::up(Emit::tree());
    @@ -900,8 +909,8 @@ code are the real outcome of the code in this section.
     
         Routines::end(save);
     
    -
    • This code is used in §11.
    -

    §12.

    +
    • This code is used in §12.
    +

    §13.

     <notable-rulebook-outcomes> ::=
    @@ -912,7 +921,7 @@ code are the real outcome of the code in this section.
         it is very unlikely
     
    -

    §13.

    +

    §14.

     void RTRules::new_outcome(named_rulebook_outcome *rbno, wording W) {
    diff --git a/docs/runtime-module/4-rsfk.html b/docs/runtime-module/4-rsfk.html
    index 87492d0de..a8761e11a 100644
    --- a/docs/runtime-module/4-rsfk.html
    +++ b/docs/runtime-module/4-rsfk.html
    @@ -374,7 +374,7 @@ absence of rooms would otherwise result in.
         if (Kinds::Behaviour::is_an_enumeration(K)) return;
     
         if (Kinds::eq(K, K_rulebook_outcome)) {
    -        Emit::to_ival(v1, v2, RTRules::default_outcome_identifier());
    +        Emit::to_ival(v1, v2, RTRules::default_outcome_identifier());
             return;
         }
     
    @@ -620,7 +620,7 @@ which might occupy up to 31 characters, the maximum length of an I6 identifier:
         else Emit::array_numeric_entry((inter_ti) (RTKinds::weak_id(K)));
     }
     
    -void RTKinds::emit_weak_id_as_val(kind *K) {
    +void RTKinds::emit_weak_id_as_val(kind *K) {
         if (K == NULL) internal_error("cannot emit null kind as val");
         kind_constructor *con = Kinds::get_construct(K);
         inter_name *iname = Kinds::Constructors::iname(con);
    diff --git a/docs/runtime-module/4-rtn.html b/docs/runtime-module/4-rtn.html
    index 1377eab77..b3ee27663 100644
    --- a/docs/runtime-module/4-rtn.html
    +++ b/docs/runtime-module/4-rtn.html
    @@ -81,7 +81,7 @@ already been set up, or not. Here's not:
     

    -packaging_state Routines::begin(inter_name *name) {
    +packaging_state Routines::begin(inter_name *name) {
         return Routines::begin_framed(name, NULL);
     }
     
    @@ -140,7 +140,7 @@ did not.

    -void Routines::end(packaging_state save) {
    +void Routines::end(packaging_state save) {
         kind *R_kind = LocalVariables::deduced_function_kind(currently_compiling_in_frame);
     
         inter_name *kernel_name = NULL, *public_name = currently_compiling_iname;
    diff --git a/docs/runtime-module/4-ts.html b/docs/runtime-module/4-ts.html
    index dcc3e4727..f3ff18c42 100644
    --- a/docs/runtime-module/4-ts.html
    +++ b/docs/runtime-module/4-ts.html
    @@ -429,14 +429,14 @@ a request for a new text substitution to be compiled later...
             Produce::up(Emit::tree());
         }
     
    -    parse_node *ts_code_block = Node::new(RULE_NT);
    +    parse_node *ts_code_block = Node::new(IMPERATIVE_NT);
         Node::set_unit(ts_code_block, ts->belongs_to_module);
         compilation_unit *cm = CompilationUnits::current();
         CompilationUnits::set_current_to(ts->belongs_to_module);
    -    ts_code_block->down = Node::new(INVOCATION_LIST_NT);
    -    Node::set_text(ts_code_block->down, ts->unsubstituted_text);
    -    Annotations::write_int(ts_code_block->down, from_text_substitution_ANNOT, TRUE);
    -    RuleSubtrees::parse_routine_structure(ts_code_block);
    +    ts_code_block->next = Node::new(UNKNOWN_NT);
    +    Node::set_text(ts_code_block->next, ts->unsubstituted_text);
    +    Annotations::write_int(ts_code_block->next, from_text_substitution_ANNOT, TRUE);
    +    ImperativeSubtrees::accept(ts_code_block);
     
         Routines::Compile::code_block_outer(0, ts_code_block->down);
     
    diff --git a/docs/supervisor-module/6-st.html b/docs/supervisor-module/6-st.html
    index e37fc3a03..7979c4211 100644
    --- a/docs/supervisor-module/6-st.html
    +++ b/docs/supervisor-module/6-st.html
    @@ -246,18 +246,18 @@ Inform users: it increases output to the debugging log.)
     
     
    define NODE_METADATA_SETUP_SYNTAX_CALLBACK SourceText::node_metadata
     enum BIBLIOGRAPHIC_NT     For the initial title sentence
    -enum RULE_NT           "Instead of taking something, ..."
    +enum IMPERATIVE_NT        "Instead of taking something, ..."
     enum INFORM6CODE_NT       "Include (- ... -)
     enum TABLE_NT             "Table 1 - Counties of England"
     enum EQUATION_NT          "Equation 2 - Newton's Second Law"
     enum TRACE_NT             A sentence consisting of an asterisk and optional quoted text
    -define list_node_type RULE_NT
    +define list_node_type IMPERATIVE_NT
     define list_entry_node_type UNKNOWN_NT
     
     void SourceText::node_metadata(void) {
         NodeType::new(BIBLIOGRAPHIC_NT, I"BIBLIOGRAPHIC_NT",     0, 0,     L2_NCAT, 0);
    -    NodeType::new(RULE_NT, I"RULE_NT",                       0, INFTY, L2_NCAT, 0);
    +    NodeType::new(IMPERATIVE_NT, I"IMPERATIVE_NT",           0, INFTY, L2_NCAT, 0);
         NodeType::new(INFORM6CODE_NT, I"INFORM6CODE_NT",         0, 0,     L2_NCAT, 0);
         NodeType::new(TABLE_NT, I"TABLE_NT",                     0, 0,     L2_NCAT, TABBED_NFLAG);
         NodeType::new(EQUATION_NT, I"EQUATION_NT",               0, 0,     L2_NCAT, 0);
    diff --git a/docs/syntax-module/2-pn.html b/docs/syntax-module/2-pn.html
    index aff572e4b..2035bef8b 100644
    --- a/docs/syntax-module/2-pn.html
    +++ b/docs/syntax-module/2-pn.html
    @@ -388,8 +388,8 @@ sentences or so will exceed the typical stack size Inform has to run in.
                 if (pn->down) {
                     LOG_INDENT;
                     int recurse = TRUE;
    -                #ifdef RULE_NT
    -                if ((summarise) && (Node::is(pn, RULE_NT))) recurse = FALSE;
    +                #ifdef IMPERATIVE_NT
    +                if ((summarise) && (Node::is(pn, IMPERATIVE_NT))) recurse = FALSE;
                     #endif
                     if (recurse)
                         Node::log_subtree_recursively(OUT,
    diff --git a/docs/syntax-module/3-snt.html b/docs/syntax-module/3-snt.html
    index d8b83d750..c40da2f24 100644
    --- a/docs/syntax-module/3-snt.html
    +++ b/docs/syntax-module/3-snt.html
    @@ -636,7 +636,7 @@ work, have node type SENTENCE
     Anything we cannot place into categories (b) or (c) below will go here.
     
  • (b) "Sentences making up rules". These are sequences of sentences in which a preamble (ending with a colon, or in certain cases a comma) of node type -RULE_NT is followed by a sequence of phrases (ending with semicolons until +IMPERATIVE_NT is followed by a sequence of phrases (ending with semicolons until the last, which ends with a full stop or paragraph break), each of node type INVOCATION_LIST_NT. For instance, the following produces three nodes:
  • @@ -745,7 +745,7 @@ which divides rule from preamble:

    §6.9.2.1. In such sentences a comma is read as if it were a colon. (The text up to the -comma will then be given a RULE_NT node and the text beyond the comma +comma will then be given a IMPERATIVE_NT node and the text beyond the comma will make a INVOCATION_LIST_NT node.)

    @@ -801,7 +801,7 @@ its terminating colon. For instance:

    (which arrives at this routine as three separate "sentences") will produce -nodes with type RULE_NT, INVOCATION_LIST_NT and INVOCATION_LIST_NT respectively. +nodes with type IMPERATIVE_NT, INVOCATION_LIST_NT and INVOCATION_LIST_NT respectively.

    This paragraph of code might look as if it should only be used in assertion @@ -814,7 +814,7 @@ officially sanctioned way to make a definition with a complex phrase:

    Definition: a supporter is wobbly: if the player is on it, decide yes; decide no.

    -

    This produces four nodes: RULE_NT, RULE_NT, INVOCATION_LIST_NT and +

    This produces four nodes: IMPERATIVE_NT, IMPERATIVE_NT, INVOCATION_LIST_NT and INVOCATION_LIST_NT respectively.

    diff --git a/docs/values-module/3-lp.html b/docs/values-module/3-lp.html index 1ad4db2f3..5e1df1126 100644 --- a/docs/values-module/3-lp.html +++ b/docs/values-module/3-lp.html @@ -1573,7 +1573,7 @@ are declared. Compile the printing phrase for this and perhaps subsequent LPs27.1; } } - RuleSubtrees::register_recently_lexed_phrases(); + ImperativeSubtrees::accept_all(); }

    §27.1. These text substitutions correspond exactly neither to the LPs nor to the @@ -1636,7 +1636,7 @@ the LPs under each named possibility. Kinds::Textual::write(TEMP, K); Define phrases to convert from a packed value to individual parts28.1; Define a phrase to convert from numerical parts to a packed value28.2; - RuleSubtrees::register_recently_lexed_phrases(); + ImperativeSubtrees::accept_all(); DISCARD_TEXT(TEMP) } diff --git a/inbuild/supervisor-module/Chapter 6/Source Text.w b/inbuild/supervisor-module/Chapter 6/Source Text.w index 28bdc25f6..10d8237af 100644 --- a/inbuild/supervisor-module/Chapter 6/Source Text.w +++ b/inbuild/supervisor-module/Chapter 6/Source Text.w @@ -160,19 +160,19 @@ Inform users: it increases output to the debugging log.) @d NODE_METADATA_SETUP_SYNTAX_CALLBACK SourceText::node_metadata @e BIBLIOGRAPHIC_NT /* For the initial title sentence */ -@e RULE_NT /* "Instead of taking something, ..." */ +@e IMPERATIVE_NT /* "Instead of taking something, ..." */ @e INFORM6CODE_NT /* "Include (- ... -) */ @e TABLE_NT /* "Table 1 - Counties of England" */ @e EQUATION_NT /* "Equation 2 - Newton's Second Law" */ @e TRACE_NT /* A sentence consisting of an asterisk and optional quoted text */ -@d list_node_type RULE_NT +@d list_node_type IMPERATIVE_NT @d list_entry_node_type UNKNOWN_NT = void SourceText::node_metadata(void) { NodeType::new(BIBLIOGRAPHIC_NT, I"BIBLIOGRAPHIC_NT", 0, 0, L2_NCAT, 0); - NodeType::new(RULE_NT, I"RULE_NT", 0, INFTY, L2_NCAT, 0); + NodeType::new(IMPERATIVE_NT, I"IMPERATIVE_NT", 0, INFTY, L2_NCAT, 0); NodeType::new(INFORM6CODE_NT, I"INFORM6CODE_NT", 0, 0, L2_NCAT, 0); NodeType::new(TABLE_NT, I"TABLE_NT", 0, 0, L2_NCAT, TABBED_NFLAG); NodeType::new(EQUATION_NT, I"EQUATION_NT", 0, 0, L2_NCAT, 0); diff --git a/inform7/Downloads/preform-diagnostics.txt b/inform7/Downloads/preform-diagnostics.txt index 72d4e1b94..93fe867c2 100644 --- a/inform7/Downloads/preform-diagnostics.txt +++ b/inform7/Downloads/preform-diagnostics.txt @@ -1,6 +1,6 @@ internal nti 24 constraint (none) extremes [1, 1] - internal hits 1206/7288 nti 25 constraint (none) extremes [0, 0] + internal hits 1145/6214 nti 25 constraint (none) extremes [0, 0] internal hits 3873/7958 nti 26 constraint (none) extremes [0, 0] @@ -29,9 +29,9 @@ hits 0/18 nti 16 constraint DS = {16} extremes [3, infinity) English: {......} , _or {......} - (hits 0/9) constraint DS = {16} extremes [4, infinity) + (hits 0/5) constraint DS = {16} extremes [4, infinity) {......} _or {......} - (hits 0/9) constraint DS = {16} extremes [3, infinity) + (hits 0/5) constraint DS = {16} extremes [3, infinity) nti 17 constraint DS = {17} extremes [3, infinity) English: @@ -4728,7 +4728,7 @@ twelfth constraint CS = {27} extremes [1, 1] - internal hits 200/22420 nti r0 constraint CS = {r0} extremes [1, 1] + internal hits 200/22688 nti r0 constraint CS = {r0} extremes [1, 1] internal nti r1 constraint CS = {r1} extremes [1, 1] @@ -4764,9 +4764,9 @@

    internal hits 16515/98328 nti r2 constraint (none) extremes [1, 1] - internal hits 20340/236492 nti r2 constraint (none) extremes [1, 1] + internal hits 20294/236382 nti r2 constraint (none) extremes [1, 1] - internal hits 2580/41730 nti r2 constraint (none) extremes [1, 1] + internal hits 2079/40678 nti r2 constraint (none) extremes [1, 1] nti r2 constraint CS = {r2} extremes [6, 6] English: @@ -4830,21 +4830,21 @@ hits 16/21832 nti 29 constraint DS = {29} extremes [2, infinity) English: not {...} - (hits 16/1516) (matched long text) constraint DS = {29} extremes [2, infinity) + (hits 16/6418) (matched long text) constraint DS = {29} extremes [2, infinity) hits 79/158 nti 30 constraint (none) extremes [1, infinity) English: of the {...} (hits 0/8) constraint DS = {30} extremes [3, infinity) of {...} - (hits 0/8) constraint DS = {30} extremes [2, infinity) + (hits 0/12) constraint DS = {30} extremes [2, infinity) {...} (hits 79/79) (matched: 'dvd carried by the person asked') constraint (none) extremes [1, infinity) hits 0/21548 nti 31 constraint DS = {31} extremes [2, infinity) English: no one {***} - (hits 0/6826) constraint DS = {31} extremes [2, infinity) + (hits 0/5354) constraint DS = {31} extremes [2, infinity) internal hits 92/1206 nti 23 constraint (none) extremes [1, 1] @@ -4911,13 +4911,13 @@ here here here here here here constraint CS = {12} extremes [6, 6] - internal hits 4154/9008 nti 6 constraint FS = {6} extremes [1, infinity) + internal hits 4154/9164 nti 6 constraint FS = {6} extremes [1, infinity) internal hits 16/128 nti 7 constraint FS = {7} extremes [1, infinity) - internal hits 1/5494 nti 8 constraint FS = {8} extremes [1, infinity) + internal hits 1/6966 nti 8 constraint FS = {8} extremes [1, infinity) - internal hits 0/1454 nti 9 constraint FS = {9} extremes [1, infinity) + internal hits 0/1602 nti 9 constraint FS = {9} extremes [1, infinity) internal nti 10 constraint FS = {10} extremes [1, infinity) @@ -4935,27 +4935,27 @@ internal nti 12 constraint DS = {12} extremes [1, infinity) - internal hits 635/18634 nti 13 constraint DS = {13} extremes [1, infinity) + internal hits 635/16806 nti 13 constraint DS = {13} extremes [1, infinity) - internal hits 258/8380 nti 14 constraint DS = {14} extremes [1, infinity) + internal hits 258/8488 nti 14 constraint DS = {14} extremes [1, infinity) - hits 67/4504 nti 13 constraint CS = {13} extremes [1, 1] + hits 67/4406 nti 13 constraint CS = {13} extremes [1, 1] English: always/certainly - (hits 10/1010) (matched: 'always') constraint CS = {13} extremes [1, 1] + (hits 10/1066) (matched: 'always') constraint CS = {13} extremes [1, 1] usually/normally - (hits 53/1000) (matched: 'usually') constraint CS = {13} extremes [1, 1] + (hits 53/1056) (matched: 'usually') constraint CS = {13} extremes [1, 1] rarely/seldom - (hits 0/947) constraint CS = {13} extremes [1, 1] + (hits 0/1003) constraint CS = {13} extremes [1, 1] never - (hits 4/947) (matched: 'never') constraint CS = {13} extremes [1, 1] + (hits 4/1003) (matched: 'never') constraint CS = {13} extremes [1, 1] initially - (hits 0/943) constraint CS = {13} extremes [1, 1] + (hits 0/999) constraint CS = {13} extremes [1, 1] hits 0/4304 nti 14 constraint DS = {14} extremes [1, infinity) English: {***} once/twice/thrice/turn/turns/time/times - (hits 0/1793) constraint DS = {14} extremes [1, infinity) + (hits 0/1800) constraint DS = {14} extremes [1, infinity) nti 18 constraint DW = {15, 16, 17, 18} extremes [1, 9] English: @@ -5031,10 +5031,10 @@ (hits 60/60) (matched: 'fixed in place') constraint (none) extremes [1, infinity) - hits 33/109948 nti 19 constraint CS = {19} extremes [1, 1] + hits 33/109558 nti 19 constraint CS = {19} extremes [1, 1] English: there - (hits 33/273) (matched: 'there') constraint CS = {19} extremes [1, 1] + (hits 33/271) (matched: 'there') constraint CS = {19} extremes [1, 1] hits 2081/4162 nti 14 constraint (none) extremes [1, infinity) English: @@ -5059,16 +5059,16 @@ {...} (hits 99/279) (matched long text) constraint (none) extremes [1, infinity) - (hits 99/158) (matched long text) constraint DS = {20} extremes [2, infinity) + (hits 99/151) (matched long text) constraint DS = {20} extremes [2, infinity) (hits 81/81) (matched long text) constraint (none) extremes [1, infinity) - hits 198/1308 nti 20 constraint DS = {20} extremes [2, infinity) + hits 198/1288 nti 20 constraint DS = {20} extremes [2, infinity) English: , _{and} (hits 0/538) constraint DS = {20} extremes [3, infinity) _{,/and} - (hits 198/591) (matched long text) constraint DS = {20} extremes [2, infinity) + (hits 198/588) (matched long text) constraint DS = {20} extremes [2, infinity) hits 103/206 nti 17 constraint (none) extremes [1, infinity) English: @@ -5105,16 +5105,16 @@ hits 0/920 nti 20 constraint (none) extremes [1, infinity) English: - (hits 0/2) constraint CS = {22} extremes [1, 2] + constraint CS = {22} extremes [1, 2] {***} (hits 0/453) constraint (none) extremes [1, infinity) - (hits 0/361) constraint DS = {14} extremes [2, infinity) + (hits 0/375) constraint DS = {14} extremes [2, infinity) hits 0/1962 nti 21 constraint (none) extremes [1, infinity) English: - (hits 0/1) constraint CS = {22} extremes [1, 2] + constraint CS = {22} extremes [1, 2] (hits 0/981) constraint (none) extremes [1, infinity) @@ -5125,36 +5125,36 @@ internal hits 476/23876 nti 22 constraint (none) extremes [1, 1] - hits 0/6 nti 22 constraint CS = {22} extremes [1, 2] + nti 22 constraint CS = {22} extremes [1, 2] English: worn - (hits 0/1) constraint CS = {22} extremes [1, 1] + constraint CS = {22} extremes [1, 1] carried - (hits 0/1) constraint CS = {22} extremes [1, 1] + constraint CS = {22} extremes [1, 1] initially carried - (hits 0/2) constraint CS = {22} extremes [2, 2] + constraint CS = {22} extremes [2, 2] - hits 0/2684 nti 28 constraint DS = {14} extremes [2, infinity) + hits 0/2712 nti 28 constraint DS = {14} extremes [2, infinity) English: _,/and {...} - (hits 0/518) constraint DS = {14, 28} extremes [3, infinity) + (hits 0/534) constraint DS = {14, 28} extremes [3, infinity) _,/and - (hits 0/588) constraint DS = {14, 28} extremes [2, infinity) + (hits 0/610) constraint DS = {14, 28} extremes [2, infinity) - (hits 0/877) constraint DS = {14} extremes [2, infinity) + (hits 0/927) constraint DS = {14} extremes [2, infinity) hits 1467/2934 nti 27 constraint (none) extremes [1, infinity) English: {...} (hits 174/1467) (matched long text) constraint (none) extremes [1, infinity) {called} - (hits 57/558) (matched long text) constraint DS = {27} extremes [1, infinity) + (hits 57/566) (matched long text) constraint DS = {27} extremes [1, infinity) - (hits 0/741) constraint DS = {24} extremes [2, infinity) + (hits 0/764) constraint DS = {24} extremes [2, infinity) - (hits 87/508) (matched long text) constraint DS = {25} extremes [1, infinity) + (hits 87/337) (matched long text) constraint DS = {25} extremes [1, infinity) - (hits 30/531) (matched: 'a kind of supporter that is portable') constraint DS = {26} extremes [1, infinity) + (hits 30/221) (matched: 'a kind of supporter that is portable') constraint DS = {26} extremes [1, infinity) (hits 4/349) (matched: 'it') constraint (none) extremes [1, 1] @@ -5171,16 +5171,16 @@ (hits 431/431) (matched long text) constraint (none) extremes [1, infinity) - hits 0/10796 nti 24 constraint DS = {24} extremes [2, infinity) + hits 0/10968 nti 24 constraint DS = {24} extremes [2, infinity) English: it with action {***} - (hits 0/3733) constraint DS = {24} extremes [3, infinity) + (hits 0/3907) constraint DS = {24} extremes [3, infinity) {with/having} (/) {***} - (hits 0/3941) constraint DS = {24} extremes [2, infinity) + (hits 0/4111) constraint DS = {24} extremes [2, infinity) {with/having} {...} ( ) - (hits 0/3363) constraint DS = {24} extremes [5, infinity) + (hits 0/3508) constraint DS = {24} extremes [5, infinity) {with/having} - (hits 0/3941) constraint DS = {24} extremes [2, infinity) + (hits 0/4111) constraint DS = {24} extremes [2, infinity) nti 24 constraint (none) extremes [1, infinity) English: @@ -5203,26 +5203,26 @@ {...} constraint (none) extremes [1, infinity) - hits 174/3620 nti 25 constraint DS = {25} extremes [1, infinity) + hits 174/2742 nti 25 constraint DS = {25} extremes [1, infinity) English: , _{and} - (hits 8/1059) (matched: ', and didn't understand addressee's last name error') constraint DS = {25} extremes [2, infinity) + (hits 8/818) (matched: ', and didn't understand addressee's last name error') constraint DS = {25} extremes [2, infinity) _{,/and} - (hits 166/1141) (matched long text) constraint DS = {25} extremes [1, infinity) + (hits 166/827) (matched long text) constraint DS = {25} extremes [1, infinity) - hits 30/1062 nti 26 constraint DS = {26} extremes [1, infinity) + hits 30/442 nti 26 constraint DS = {26} extremes [1, infinity) English: - (hits 30/517) (matched: 'a kind of supporter that is portable') constraint DS = {26} extremes [2, infinity) + (hits 30/217) (matched: 'a kind of supporter that is portable') constraint DS = {26} extremes [2, infinity) - (hits 0/501) constraint DS = {26} extremes [1, infinity) + (hits 0/191) constraint DS = {26} extremes [1, infinity) - hits 30/1666 nti 26 constraint DS = {26} extremes [1, infinity) + hits 30/470 nti 26 constraint DS = {26} extremes [1, infinity) English: kind/kinds - (hits 4/54) (matched: 'kind') constraint CS = {26} extremes [1, 1] + (hits 4/8) (matched: 'kind') constraint CS = {26} extremes [1, 1] kind/kinds of - (hits 26/553) (matched: 'kind of supporter that is portable') constraint DS = {26} extremes [2, infinity) + (hits 26/227) (matched: 'kind of supporter that is portable') constraint DS = {26} extremes [2, infinity) internal nti 27 constraint (none) extremes [1, infinity) @@ -5236,17 +5236,17 @@ hits 67/2764 nti 30 constraint DS = {13} extremes [2, infinity) English: {...} - (hits 67/1228) (matched: 'usually table of general chitchat') constraint DS = {13} extremes [2, infinity) + (hits 67/1179) (matched: 'usually table of general chitchat') constraint DS = {13} extremes [2, infinity) - hits 687/24112 nti 30 constraint CS = {30} extremes [1, 1] + hits 691/25042 nti 30 constraint CS = {30} extremes [1, 1] English: which/who/that - (hits 687/5020) (matched: 'which') constraint CS = {30} extremes [1, 1] + (hits 691/5612) (matched: 'which') constraint CS = {30} extremes [1, 1] hits 2/2742 nti 31 constraint DS = {30} extremes [2, infinity) English: {...} - (hits 2/826) (matched: 'answering it that') constraint DS = {30} extremes [2, infinity) + (hits 2/820) (matched: 'answering it that') constraint DS = {30} extremes [2, infinity) nti 31 constraint DS = {31} extremes [3, infinity) English: @@ -5256,7 +5256,7 @@ hits 196/9062 nti 6 constraint DS = {6} extremes [2, infinity) English: of {...} - (hits 196/1851) (matched: 'of day -- documented at var_time --') constraint DS = {6} extremes [2, infinity) + (hits 196/2261) (matched: 'of day -- documented at var_time --') constraint DS = {6} extremes [2, infinity) hits 5/60 nti 7 constraint CS = {7} extremes [2, 2] English: @@ -5477,29 +5477,29 @@ hits 199/10188 nti 12 constraint DW = {11, 12} extremes [2, infinity) English: - (hits 191/3630) (matched long text) constraint DS = {11} extremes [2, infinity) + (hits 191/3093) (matched long text) constraint DS = {11} extremes [2, infinity) - (hits 8/3080) (matched long text) constraint DS = {12} extremes [3, infinity) + (hits 8/3628) (matched long text) constraint DS = {12} extremes [3, infinity) - hits 191/2384 nti 11 constraint DS = {11} extremes [2, infinity) + hits 191/2262 nti 11 constraint DS = {11} extremes [2, infinity) English: volume {...} - (hits 6/1192) (matched long text) constraint DS = {11} extremes [2, infinity) + (hits 6/1131) (matched long text) constraint DS = {11} extremes [2, infinity) book {...} - (hits 0/1186) constraint DS = {11} extremes [2, infinity) + (hits 0/1125) constraint DS = {11} extremes [2, infinity) part {...} - (hits 14/1186) (matched: 'part two - the physical world model') constraint DS = {11} extremes [2, infinity) + (hits 14/1125) (matched: 'part two - the physical world model') constraint DS = {11} extremes [2, infinity) chapter {...} - (hits 20/1172) (matched long text) constraint DS = {11} extremes [2, infinity) + (hits 20/1111) (matched long text) constraint DS = {11} extremes [2, infinity) section {...} - (hits 151/1152) (matched long text) constraint DS = {11} extremes [2, infinity) + (hits 151/1091) (matched long text) constraint DS = {11} extremes [2, infinity) - hits 8/6160 nti 12 constraint DS = {12} extremes [3, infinity) + hits 8/7256 nti 12 constraint DS = {12} extremes [3, infinity) English: {...} begin/begins here - (hits 4/3080) (matched long text) constraint DS = {12} extremes [3, infinity) + (hits 4/3628) (matched long text) constraint DS = {12} extremes [3, infinity) {...} end/ends here - (hits 4/3076) (matched: 'the standard rules end here') constraint DS = {12} extremes [3, infinity) + (hits 4/3624) (matched: 'the standard rules end here') constraint DS = {12} extremes [3, infinity) hits 32/12958 nti 14 constraint (none) extremes [1, infinity) English: @@ -5508,52 +5508,52 @@ {...} (hits 0/6459) constraint (none) extremes [2, infinity) - (hits 0/6310) constraint DS = {13} extremes [4, infinity) + (hits 0/6271) constraint DS = {13} extremes [4, infinity) * constraint CS = {14} extremes [1, 1] * constraint DS = {14} extremes [2, 2] table {...} - (hits 14/6301) (matched long text) constraint DS = {14} extremes [2, infinity) + (hits 14/6314) (matched long text) constraint DS = {14} extremes [2, infinity) equation {...} - (hits 0/6287) constraint DS = {14} extremes [2, infinity) + (hits 0/6300) constraint DS = {14} extremes [2, infinity) include the {...} by {...} - (hits 0/6277) constraint DS = {14} extremes [5, infinity) + (hits 0/6279) constraint DS = {14} extremes [5, infinity) include {...} by {...} - (hits 18/6286) (matched long text) constraint DS = {14} extremes [4, infinity) + (hits 18/6300) (matched long text) constraint DS = {14} extremes [4, infinity) include (- {...} - (hits 0/6269) constraint DS = {14} extremes [3, infinity) + (hits 0/6282) constraint DS = {14} extremes [3, infinity) hits 9/2788 nti 15 constraint DS = {15} extremes [2, infinity) English: instead of {...} - (hits 0/1089) constraint DS = {15} extremes [3, infinity) + (hits 0/1084) constraint DS = {15} extremes [3, infinity) every turn {***} - (hits 1/1089) (matched: 'every turn rules is a rulebook') constraint DS = {15} extremes [2, infinity) + (hits 1/1084) (matched: 'every turn rules is a rulebook') constraint DS = {15} extremes [2, infinity) before {...} - (hits 2/1088) (matched long text) constraint DS = {15} extremes [2, infinity) + (hits 2/1083) (matched long text) constraint DS = {15} extremes [2, infinity) after {...} - (hits 2/1086) (matched long text) constraint DS = {15} extremes [2, infinity) + (hits 2/1081) (matched long text) constraint DS = {15} extremes [2, infinity) when {...} - (hits 4/1084) (matched: 'when scene begins is a scene based rulebook') constraint DS = {15} extremes [2, infinity) + (hits 4/1079) (matched: 'when scene begins is a scene based rulebook') constraint DS = {15} extremes [2, infinity) - hits 0/12620 nti 13 constraint DS = {13} extremes [4, infinity) + hits 0/12542 nti 13 constraint DS = {13} extremes [4, infinity) English: include (- {###} in the preform grammar - (hits 0/136) constraint DS = {13} extremes [7, 7] + (hits 0/115) constraint DS = {13} extremes [7, 7] use {...} language element/elements - (hits 0/6310) constraint DS = {13} extremes [4, infinity) + (hits 0/6271) constraint DS = {13} extremes [4, infinity) hits 30/442 nti 21 constraint DS = {21} extremes [2, infinity) English: {...} ( ) - (hits 13/221) (matched long text) constraint DS = {21} extremes [4, infinity) + (hits 13/157) (matched long text) constraint DS = {21} extremes [4, infinity) {...} not for release - (hits 1/208) (matched long text) constraint DS = {21} extremes [4, infinity) + (hits 1/144) (matched long text) constraint DS = {21} extremes [4, infinity) {...} for release only - (hits 0/207) constraint DS = {21} extremes [4, infinity) + (hits 0/143) constraint DS = {21} extremes [4, infinity) {...} unindexed - (hits 16/207) (matched long text) constraint DS = {21} extremes [2, infinity) + (hits 16/143) (matched long text) constraint DS = {21} extremes [2, infinity) hits 13/26 nti 20 constraint DW = {17, 19, 20} extremes [1, infinity) English: @@ -5690,25 +5690,25 @@ hits 2873/18796 nti 31 constraint DS = {31} extremes [1, infinity) English: if {...} is begin - (hits 0/4867) constraint DS = {31} extremes [4, infinity) + (hits 0/4033) constraint DS = {31} extremes [4, infinity) if {...} is - (hits 0/5456) constraint DS = {31} extremes [3, infinity) + (hits 0/4610) constraint DS = {31} extremes [3, infinity) if/unless {...} - (hits 2123/6714) (matched long text) constraint DS = {31} extremes [2, infinity) + (hits 2123/4610) (matched long text) constraint DS = {31} extremes [2, infinity) repeat {...} - (hits 101/4591) (matched long text) constraint DS = {31} extremes [2, infinity) + (hits 101/2487) (matched long text) constraint DS = {31} extremes [2, infinity) while {...} - (hits 31/4490) (matched long text) constraint DS = {31} extremes [2, infinity) + (hits 31/2386) (matched long text) constraint DS = {31} extremes [2, infinity) else/otherwise (hits 330/345) (matched: 'otherwise') constraint CS = {31} extremes [1, 1] else/otherwise if/unless {...} - (hits 231/3201) (matched long text) constraint DS = {31} extremes [3, infinity) + (hits 231/2355) (matched long text) constraint DS = {31} extremes [3, infinity) else/otherwise {...} - (hits 57/4228) (matched long text) constraint DS = {31} extremes [2, infinity) + (hits 57/2124) (matched long text) constraint DS = {31} extremes [2, infinity) -- otherwise constraint CS = {31} extremes [2, 2] -- {...} - (hits 0/4171) constraint DS = {31} extremes [2, infinity) + (hits 0/2067) constraint DS = {31} extremes [2, infinity) hits 0/12004 nti 6 constraint CS = {6} extremes [2, 2] English: @@ -5722,9 +5722,9 @@ hits 756/14584 nti 7 constraint DS = {7} extremes [2, infinity) English: say {...} - (hits 584/3117) (matched: 'say run paragraph on with special look spacing') constraint DS = {7} extremes [2, infinity) + (hits 584/2409) (matched: 'say run paragraph on with special look spacing') constraint DS = {7} extremes [2, infinity) now {...} - (hits 172/2533) (matched long text) constraint DS = {7} extremes [2, infinity) + (hits 172/1825) (matched long text) constraint DS = {7} extremes [2, infinity) hits 2306/7528 nti 8 constraint DS = {8} extremes [3, infinity) English: @@ -5734,9 +5734,9 @@ hits 30/9858 nti 9 constraint DS = {9} extremes [2, infinity) English: instead {...} - (hits 0/1863) constraint DS = {9} extremes [2, infinity) + (hits 0/1710) constraint DS = {9} extremes [2, infinity) {...} instead - (hits 30/1863) (matched long text) constraint DS = {9} extremes [2, infinity) + (hits 30/1710) (matched long text) constraint DS = {9} extremes [2, infinity) hits 0/880 nti 10 constraint DS = {10} extremes [2, infinity) English: @@ -5915,16 +5915,16 @@ hits 24/48 nti 23 constraint (none) extremes [1, infinity) English: - (hits 0/3) constraint DS = {20} extremes [3, infinity) + constraint DS = {20} extremes [3, infinity) (hits 24/24) (matched: 'variable initial value') constraint (none) extremes [1, infinity) - hits 0/12 nti 20 constraint DS = {20} extremes [2, infinity) + nti 20 constraint DS = {20} extremes [2, infinity) English: , _{and} constraint DS = {20} extremes [3, infinity) _{,/and} - (hits 0/3) constraint DS = {20} extremes [2, infinity) + constraint DS = {20} extremes [2, infinity) hits 24/48 nti 19 constraint (none) extremes [1, infinity) English: @@ -5933,41 +5933,54 @@ presence constraint CS = {19} extremes [1, 1] {***} , {***} - (hits 0/7) constraint DS = {19} extremes [1, infinity) + constraint DS = {19} extremes [1, infinity) {***} {***} (hits 0/24) constraint (none) extremes [1, infinity) {...} (hits 24/24) (matched: 'variable initial value') constraint (none) extremes [1, infinity) - nti 21 constraint CS = {21} extremes [3, 3] + hits 438/876 nti 21 constraint (none) extremes [1, infinity) + English: + {***} . {***} + (hits 0/438) constraint DS = {21} extremes [1, infinity) + , {***} + (hits 0/438) constraint DS = {21} extremes [1, infinity) + {***} , + (hits 0/438) constraint DS = {21} extremes [1, infinity) + {***} , , {***} + (hits 0/438) constraint DS = {21} extremes [2, infinity) + {...} + (hits 438/438) (matched long text) constraint (none) extremes [1, infinity) + + nti 22 constraint CS = {22} extremes [3, 3] English: the debugging log - constraint CS = {21} extremes [3, 3] + constraint CS = {22} extremes [3, 3] - nti 23 constraint (none) extremes [1, infinity) + nti 24 constraint (none) extremes [1, infinity) English: only - constraint DS = {23} extremes [2, infinity) + constraint DS = {24} extremes [2, infinity) constraint (none) extremes [1, infinity) - nti 22 constraint (none) extremes [1, infinity) + nti 23 constraint (none) extremes [1, infinity) English: everything - constraint CS = {22} extremes [1, 1] + constraint CS = {23} extremes [1, 1] nothing - constraint CS = {22} extremes [1, 1] + constraint CS = {23} extremes [1, 1] constraint (none) extremes [1, 1] {...} constraint (none) extremes [1, infinity) - hits 4/1112 nti 24 constraint DS = {24} extremes [3, infinity) + hits 4/1112 nti 25 constraint DS = {25} extremes [3, infinity) English:
    plural of - (hits 4/274) (matched: 'the plural of person') constraint DS = {24} extremes [4, infinity) + (hits 4/168) (matched: 'the plural of person') constraint DS = {25} extremes [4, infinity) plural of - (hits 0/360) constraint DS = {24} extremes [3, infinity) + (hits 0/175) constraint DS = {25} extremes [3, infinity) nti 24 constraint (none) extremes [1, infinity) English: @@ -5981,10 +5994,10 @@ constraint (none) extremes [1, infinity) - hits 0/444 nti 25 constraint CS = {25} extremes [1, 1] + hits 0/444 nti 26 constraint CS = {26} extremes [1, 1] English: unicode - constraint CS = {25} extremes [1, 1] + (hits 0/2) constraint CS = {26} extremes [1, 1] nti 26 constraint (none) extremes [1, infinity) English: @@ -6000,82 +6013,82 @@ {...} constraint (none) extremes [1, infinity) - hits 220/442 nti 26 constraint CS = {26} extremes [1, 2] + hits 220/442 nti 27 constraint CS = {27} extremes [1, 2] English: inter - (hits 218/220) (matched: 'inter') constraint CS = {26} extremes [1, 1] + (hits 218/220) (matched: 'inter') constraint CS = {27} extremes [1, 1] i6 - (hits 2/2) (matched: 'i6') constraint CS = {26} extremes [1, 1] + (hits 2/2) (matched: 'i6') constraint CS = {27} extremes [1, 1] inform 6 - constraint CS = {26} extremes [2, 2] + constraint CS = {27} extremes [2, 2] - hits 440/880 nti 27 constraint (none) extremes [1, infinity) + hits 440/880 nti 28 constraint (none) extremes [1, infinity) English: {...} property - (hits 70/440) (matched: 'printed plural name property') constraint DS = {27} extremes [2, infinity) + (hits 70/440) (matched: 'printed plural name property') constraint DS = {28} extremes [2, infinity) {...} object/kind - (hits 6/370) (matched: 'inside object') constraint DS = {27} extremes [2, infinity) + (hits 6/370) (matched: 'inside object') constraint DS = {28} extremes [2, infinity) {... rule} - (hits 138/364) (matched: 'standard report preferring sometimes abbreviated room descriptions rule') constraint DS = {27} extremes [2, infinity) + (hits 138/364) (matched: 'standard report preferring sometimes abbreviated room descriptions rule') constraint DS = {28} extremes [2, infinity) {...} variable - (hits 70/226) (matched: 'current item from the multiple object list variable') constraint DS = {27} extremes [2, infinity) + (hits 70/226) (matched: 'current item from the multiple object list variable') constraint DS = {28} extremes [2, infinity) {...} action - (hits 154/156) (matched: 'switching the story transcript on action') constraint DS = {27} extremes [2, infinity) + (hits 154/156) (matched: 'switching the story transcript on action') constraint DS = {28} extremes [2, infinity) understand token {...} - (hits 2/2) (matched: 'understand token a time period') constraint DS = {27} extremes [3, infinity) + (hits 2/2) (matched: 'understand token a time period') constraint DS = {28} extremes [3, infinity) {...} constraint (none) extremes [1, infinity) - hits 220/440 nti 28 constraint (none) extremes [1, infinity) + hits 220/440 nti 29 constraint (none) extremes [1, infinity) English: with - (hits 36/36) (matched long text) constraint DS = {28} extremes [3, infinity) + (hits 36/36) (matched long text) constraint DS = {29} extremes [3, infinity) (hits 184/184) (matched: 'article') constraint (none) extremes [1, 1] - hits 134/268 nti 29 constraint DS = {29} extremes [4, 4] + hits 134/268 nti 30 constraint DS = {30} extremes [4, 4] English: ( ) (hits 134/134) (matched: '"[It] [are] [if story tense is present tense]now [end if]pitch dark in - [if story tense is present tense]here[else]there[end if]!" ( a )') constraint DS = {29} extremes [4, 4] + [if story tense is present tense]here[else]there[end if]!" ( a )') constraint DS = {30} extremes [4, 4] - hits 29/58 nti 30 constraint DS = {30} extremes [2, infinity) + hits 29/58 nti 31 constraint DS = {31} extremes [2, infinity) English: use - (hits 29/29) (matched long text) constraint DS = {30} extremes [2, infinity) + (hits 29/29) (matched long text) constraint DS = {31} extremes [2, infinity) - hits 29/58 nti 31 constraint (none) extremes [1, infinity) + hits 29/58 nti 6 constraint (none) extremes [1, infinity) English: (- {###} - (hits 29/29) (matched: '(- ! Use ineffectual does nothing. ') constraint DS = {31} extremes [2, 2] + (hits 29/29) (matched: '(- ! Use ineffectual does nothing. ') constraint DS = {6} extremes [2, 2] {...} constraint (none) extremes [1, infinity) - hits 0/88 nti 6 constraint DS = {6} extremes [3, 3] + hits 0/88 nti 7 constraint DS = {7} extremes [3, 3] English: inter pipeline {} - (hits 0/28) constraint DS = {6} extremes [3, 3] + (hits 0/28) constraint DS = {7} extremes [3, 3] - hits 28/88 nti 7 constraint DS = {7} extremes [3, 3] + hits 28/88 nti 8 constraint DS = {8} extremes [3, 3] English: {###} of - (hits 28/28) (matched: 'alloc_chunk_size of 32000') constraint DS = {7} extremes [3, 3] + (hits 28/28) (matched: 'alloc_chunk_size of 32000') constraint DS = {8} extremes [3, 3] - hits 45/90 nti 8 constraint (none) extremes [1, infinity) + hits 45/90 nti 9 constraint (none) extremes [1, infinity) English: {...} of at least - (hits 8/8) (matched long text) constraint DS = {8} extremes [5, infinity) + (hits 8/8) (matched long text) constraint DS = {9} extremes [5, infinity) {...} (hits 1/35) (matched: 'the serial comma') constraint (none) extremes [2, infinity) {...} (hits 36/36) (matched: 'unabbreviated object names') constraint (none) extremes [1, infinity) - hits 1/2 nti 10 constraint (none) extremes [1, infinity) + hits 1/2 nti 11 constraint (none) extremes [1, infinity) English: ( internal ) - constraint DS = {9, 10} & CW = {9, 10} extremes [4, 4] + constraint DS = {10, 11} & CW = {10, 11} extremes [4, 4] {###} ( internal ) - constraint DS = {10} extremes [4, 4] + constraint DS = {11} extremes [4, 4] (hits 0/1) constraint (none) extremes [1, 1] {###} @@ -6097,27 +6110,27 @@ {...} constraint (none) extremes [1, infinity) - constraint DS = {11} extremes [3, infinity) + constraint DS = {12} extremes [3, infinity) - constraint DS = {11} extremes [2, infinity) + constraint DS = {12} extremes [2, infinity) - nti 11 constraint DS = {11} extremes [2, infinity) + nti 12 constraint DS = {12} extremes [2, infinity) English: in - constraint DS = {11} extremes [2, infinity) + constraint DS = {12} extremes [2, infinity) in {...} - constraint DS = {11} extremes [2, infinity) + constraint DS = {12} extremes [2, infinity) holding/and/, - constraint DS = {11} extremes [2, infinity) + constraint DS = {12} extremes [2, infinity) holding/and/, {...} - constraint DS = {11} extremes [2, infinity) + constraint DS = {12} extremes [2, infinity) with {...} - constraint DS = {11} extremes [2, infinity) + constraint DS = {12} extremes [2, infinity) - hits 0/856 nti 12 constraint DS = {12} extremes [3, infinity) + hits 0/856 nti 13 constraint DS = {13} extremes [3, infinity) English: defined by - (hits 0/200) constraint DS = {12} extremes [3, infinity) + (hits 0/204) constraint DS = {13} extremes [3, infinity) nti 30 constraint (none) extremes [1, infinity) English: @@ -6126,56 +6139,56 @@ {...} constraint (none) extremes [1, infinity) - nti 13 constraint (none) extremes [1, infinity) + nti 14 constraint (none) extremes [1, infinity) English: kind/kinds of - constraint DS = {13} extremes [3, infinity) + constraint DS = {14} extremes [3, infinity) constraint (none) extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - nti 14 constraint CS = {14} extremes [1, 1] + nti 15 constraint CS = {15} extremes [1, 1] English: location - constraint CS = {14} extremes [1, 1] + constraint CS = {15} extremes [1, 1] - hits 83/166 nti 15 constraint DS = {15} extremes [2, infinity) + hits 83/166 nti 16 constraint DS = {16} extremes [2, infinity) English: listed - (hits 82/83) (matched long text) constraint DS = {15} extremes [2, infinity) + (hits 82/83) (matched long text) constraint DS = {16} extremes [2, infinity) not listed - (hits 1/1) (matched: 'not listed in any rulebook') constraint DS = {15} extremes [3, infinity) + (hits 1/1) (matched: 'not listed in any rulebook') constraint DS = {16} extremes [3, infinity) hits 113/932 nti 31 constraint (none) extremes [1, infinity) English: {...} (hits 30/466) (matched long text) constraint (none) extremes [1, infinity) - (hits 0/135) constraint DS = {16, 17} extremes [4, infinity) + (hits 0/227) constraint DS = {17, 18} extremes [4, infinity) - (hits 83/217) (matched long text) constraint DS = {16} extremes [2, infinity) + (hits 83/376) (matched long text) constraint DS = {17} extremes [2, infinity) - hits 30/1720 nti 17 constraint DS = {17} extremes [2, infinity) + hits 30/2544 nti 18 constraint DS = {18} extremes [2, infinity) English: , _{and} - (hits 1/499) (matched: ', and the library') constraint DS = {17} extremes [3, infinity) + (hits 1/723) (matched: ', and the library') constraint DS = {18} extremes [3, infinity) _{,/and} - (hits 29/540) (matched long text) constraint DS = {17} extremes [2, infinity) + (hits 29/858) (matched long text) constraint DS = {18} extremes [2, infinity) - hits 83/494 nti 16 constraint DS = {16} extremes [2, infinity) + hits 83/812 nti 17 constraint DS = {17} extremes [2, infinity) English: {...} rule - (hits 83/244) (matched long text) constraint DS = {16} extremes [2, infinity) + (hits 83/406) (matched long text) constraint DS = {17} extremes [2, infinity) - nti 18 constraint DS = {16} extremes [2, infinity) + nti 19 constraint DS = {17} extremes [2, infinity) English: - constraint DS = {16} extremes [2, infinity) + constraint DS = {17} extremes [2, infinity) if/when - constraint DS = {16, 18} extremes [4, infinity) + constraint DS = {17, 19} extremes [4, infinity) unless - constraint DS = {16, 18} extremes [4, infinity) + constraint DS = {17, 19} extremes [4, infinity) nti 6 constraint (none) extremes [1, infinity) English: @@ -6191,10 +6204,10 @@ {...} constraint (none) extremes [1, infinity) - nti 19 constraint CS = {19} extremes [1, 1] + nti 20 constraint CS = {20} extremes [1, 1] English: nothing - constraint CS = {19} extremes [1, 1] + constraint CS = {20} extremes [1, 1] nti 8 constraint (none) extremes [1, infinity) English: @@ -6210,40 +6223,40 @@ {...} constraint (none) extremes [1, infinity) - hits 83/166 nti 20 constraint (none) extremes [1, infinity) + hits 83/166 nti 21 constraint (none) extremes [1, infinity) English: in any rulebook - (hits 1/1) (matched: 'in any rulebook') constraint CS = {20} extremes [3, 3] + (hits 1/1) (matched: 'in any rulebook') constraint CS = {21} extremes [3, 3] in - (hits 32/82) (matched long text) constraint DS = {20} extremes [2, infinity) + (hits 32/82) (matched long text) constraint DS = {21} extremes [2, infinity) first in - (hits 16/50) (matched: 'first in for starting the virtual machine') constraint DS = {20} extremes [3, infinity) + (hits 16/50) (matched: 'first in for starting the virtual machine') constraint DS = {21} extremes [3, infinity) last in - (hits 30/34) (matched long text) constraint DS = {20} extremes [3, infinity) + (hits 30/34) (matched long text) constraint DS = {21} extremes [3, infinity) instead of in - (hits 3/4) (matched long text) constraint DS = {20} extremes [5, infinity) + (hits 3/4) (matched long text) constraint DS = {21} extremes [5, infinity) instead of in {...} - (hits 0/1) constraint DS = {20} extremes [5, infinity) + (hits 0/1) constraint DS = {21} extremes [5, infinity) instead of {...} in {...} - (hits 0/1) constraint DS = {20} extremes [5, infinity) + (hits 0/1) constraint DS = {21} extremes [5, infinity) before in - (hits 1/1) (matched long text) constraint DS = {20} extremes [4, infinity) + (hits 1/1) (matched long text) constraint DS = {21} extremes [4, infinity) before in {...} - constraint DS = {20} extremes [4, infinity) + constraint DS = {21} extremes [4, infinity) before {...} in {...} - constraint DS = {20} extremes [4, infinity) + constraint DS = {21} extremes [4, infinity) after in - constraint DS = {20} extremes [4, infinity) + constraint DS = {21} extremes [4, infinity) after in {...} - constraint DS = {20} extremes [4, infinity) + constraint DS = {21} extremes [4, infinity) after {...} in {...} - constraint DS = {20} extremes [4, infinity) + constraint DS = {21} extremes [4, infinity) instead of {...} - constraint DS = {20} extremes [3, infinity) + constraint DS = {21} extremes [3, infinity) before {...} - constraint DS = {20} extremes [2, infinity) + constraint DS = {21} extremes [2, infinity) after {...} - constraint DS = {20} extremes [2, infinity) + constraint DS = {21} extremes [2, infinity) {...} constraint (none) extremes [1, infinity) @@ -6254,55 +6267,55 @@ {...} constraint (none) extremes [1, infinity) - hits 34/1104 nti 21 constraint DS = {21} extremes [1, 2] + hits 34/1104 nti 22 constraint DS = {22} extremes [1, 2] English:
    activity - (hits 34/38) (matched: 'an activity') constraint DS = {21} extremes [2, 2] + (hits 34/38) (matched: 'an activity') constraint DS = {22} extremes [2, 2] activity - (hits 0/3) constraint CS = {21} extremes [1, 1] + constraint CS = {22} extremes [1, 1] - nti 24 constraint (none) extremes [1, infinity) + nti 25 constraint (none) extremes [1, infinity) English: {...} ( {} ) - constraint DS = {24} extremes [4, infinity) + constraint DS = {25} extremes [4, infinity) times - constraint DS = {24} extremes [3, infinity) + constraint DS = {25} extremes [3, infinity) times - constraint DS = {24} extremes [3, infinity) + constraint DS = {25} extremes [3, infinity) {...} constraint (none) extremes [1, infinity) nti 11 constraint (none) extremes [1, infinity) English: - constraint DS = {23} extremes [3, infinity) + constraint DS = {24} extremes [3, infinity) constraint (none) extremes [1, infinity) - nti 23 constraint DS = {23} extremes [2, infinity) + nti 24 constraint DS = {24} extremes [2, infinity) English: , and - constraint DS = {23} extremes [3, infinity) + constraint DS = {24} extremes [3, infinity) ,/and - constraint DS = {23} extremes [2, infinity) + constraint DS = {24} extremes [2, infinity) - nti 22 constraint (none) extremes [1, infinity) + nti 23 constraint (none) extremes [1, infinity) English: singular - constraint CS = {22} extremes [1, 1] + constraint CS = {23} extremes [1, 1] plural - constraint CS = {22} extremes [1, 1] + constraint CS = {23} extremes [1, 1] constraint (none) extremes [1, infinity) in {......} - constraint DS = {22} extremes [2, infinity) + constraint DS = {23} extremes [2, infinity) {......} constraint (none) extremes [1, infinity) nti 12 constraint (none) extremes [1, infinity) English: - constraint DW = {12, 30} extremes [3, infinity) + constraint DW = {13, 31} extremes [3, infinity) constraint (none) extremes [1, infinity) @@ -6313,27 +6326,27 @@ {...} constraint (none) extremes [1, infinity) - nti 12 constraint DW = {12, 30} extremes [2, infinity) + nti 13 constraint DW = {13, 31} extremes [2, infinity) English: with parts - constraint DS = {12} extremes [2, infinity) + constraint DS = {13} extremes [2, infinity) - constraint DS = {30} extremes [3, infinity) + constraint DS = {31} extremes [3, infinity) offset by - constraint DS = {12, 30} extremes [6, infinity) + constraint DS = {13, 31} extremes [6, infinity) offset by - constraint DS = {12} extremes [3, infinity) + constraint DS = {13} extremes [3, infinity) equivalent to - constraint DS = {12} extremes [3, infinity) + constraint DS = {13} extremes [3, infinity) - nti 30 constraint DS = {30} extremes [3, infinity) + nti 31 constraint DS = {31} extremes [3, infinity) English: scaled up by - constraint DS = {30} extremes [4, infinity) + constraint DS = {31} extremes [4, infinity) scaled down by - constraint DS = {30} extremes [4, infinity) + constraint DS = {31} extremes [4, infinity) scaled at - constraint DS = {30} extremes [3, infinity) + constraint DS = {31} extremes [3, infinity) nti 14 constraint (none) extremes [1, infinity) English: @@ -6342,136 +6355,136 @@ constraint (none) extremes [1, infinity) - nti 28 constraint (none) extremes [0, infinity) + nti 29 constraint (none) extremes [0, infinity) English: , and - constraint DS = {28} extremes [3, infinity) + constraint DS = {29} extremes [3, infinity) , - constraint DS = {28} extremes [2, infinity) + constraint DS = {29} extremes [2, infinity) and - constraint DS = {28} extremes [2, infinity) + constraint DS = {29} extremes [2, infinity) constraint (none) extremes [0, infinity) - nti 27 constraint (none) extremes [0, infinity) + nti 28 constraint (none) extremes [0, infinity) English: ( ) - constraint DS = {27} extremes [3, infinity) + constraint DS = {28} extremes [3, infinity) constraint (none) extremes [0, infinity) nti 15 constraint (none) extremes [1, infinity) English: - constraint DS = {26} extremes [3, infinity) + constraint DS = {27} extremes [3, infinity) constraint (none) extremes [1, infinity) - nti 26 constraint DS = {26} extremes [2, infinity) + nti 27 constraint DS = {27} extremes [2, infinity) English: , and - constraint DS = {26} extremes [3, infinity) + constraint DS = {27} extremes [3, infinity) ,/and - constraint DS = {26} extremes [2, infinity) + constraint DS = {27} extremes [2, infinity) - nti 25 constraint (none) extremes [1, infinity) + nti 26 constraint (none) extremes [1, infinity) English: optional - constraint CS = {25} extremes [1, 1] + constraint CS = {26} extremes [1, 1] preamble optional - constraint CS = {25} extremes [2, 2] + constraint CS = {26} extremes [2, 2] without leading zeros - constraint CS = {25} extremes [3, 3] + constraint CS = {26} extremes [3, 3] {......} constraint (none) extremes [1, infinity) - hits 5/12 nti 13 constraint DS = {13} extremes [3, infinity) + hits 5/12 nti 14 constraint DS = {14} extremes [3, infinity) English: to - (hits 5/6) (matched long text) constraint DS = {13} extremes [3, infinity) + (hits 5/6) (matched long text) constraint DS = {14} extremes [3, infinity) - hits 5/10 nti 15 constraint (none) extremes [1, infinity) + hits 5/10 nti 16 constraint (none) extremes [1, infinity) English: ( called {...} ) - (hits 3/3) (matched: 'one room ( called the other side )') constraint DS = {15} extremes [5, infinity) + (hits 3/3) (matched: 'one room ( called the other side )') constraint DS = {16} extremes [5, infinity) (hits 2/2) (matched: 'one person') constraint (none) extremes [1, infinity) - hits 5/10 nti 18 constraint (none) extremes [1, infinity) + hits 5/10 nti 19 constraint (none) extremes [1, infinity) English: with fast route-finding - (hits 0/1) constraint DS = {18} extremes [4, infinity) + (hits 0/1) constraint DS = {19} extremes [4, infinity) when {...} - (hits 1/1) (matched long text) constraint DS = {18} extremes [3, infinity) + (hits 1/1) (matched long text) constraint DS = {19} extremes [3, infinity) (hits 4/4) (matched: 'various doors') constraint (none) extremes [1, infinity) - hits 5/10 nti 17 constraint (none) extremes [1, infinity) + hits 5/10 nti 18 constraint (none) extremes [1, infinity) English: ( called {...} ) - (hits 1/1) (matched: 'a room ( called y )') constraint DS = {17} extremes [5, infinity) + (hits 1/1) (matched: 'a room ( called y )') constraint DS = {18} extremes [5, infinity) (hits 4/4) (matched: 'various doors') constraint (none) extremes [1, infinity) - hits 5/10 nti 16 constraint (none) extremes [1, infinity) + hits 5/10 nti 17 constraint (none) extremes [1, infinity) English: {another} - constraint CS = {16} extremes [1, 1] + constraint CS = {17} extremes [1, 1] {each other} - constraint CS = {16} extremes [2, 2] + constraint CS = {17} extremes [2, 2] {each other in groups} - constraint CS = {16} extremes [4, 4] + constraint CS = {17} extremes [4, 4] (hits 5/5) (matched: 'various doors') constraint (none) extremes [1, infinity) - hits 10/20 nti 14 constraint (none) extremes [1, infinity) + hits 10/20 nti 15 constraint (none) extremes [1, infinity) English: one {...} - (hits 4/10) (matched: 'one room') constraint DS = {14} extremes [2, infinity) + (hits 4/10) (matched: 'one room') constraint DS = {15} extremes [2, infinity) various {...} - (hits 4/6) (matched: 'various doors') constraint DS = {14} extremes [2, infinity) + (hits 4/6) (matched: 'various doors') constraint DS = {15} extremes [2, infinity) {...} (hits 2/2) (matched: 'a door') constraint (none) extremes [1, infinity) - nti 19 constraint DS = {19} extremes [3, infinity) + nti 20 constraint DS = {20} extremes [3, infinity) English: {...} relation storage - constraint DS = {19} extremes [3, infinity) + constraint DS = {20} extremes [3, infinity) - nti 20 constraint DS = {20} extremes [2, infinity) + nti 21 constraint DS = {21} extremes [2, infinity) English: {...} relation - constraint DS = {20} extremes [2, infinity) + constraint DS = {21} extremes [2, infinity) - hits 0/856 nti 21 constraint DS = {21} extremes [2, infinity) + hits 0/856 nti 22 constraint DS = {22} extremes [2, infinity) English: either - (hits 0/143) constraint DS = {21} extremes [2, infinity) + (hits 0/130) constraint DS = {22} extremes [2, infinity) - hits 0/86 nti 22 constraint (none) extremes [1, 2] + hits 0/86 nti 23 constraint (none) extremes [1, 2] English:
    kind - constraint DS = {22} extremes [2, 2] + (hits 0/42) constraint DS = {23} extremes [2, 2] kind - constraint CS = {22} extremes [1, 1] + constraint CS = {23} extremes [1, 1] constraint (none) extremes [1, 1] - hits 43/86 nti 25 constraint (none) extremes [1, infinity) + hits 43/86 nti 26 constraint (none) extremes [1, infinity) English: either ( ) - (hits 0/1) constraint DS = {25} extremes [5, infinity) + (hits 0/4) constraint DS = {26} extremes [5, infinity) ( ) - (hits 0/1) constraint DS = {25} extremes [4, infinity) + (hits 0/4) constraint DS = {26} extremes [4, infinity) either - (hits 0/1) constraint DS = {25} extremes [2, infinity) + (hits 0/30) constraint DS = {26} extremes [2, infinity) (hits 43/43) (matched: 'marked for listing or unmarked for listing') constraint (none) extremes [1, infinity) - nti 24 constraint (none) extremes [1, infinity) + nti 25 constraint (none) extremes [1, infinity) English: this is - constraint DS = {24} extremes [3, infinity) + constraint DS = {25} extremes [3, infinity) constraint (none) extremes [1, infinity) @@ -6484,97 +6497,97 @@ constraint (none) extremes [1, infinity) - nti 23 constraint (none) extremes [1, infinity) + nti 24 constraint (none) extremes [1, infinity) English: property - constraint DS = {23} extremes [2, infinity) + constraint DS = {24} extremes [2, infinity) constraint (none) extremes [1, infinity) - hits 74/1260 nti 17 constraint DS = {26} extremes [1, infinity) + hits 74/1260 nti 17 constraint DS = {27} extremes [1, infinity) English: - (hits 74/464) (matched: 'a verb') constraint DS = {26} extremes [2, infinity) + (hits 74/326) (matched: 'a verb') constraint DS = {27} extremes [2, infinity) - (hits 0/400) constraint DS = {26} extremes [1, infinity) + (hits 0/264) constraint DS = {27} extremes [1, infinity) - hits 74/1504 nti 26 constraint DS = {26} extremes [1, infinity) + hits 74/948 nti 27 constraint DS = {27} extremes [1, infinity) English: verb - (hits 74/88) (matched: 'verb') constraint CS = {26} extremes [1, 1] + (hits 74/86) (matched: 'verb') constraint CS = {27} extremes [1, 1] verb implying/meaning nounphrase-unparsed> - (hits 0/80) constraint DS = {26} extremes [4, 4] + (hits 0/55) constraint DS = {27} extremes [4, 4] verb implying/meaning - (hits 0/440) constraint DS = {26} extremes [3, infinity) + (hits 0/383) constraint DS = {27} extremes [3, infinity) - hits 82/168 nti 18 constraint DS = {27} extremes [2, infinity) + hits 82/168 nti 18 constraint DS = {28} extremes [2, infinity) English: - (hits 82/84) (matched long text) constraint DS = {27} extremes [3, infinity) + (hits 82/84) (matched long text) constraint DS = {28} extremes [3, infinity) - (hits 0/2) constraint DS = {27} extremes [2, infinity) + (hits 0/2) constraint DS = {28} extremes [2, infinity) - hits 82/172 nti 27 constraint DS = {27} extremes [2, infinity) + hits 82/172 nti 28 constraint DS = {28} extremes [2, infinity) English: verb to - constraint CS = {27} extremes [2, 2] + constraint CS = {28} extremes [2, 2] verb in the imperative - (hits 7/34) (matched: 'verb to include + in in the imperative') constraint DS = {27} extremes [5, infinity) + (hits 7/34) (matched: 'verb to include + in in the imperative') constraint DS = {28} extremes [5, infinity) verb - (hits 71/77) (matched long text) constraint DS = {27} extremes [2, infinity) + (hits 71/77) (matched long text) constraint DS = {28} extremes [2, infinity) operator - (hits 4/6) (matched: 'operator >') constraint DS = {27} extremes [2, infinity) + (hits 4/6) (matched: 'operator >') constraint DS = {28} extremes [2, infinity) - hits 152/304 nti 30 constraint (none) extremes [1, infinity) + hits 152/304 nti 31 constraint (none) extremes [1, infinity) English: in - (hits 0/45) constraint DS = {30} extremes [3, infinity) + (hits 0/18) constraint DS = {31} extremes [3, infinity) (hits 152/152) (matched long text) constraint (none) extremes [1, infinity) - hits 152/304 nti 29 constraint (none) extremes [1, infinity) + hits 152/304 nti 30 constraint (none) extremes [1, infinity) English: to ( {...} ) - (hits 1/9) (matched long text) constraint DS = {29} extremes [5, infinity) + (hits 1/9) (matched long text) constraint DS = {30} extremes [5, infinity) to - (hits 151/151) (matched: 'to be able to be') constraint DS = {29} extremes [2, infinity) + (hits 151/151) (matched: 'to be able to be') constraint DS = {30} extremes [2, infinity) ( {...} ) - constraint DS = {29} extremes [4, infinity) + constraint DS = {30} extremes [4, infinity) constraint (none) extremes [1, infinity) - hits 152/304 nti 28 constraint (none) extremes [1, infinity) + hits 152/304 nti 29 constraint (none) extremes [1, infinity) English: {be able to ...} - (hits 3/5) (matched: 'be able to be') constraint DS = {28} extremes [4, infinity) + (hits 3/5) (matched: 'be able to be') constraint DS = {29} extremes [4, infinity) {be able to} - (hits 1/5) (matched: 'be able to') constraint CS = {28} extremes [3, 3] + (hits 1/1) (matched: 'be able to') constraint CS = {29} extremes [3, 3] {...} (hits 148/148) (matched: 'translate into + as') constraint (none) extremes [1, infinity) - hits 82/164 nti 31 constraint (none) extremes [1, infinity) + hits 82/164 nti 6 constraint (none) extremes [1, infinity) English: reversed relation - (hits 18/53) (matched: 'reversed mapping up relation') constraint DS = {31} extremes [3, infinity) + (hits 18/53) (matched: 'reversed mapping up relation') constraint DS = {6} extremes [3, infinity) relation - (hits 29/64) (matched: 'meaning relation') constraint DS = {31} extremes [2, infinity) + (hits 29/64) (matched: 'meaning relation') constraint DS = {6} extremes [2, infinity) to - (hits 0/35) constraint DS = {31} extremes [2, infinity) + (hits 0/35) constraint DS = {6} extremes [2, infinity) {...} property - (hits 0/35) constraint DS = {31} extremes [2, infinity) + (hits 0/35) constraint DS = {6} extremes [2, infinity) built-in {...} meaning - (hits 35/35) (matched: 'built-in new-verb meaning') constraint DS = {31} extremes [3, infinity) + (hits 35/35) (matched: 'built-in new-verb meaning') constraint DS = {6} extremes [3, infinity) {...} relation - constraint DS = {31} extremes [2, infinity) + constraint DS = {6} extremes [2, infinity) {relation} - constraint CS = {31} extremes [1, 1] + constraint CS = {6} extremes [1, 1] {...} constraint (none) extremes [1, infinity) - hits 5/10 nti 6 constraint (none) extremes [2, infinity) + hits 5/10 nti 7 constraint (none) extremes [2, infinity) English: is/are {...} - (hits 2/2) (matched: 'it is concealed') constraint DS = {6} extremes [3, infinity) + (hits 2/2) (matched: 'it is concealed') constraint DS = {7} extremes [3, infinity) {...} (hits 3/3) (matched: 'he conceals') constraint (none) extremes [2, infinity) @@ -6585,164 +6598,164 @@ {***} (hits 0/1) constraint (none) extremes [1, infinity) - hits 0/856 nti 20 constraint DS = {7} extremes [1, infinity) + hits 0/856 nti 20 constraint DS = {8} extremes [1, infinity) English: - (hits 0/161) constraint DS = {7} extremes [2, infinity) + (hits 0/131) constraint DS = {8} extremes [2, infinity) - (hits 0/162) constraint DS = {7} extremes [1, infinity) + (hits 0/132) constraint DS = {8} extremes [1, infinity) - hits 0/420 nti 7 constraint DS = {7} extremes [1, infinity) + hits 0/330 nti 8 constraint DS = {8} extremes [1, infinity) English: adjective - (hits 0/1) constraint CS = {7} extremes [1, 1] + (hits 0/1) constraint CS = {8} extremes [1, 1] adjective implying/meaning - (hits 0/166) constraint DS = {7} extremes [4, infinity) + (hits 0/132) constraint DS = {8} extremes [4, infinity) adjective implying/meaning - (hits 0/205) constraint DS = {7} extremes [3, infinity) + (hits 0/164) constraint DS = {8} extremes [3, infinity) - nti 8 constraint (none) extremes [1, infinity) + nti 9 constraint (none) extremes [1, infinity) English: in {...} - constraint DS = {8} extremes [3, infinity) + constraint DS = {9} extremes [3, infinity) {...} constraint (none) extremes [1, infinity) - hits 734/1956 nti 9 constraint (none) extremes [1, infinity) + hits 734/1956 nti 10 constraint (none) extremes [1, infinity) English: variable - (hits 0/13) constraint CS = {9} extremes [1, 1] + (hits 0/14) constraint CS = {10} extremes [1, 1] action of - (hits 0/92) constraint DS = {9} extremes [3, infinity) + (hits 0/104) constraint DS = {10} extremes [3, infinity) (hits 728/978) (matched: 'action name based rule producing nothing that varies') constraint (none) extremes [1, infinity) (hits 6/250) (matched: 'language of play') constraint (none) extremes [1, infinity) - hits 0/514 nti 11 constraint DS = {10, 11} extremes [4, infinity) + hits 0/514 nti 12 constraint DS = {11, 12} extremes [4, infinity) English: {...} ( ) - (hits 0/43) constraint DS = {10, 11} extremes [4, infinity) + (hits 0/35) constraint DS = {11, 12} extremes [4, infinity) - nti 10 constraint CS = {10} extremes [1, 1] + nti 11 constraint CS = {11} extremes [1, 1] English: n - constraint CS = {10} extremes [1, 1] + constraint CS = {11} extremes [1, 1] m - constraint CS = {10} extremes [1, 1] + constraint CS = {11} extremes [1, 1] f - constraint CS = {10} extremes [1, 1] + constraint CS = {11} extremes [1, 1] - hits 0/546 nti 12 constraint (none) extremes [1, infinity) + hits 0/546 nti 13 constraint (none) extremes [1, infinity) English:
    (hits 0/73) constraint (none) extremes [1, 1] (/)/(- {***} - (hits 0/89) constraint DS = {12} extremes [1, infinity) + (hits 0/96) constraint DS = {13} extremes [1, infinity) {***} (/)/(- - (hits 0/89) constraint DS = {12} extremes [1, infinity) + (hits 0/96) constraint DS = {13} extremes [1, infinity) {...} (/)/(- {...} - (hits 0/61) constraint DS = {12} extremes [3, infinity) + (hits 0/70) constraint DS = {13} extremes [3, infinity) ni--crash--1 - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] ni--crash--10 - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] ni--crash--11 - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] , {...} - (hits 0/77) constraint DS = {12} extremes [2, infinity) + (hits 0/84) constraint DS = {13} extremes [2, infinity) {...} , - (hits 0/77) constraint DS = {12} extremes [2, infinity) + (hits 0/84) constraint DS = {13} extremes [2, infinity) {...} when/while {...} - (hits 0/61) constraint DS = {12} extremes [3, infinity) + (hits 0/70) constraint DS = {13} extremes [3, infinity) {***} {***} (hits 0/273) constraint (none) extremes [1, infinity) condition - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] conditions - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] storage - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] storages - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] variable - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] variables - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] property-value - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] property-values - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] table-reference - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] table-references - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] list-entry - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] list-entries - (hits 0/12) constraint CS = {12} extremes [1, 1] + (hits 0/12) constraint CS = {13} extremes [1, 1] - hits 0/18 nti 13 constraint DS = {13} extremes [5, infinity) + hits 0/18 nti 14 constraint DS = {14} extremes [5, infinity) English: {...} ( called the {...} ) - constraint DS = {13} extremes [6, infinity) + constraint DS = {14} extremes [6, infinity) {...} ( called {...} ) - constraint DS = {13} extremes [5, infinity) + constraint DS = {14} extremes [5, infinity) - hits 19/2150 nti 14 constraint DS = {14} extremes [5, infinity) + hits 19/2150 nti 15 constraint DS = {15} extremes [5, infinity) English: {...} ( called {...} ) {***} - (hits 19/610) (matched long text) constraint DS = {14} extremes [5, infinity) + (hits 19/399) (matched long text) constraint DS = {15} extremes [5, infinity) - hits 0/1474 nti 15 constraint (none) extremes [1, infinity) + hits 0/1474 nti 16 constraint (none) extremes [1, infinity) English:
    (hits 0/156) constraint (none) extremes [1, 1] {***} (/)/{/}/,/./(- {***} - (hits 0/100) constraint DS = {15} extremes [1, infinity) + (hits 0/155) constraint DS = {16} extremes [1, infinity) {***} {***} (hits 0/667) constraint (none) extremes [1, infinity) - hits 0/1612 nti 16 constraint (none) extremes [1, infinity) + hits 0/1612 nti 17 constraint (none) extremes [1, infinity) English: (hits 0/661) constraint (none) extremes [1, 1] {***} (/)/{/}/,/. {***} - (hits 0/9) constraint DS = {16} extremes [1, infinity) + (hits 0/18) constraint DS = {17} extremes [1, infinity) {***} {***} (hits 0/806) constraint (none) extremes [1, infinity) - hits 0/50 nti 17 constraint (none) extremes [1, infinity) + hits 0/50 nti 18 constraint (none) extremes [1, infinity) English: {...} with/having/and/or {...} - (hits 0/10) constraint DS = {17} extremes [3, infinity) + (hits 0/13) constraint DS = {18} extremes [3, infinity) (hits 0/25) constraint (none) extremes [1, infinity) - nti 18 constraint DS = {18} extremes [1, infinity) + nti 19 constraint DS = {19} extremes [1, infinity) English: {***} something {***} - constraint DS = {18} extremes [1, infinity) + constraint DS = {19} extremes [1, infinity) - hits 28/56 nti 21 constraint (none) extremes [1, infinity) + hits 28/56 nti 22 constraint (none) extremes [1, infinity) English: ( {***} ) - (hits 0/5) constraint DS = {21} extremes [2, infinity) + (hits 0/3) constraint DS = {22} extremes [2, infinity) ( {...} ) - (hits 0/2) constraint DS = {21} extremes [4, infinity) + (hits 0/2) constraint DS = {22} extremes [4, infinity) ( {...} ) - (hits 2/2) (matched: 'locale description priority ( a number )') constraint DS = {21} extremes [4, infinity) + (hits 2/2) (matched: 'locale description priority ( a number )') constraint DS = {22} extremes [4, infinity) (hits 12/26) (matched: 'turn stamp') constraint (none) extremes [1, infinity) (hits 14/14) (matched: 'final question wording') constraint (none) extremes [1, infinity) - hits 16/32 nti 20 constraint (none) extremes [1, infinity) + hits 16/32 nti 21 constraint (none) extremes [1, infinity) English:
    (hits 0/9) constraint (none) extremes [1, 1] {topic} - (hits 1/1) (matched: 'topic') constraint CS = {20} extremes [1, 1] + (hits 1/1) (matched: 'topic') constraint CS = {21} extremes [1, 1] {} (hits 0/15) constraint (none) extremes [1, infinity) {} @@ -6750,53 +6763,53 @@ {...} (hits 15/15) (matched: 'final question wording') constraint (none) extremes [1, infinity) - nti 22 constraint DS = {22} extremes [2, infinity) + nti 23 constraint DS = {23} extremes [2, infinity) English: {...} column - constraint DS = {22} extremes [2, infinity) - - hits 7/14 nti 24 constraint DS = {23} extremes [2, infinity) - English: - ( continued ) - (hits 0/1) constraint DS = {23, 24} extremes [5, infinity) - ( amended ) - (hits 0/1) constraint DS = {23, 24} extremes [5, infinity) - ( replaced ) - (hits 0/1) constraint DS = {23, 24} extremes [5, infinity) - - (hits 7/7) (matched: 'table of final question options') constraint DS = {23} extremes [2, infinity) - - hits 7/14 nti 23 constraint DS = {23} extremes [2, infinity) - English: - table {...} - {...} - (hits 0/7) constraint DS = {23} extremes [4, infinity) - table {###} - constraint DS = {23} extremes [2, 2] - table of {...} - (hits 7/7) (matched: 'table of final question options') constraint DS = {23} extremes [3, infinity) - table {...} constraint DS = {23} extremes [2, infinity) - nti 25 constraint DS = {25} extremes [2, infinity) + hits 7/14 nti 25 constraint DS = {24} extremes [2, infinity) + English: + ( continued ) + (hits 0/1) constraint DS = {24, 25} extremes [5, infinity) + ( amended ) + (hits 0/1) constraint DS = {24, 25} extremes [5, infinity) + ( replaced ) + (hits 0/1) constraint DS = {24, 25} extremes [5, infinity) + + (hits 7/7) (matched: 'table of final question options') constraint DS = {24} extremes [2, infinity) + + hits 7/14 nti 24 constraint DS = {24} extremes [2, infinity) + English: + table {...} - {...} + (hits 0/7) constraint DS = {24} extremes [4, infinity) + table {###} + constraint DS = {24} extremes [2, 2] + table of {...} + (hits 7/7) (matched: 'table of final question options') constraint DS = {24} extremes [3, infinity) + table {...} + constraint DS = {24} extremes [2, infinity) + + nti 26 constraint DS = {26} extremes [2, infinity) English: table {...} - constraint DS = {25} extremes [2, infinity) + constraint DS = {26} extremes [2, infinity) table of {...} - constraint DS = {25} extremes [3, infinity) + constraint DS = {26} extremes [3, infinity) - hits 3/14 nti 26 constraint DS = {26} extremes [4, infinity) + hits 3/14 nti 27 constraint DS = {27} extremes [4, infinity) English: {***} with blank row/rows - (hits 2/7) (matched long text) constraint DS = {26} extremes [4, infinity) + (hits 2/7) (matched long text) constraint DS = {27} extremes [4, infinity) {***} with {...} blank row/rows - (hits 0/5) constraint DS = {26} extremes [4, infinity) + (hits 0/5) constraint DS = {27} extremes [4, infinity) {***} with blank row/rows for each/every {...} - (hits 1/5) (matched long text) constraint DS = {26} extremes [6, infinity) + (hits 1/5) (matched long text) constraint DS = {27} extremes [6, infinity) hits 164/328 nti 21 constraint (none) extremes [1, infinity) English: - (hits 14/14) (matched: '--') constraint CS = {27} extremes [1, 1] + (hits 14/14) (matched: '--') constraint CS = {28} extremes [1, 1] (hits 28/150) (matched: 'a number') constraint (none) extremes [1, infinity) @@ -6810,19 +6823,19 @@ {...} constraint (none) extremes [1, infinity) - hits 14/28 nti 27 constraint CS = {27} extremes [1, 1] + hits 14/28 nti 28 constraint CS = {28} extremes [1, 1] English: -- - (hits 14/14) (matched: '--') constraint CS = {27} extremes [1, 1] + (hits 14/14) (matched: '--') constraint CS = {28} extremes [1, 1] - hits 116/244 nti 28 constraint (none) extremes [1, infinity) + hits 116/244 nti 29 constraint (none) extremes [1, infinity) English: the action of - (hits 0/2) constraint DS = {28} extremes [4, infinity) + (hits 0/2) constraint DS = {29} extremes [4, infinity) (hits 0/122) constraint (none) extremes [1, infinity) the action of - (hits 0/2) constraint DS = {28} extremes [4, infinity) + (hits 0/2) constraint DS = {29} extremes [4, infinity) (hits 0/122) constraint (none) extremes [1, infinity) @@ -6830,56 +6843,56 @@ (hits 116/122) (matched: 'immediately restart the vm rule') constraint (none) extremes [1, infinity) - hits 12/24 nti 29 constraint (none) extremes [1, infinity) + hits 12/24 nti 30 constraint (none) extremes [1, infinity) English: or - (hits 6/6) (matched: '"forecast/weatherman" or "weather forecast/man"') constraint DS = {29} extremes [3, infinity) + (hits 6/6) (matched: '"forecast/weatherman" or "weather forecast/man"') constraint DS = {30} extremes [3, infinity) (hits 6/6) (matched: '"weather forecast/man"') constraint (none) extremes [1, 1] - nti 30 constraint DS = {30} extremes [1, infinity) + nti 31 constraint DS = {31} extremes [1, infinity) English: equation {} - {...} - constraint DS = {30} extremes [4, infinity) + constraint DS = {31} extremes [4, infinity) equation {} - constraint DS = {30} extremes [2, 2] + constraint DS = {31} extremes [2, 2] equation - {...} - constraint DS = {30} extremes [3, infinity) + constraint DS = {31} extremes [3, infinity) equation {***} - constraint DS = {30} extremes [1, infinity) + constraint DS = {31} extremes [1, infinity) - hits 0/8 nti 31 constraint DS = {31} extremes [2, infinity) + hits 0/8 nti 6 constraint DS = {6} extremes [2, infinity) English: {...} , - (hits 0/3) constraint DS = {31} extremes [2, infinity) + (hits 0/3) constraint DS = {6} extremes [2, infinity) - nti 6 constraint DS = {6} extremes [2, infinity) + nti 7 constraint DS = {7} extremes [2, infinity) English: equation {...} - constraint DS = {6} extremes [2, infinity) + constraint DS = {7} extremes [2, infinity) {...} equation - constraint DS = {6} extremes [2, infinity) + constraint DS = {7} extremes [2, infinity) - nti 7 constraint DS = {7} extremes [3, infinity) + nti 8 constraint DS = {8} extremes [3, infinity) English: {...} where {...} - constraint DS = {7} extremes [3, infinity) + constraint DS = {8} extremes [3, infinity) hits 4/8 nti 22 constraint (none) extremes [1, infinity) English: {...} (hits 0/4) constraint (none) extremes [1, infinity) - (hits 0/4) constraint DS = {9} extremes [3, infinity) + (hits 0/4) constraint DS = {10} extremes [3, infinity) (hits 4/4) (matched: 'x is a real number') constraint (none) extremes [1, infinity) - hits 0/32 nti 9 constraint DS = {9} extremes [2, infinity) + hits 0/32 nti 10 constraint DS = {10} extremes [2, infinity) English: , _and - (hits 0/4) constraint DS = {9} extremes [3, infinity) + (hits 0/4) constraint DS = {10} extremes [3, infinity) _,/and - (hits 0/4) constraint DS = {9} extremes [2, infinity) + (hits 0/4) constraint DS = {10} extremes [2, infinity) hits 4/8 nti 23 constraint (none) extremes [1, infinity) English: @@ -6888,20 +6901,20 @@ (hits 4/4) (matched: 'x is a real number') constraint (none) extremes [1, infinity) - hits 4/8 nti 8 constraint (none) extremes [1, infinity) + hits 4/8 nti 9 constraint (none) extremes [1, infinity) English: is/are - (hits 4/4) (matched: 'x is a real number') constraint DS = {8} extremes [3, infinity) + (hits 4/4) (matched: 'x is a real number') constraint DS = {9} extremes [3, infinity) is/are - constraint DS = {8} extremes [3, infinity) + constraint DS = {9} extremes [3, infinity) is/are {...} - constraint DS = {8} extremes [3, infinity) + constraint DS = {9} extremes [3, infinity) = - constraint DS = {8} extremes [3, infinity) + constraint DS = {9} extremes [3, infinity) = - constraint DS = {8} extremes [3, infinity) + constraint DS = {9} extremes [3, infinity) = {...} - constraint DS = {8} extremes [3, infinity) + constraint DS = {9} extremes [3, infinity) constraint (none) extremes [1, infinity) @@ -6916,77 +6929,77 @@ internal hits 4/8 nti 25 constraint (none) extremes [1, infinity) - nti 10 constraint CS = {10} extremes [1, 1] + nti 11 constraint CS = {11} extremes [1, 1] English: continue - constraint CS = {10} extremes [1, 1] + constraint CS = {11} extremes [1, 1] - nti 11 constraint (none) extremes [1, infinity) + nti 12 constraint (none) extremes [1, infinity) English: a list of {...} - constraint DS = {11} extremes [4, infinity) + constraint DS = {12} extremes [4, infinity) {...} constraint (none) extremes [1, infinity) nti 26 constraint (none) extremes [1, infinity) English: - constraint DS = {13} extremes [3, infinity) + constraint DS = {14} extremes [3, infinity) constraint (none) extremes [1, infinity) - nti 13 constraint DS = {13} extremes [2, infinity) + nti 14 constraint DS = {14} extremes [2, infinity) English: , and/or - constraint DS = {13} extremes [3, infinity) + constraint DS = {14} extremes [3, infinity) ,/and/or - constraint DS = {13} extremes [2, infinity) + constraint DS = {14} extremes [2, infinity) - nti 12 constraint (none) extremes [1, infinity) + nti 13 constraint (none) extremes [1, infinity) English: constraint (none) extremes [1, infinity) constraint (none) extremes [1, infinity) {...} begins/ends - constraint DS = {12} extremes [2, infinity) + constraint DS = {13} extremes [2, infinity) when/while {***} - constraint DS = {12} extremes [1, infinity) + constraint DS = {13} extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - nti 14 constraint (none) extremes [1, infinity) + nti 15 constraint (none) extremes [1, infinity) English: say {...} - constraint DS = {14} extremes [2, infinity) + constraint DS = {15} extremes [2, infinity) {...} and/or {...} - constraint DS = {14} extremes [3, infinity) + constraint DS = {15} extremes [3, infinity) {...} constraint (none) extremes [1, infinity) - nti 15 constraint (none) extremes [1, infinity) + nti 16 constraint (none) extremes [1, infinity) English: , {...} - constraint DS = {15} extremes [2, infinity) + constraint DS = {16} extremes [2, infinity) unicode {...} - constraint DS = {15} extremes [2, infinity) + constraint DS = {16} extremes [2, infinity) {...} condition - constraint DS = {15} extremes [2, infinity) + constraint DS = {16} extremes [2, infinity) otherwise/else {***} - constraint DS = {15} extremes [1, infinity) + constraint DS = {16} extremes [1, infinity) {...} constraint (none) extremes [1, infinity) - nti 16 constraint (none) extremes [1, infinity) + nti 17 constraint (none) extremes [1, infinity) English: turns - constraint CS = {16} extremes [1, 1] + constraint CS = {17} extremes [1, 1] {...} is/are out of play - constraint DS = {16} extremes [5, infinity) + constraint DS = {17} extremes [5, infinity) unicode {...} - constraint DS = {16} extremes [2, infinity) + constraint DS = {17} extremes [2, infinity) {...} condition - constraint DS = {16} extremes [2, infinity) + constraint DS = {17} extremes [2, infinity) {...} constraint (none) extremes [1, infinity) @@ -6997,23 +7010,23 @@ {...} constraint (none) extremes [1, infinity) - nti 17 constraint (none) extremes [1, infinity) + nti 18 constraint (none) extremes [1, infinity) English: {...} of - constraint DS = {17} extremes [2, infinity) + constraint DS = {18} extremes [2, infinity) {...} for - constraint DS = {17} extremes [2, infinity) + constraint DS = {18} extremes [2, infinity) {...} constraint (none) extremes [1, infinity) - hits 2097/23838 nti 11 constraint (none) extremes [1, infinity) + hits 2097/23838 nti 12 constraint (none) extremes [1, infinity) English: (hits 171/171) (matched: '100') constraint CS = {r0} extremes [1, 1] minus - (hits 0/658) constraint DS = {11} extremes [2, 2] + (hits 0/2126) constraint DS = {12} extremes [2, 2] ( ) - (hits 273/671) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint DS = {11} extremes [4, 4] + (hits 273/850) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint DS = {12} extremes [4, 4] (hits 1564/5543) (matched: 'Represents geographical locations, both indoor and outdoor, which are not necessarily areas in a building. A player in one @@ -7022,90 +7035,90 @@ (hits 11/9911) (matched: 'plus infinity') constraint (none) extremes [1, infinity) - (hits 78/205) (matched: 'false') constraint CS = {31} extremes [1, 1] + (hits 78/827) (matched: 'false') constraint CS = {6} extremes [1, 1] - (hits 0/3682) constraint DS = {7} extremes [2, infinity) + (hits 0/3162) constraint DS = {8} extremes [2, infinity) unicode - (hits 0/2438) constraint DS = {11} extremes [2, infinity) + (hits 0/4633) constraint DS = {12} extremes [2, infinity) - (hits 0/1974) constraint DW = {8, 9, 10} extremes [2, 5] + (hits 0/2167) constraint DW = {9, 10, 11} extremes [2, 5] (hits 0/9822) constraint (none) extremes [1, infinity) internal hits 680/1360 nti 28 constraint (none) extremes [1, 1] - hits 78/410 nti 31 constraint CS = {31} extremes [1, 1] + hits 78/1654 nti 6 constraint CS = {6} extremes [1, 1] English: false - (hits 29/205) (matched: 'false') constraint CS = {31} extremes [1, 1] + (hits 29/827) (matched: 'false') constraint CS = {6} extremes [1, 1] true - (hits 49/176) (matched: 'true') constraint CS = {31} extremes [1, 1] + (hits 49/798) (matched: 'true') constraint CS = {6} extremes [1, 1] internal nti 29 constraint (none) extremes [1, infinity) internal hits 0/19644 nti 30 constraint (none) extremes [1, infinity) - hits 11/19822 nti 29 constraint (none) extremes [1, infinity) + hits 11/19822 nti 30 constraint (none) extremes [1, infinity) English: _pi - (hits 1/179) (matched: 'pi') constraint CS = {29} extremes [1, 1] + (hits 1/123) (matched: 'pi') constraint CS = {30} extremes [1, 1] _e - (hits 1/178) (matched: 'e') constraint CS = {29} extremes [1, 1] + (hits 1/122) (matched: 'e') constraint CS = {30} extremes [1, 1] plus infinity - (hits 4/8) (matched: 'plus infinity') constraint CS = {29} extremes [2, 2] + (hits 4/8) (matched: 'plus infinity') constraint CS = {30} extremes [2, 2] minus infinity - (hits 4/4) (matched: 'minus infinity') constraint CS = {29} extremes [2, 2] + (hits 4/4) (matched: 'minus infinity') constraint CS = {30} extremes [2, 2] (hits 1/9901) (matched: '0.5') constraint (none) extremes [1, infinity) internal hits 1/19802 nti 31 constraint (none) extremes [1, infinity) - hits 0/3948 nti 10 constraint DW = {8, 9, 10} extremes [2, 5] + hits 0/4334 nti 11 constraint DW = {9, 10, 11} extremes [2, 5] English: minus - (hits 0/757) constraint DS = {8, 10} extremes [3, 5] + (hits 0/804) constraint DS = {9, 11} extremes [3, 5] - (hits 0/809) constraint DS = {8} extremes [2, 4] + (hits 0/877) constraint DS = {9} extremes [2, 4] - (hits 0/251) constraint DS = {9} extremes [2, 2] + (hits 0/385) constraint DS = {10} extremes [2, 2] - hits 0/1618 nti 8 constraint DS = {8} extremes [2, 4] + hits 0/1754 nti 9 constraint DS = {9} extremes [2, 4] English: hour/hours - (hits 0/262) constraint DS = {8} extremes [2, 2] + (hits 0/194) constraint DS = {9} extremes [2, 2] minute/minutes - (hits 0/262) constraint DS = {8} extremes [2, 2] + (hits 0/194) constraint DS = {9} extremes [2, 2] hour/hours minute/minutes - (hits 0/347) constraint DS = {8} extremes [4, 4] + (hits 0/390) constraint DS = {9} extremes [4, 4] - hits 0/502 nti 6 constraint DS = {9} extremes [2, 2] + hits 0/770 nti 6 constraint DS = {10} extremes [2, 2] English: - (hits 0/251) constraint DS = {9} extremes [2, 2] + (hits 0/385) constraint DS = {10} extremes [2, 2] - (hits 0/251) constraint DS = {9} extremes [2, 2] + (hits 0/385) constraint DS = {10} extremes [2, 2] - nti 9 constraint CS = {9} extremes [1, 1] + nti 10 constraint CS = {10} extremes [1, 1] English: am - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] pm - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] - internal hits 0/502 nti 7 constraint (none) extremes [1, 1] + internal hits 0/770 nti 7 constraint (none) extremes [1, 1] internal nti 8 constraint (none) extremes [1, 1] - hits 0/3352 nti 18 constraint DS = {18} extremes [2, infinity) + hits 0/3296 nti 19 constraint DS = {19} extremes [2, infinity) English: at - (hits 0/42) constraint DS = {9, 18} extremes [3, 3] + (hits 0/74) constraint DS = {10, 19} extremes [3, 3] at the time when {...} - (hits 0/1560) constraint DS = {18} extremes [5, infinity) + (hits 0/1554) constraint DS = {19} extremes [5, infinity) at the time that {...} - (hits 0/1560) constraint DS = {18} extremes [5, infinity) + (hits 0/1554) constraint DS = {19} extremes [5, infinity) at {...} - (hits 0/1676) constraint DS = {18} extremes [2, infinity) + (hits 0/1648) constraint DS = {19} extremes [2, infinity) nti 9 constraint (none) extremes [1, infinity) English: @@ -7116,17 +7129,17 @@ internal nti 10 constraint (none) extremes [1, infinity) - hits 0/7364 nti 7 constraint DS = {7} extremes [2, infinity) + hits 0/6324 nti 8 constraint DS = {8} extremes [2, infinity) English: { } - (hits 0/15) constraint CS = {7} extremes [2, 2] + constraint CS = {8} extremes [2, 2] { } - (hits 0/2064) constraint DS = {7} extremes [3, infinity) + (hits 0/1948) constraint DS = {8} extremes [3, infinity) - nti 6 constraint (none) extremes [1, infinity) + nti 7 constraint (none) extremes [1, infinity) English: , - constraint DS = {6} extremes [3, infinity) + constraint DS = {7} extremes [3, infinity) constraint (none) extremes [1, infinity) @@ -7164,22 +7177,22 @@ internal hits 0/244 nti 22 constraint (none) extremes [1, infinity) - hits 2370/20902 nti 19 constraint (none) extremes [1, infinity) + hits 2370/20902 nti 20 constraint (none) extremes [1, infinity) English: (hits 1797/10451) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint (none) extremes [1, infinity) nothing - (hits 97/158) (matched: 'nothing') constraint CS = {19} extremes [1, 1] + (hits 97/257) (matched: 'nothing') constraint CS = {20} extremes [1, 1] (hits 449/8557) (matched: 'printing the name of a dark room') constraint (none) extremes [1, infinity) outcome - (hits 0/3313) constraint DS = {19} extremes [2, infinity) + (hits 0/1845) constraint DS = {20} extremes [2, infinity) option - (hits 26/3313) (matched: 'serial comma option') constraint DS = {19} extremes [2, infinity) + (hits 26/1845) (matched: 'serial comma option') constraint DS = {20} extremes [2, infinity) verb - (hits 1/3287) (matched: 'verb are') constraint DS = {19} extremes [2, infinity) + (hits 1/1819) (matched: 'verb are') constraint DS = {20} extremes [2, infinity) response ( ) - (hits 0/779) constraint DS = {19} extremes [5, infinity) + (hits 0/634) constraint DS = {20} extremes [5, infinity) internal hits 449/17114 nti 23 constraint (none) extremes [1, infinity) @@ -7193,12 +7206,12 @@ internal hits 165/18574 nti 28 constraint (none) extremes [1, infinity) - hits 34/1592 nti 29 constraint DS = {19} extremes [2, infinity) + hits 34/1592 nti 29 constraint DS = {20} extremes [2, infinity) English: - (hits 34/191) (matched: 'the property initial appearance') constraint DS = {19} extremes [3, infinity) + (hits 34/135) (matched: 'the property initial appearance') constraint DS = {20} extremes [3, infinity) - (hits 0/190) constraint DS = {19} extremes [2, infinity) + (hits 0/115) constraint DS = {20} extremes [2, infinity) internal hits 796/21416 nti 30 constraint (none) extremes [1, infinity) @@ -7207,23 +7220,23 @@ (hits 651/10933) (matched: 'unmarked for listing') constraint (none) extremes [1, infinity) - hits 1442/27538 nti 21 constraint (none) extremes [1, infinity) + hits 1442/27538 nti 22 constraint (none) extremes [1, infinity) English: not - (hits 0/2793) constraint DS = {21} extremes [3, infinity) + (hits 0/2546) constraint DS = {22} extremes [3, infinity) (hits 0/6944) constraint (none) extremes [2, infinity) (hits 1442/13769) (matched: 'marked for listing other') constraint (none) extremes [1, infinity) - hits 1513/29768 nti 20 constraint (none) extremes [1, infinity) + hits 1513/29768 nti 21 constraint (none) extremes [1, infinity) English: not - (hits 12/2883) (matched: 'not lockable') constraint DS = {20} extremes [2, infinity) + (hits 12/2774) (matched: 'not lockable') constraint DS = {21} extremes [2, infinity) (hits 1430/2252) (matched: 'unmarked for listing') constraint CS = {r3} extremes [1, infinity) not - (hits 0/2227) constraint DS = {20} extremes [3, infinity) + (hits 0/2219) constraint DS = {21} extremes [3, infinity) (hits 71/7271) (matched: 'marked for listing other') constraint (none) extremes [2, infinity) @@ -7263,10 +7276,10 @@ (hits 256/1052) (matched: 'thing ( called the item being printed )') constraint (none) extremes [1, infinity) - hits 1648/40902 nti 22 constraint (none) extremes [1, infinity) + hits 1648/40902 nti 23 constraint (none) extremes [1, infinity) English: ( called ) - (hits 118/1469) (matched long text) constraint DS = {22} extremes [5, infinity) + (hits 118/1652) (matched long text) constraint DS = {23} extremes [5, infinity) (hits 1530/20333) (matched: 'the alfred cralle pool hall') constraint (none) extremes [1, infinity) @@ -7319,10 +7332,10 @@ (hits 0/170) constraint (none) extremes [1, infinity) - hits 102/544 nti 23 constraint (none) extremes [1, infinity) + hits 102/544 nti 24 constraint (none) extremes [1, infinity) English: ( called ) - (hits 0/66) constraint DS = {23} extremes [5, infinity) + (hits 0/66) constraint DS = {24} extremes [5, infinity) (hits 102/272) (matched: 'the dark') constraint (none) extremes [1, infinity) @@ -7372,12 +7385,12 @@ (hits 1829/2297) (matched long text) constraint (none) extremes [1, infinity) - hits 3125/7780 nti 30 constraint (none) extremes [1, infinity) + hits 3125/7780 nti 31 constraint (none) extremes [1, infinity) English: variable/variables - (hits 2/385) (matched: 'text variables') constraint DS = {30} extremes [2, infinity) + (hits 2/350) (matched: 'text variables') constraint DS = {31} extremes [2, infinity) that/which vary/varies - (hits 59/351) (matched: 'action name based rule producing nothing that varies') constraint DS = {30} extremes [3, infinity) + (hits 59/316) (matched: 'action name based rule producing nothing that varies') constraint DS = {31} extremes [3, infinity) (hits 2441/3829) (matched long text) constraint (none) extremes [1, infinity) @@ -7408,12 +7421,12 @@ (hits 1178/1435) (matched long text) constraint (none) extremes [1, infinity) - hits 61/124 nti 29 constraint (none) extremes [1, infinity) + hits 61/124 nti 30 constraint (none) extremes [1, infinity) English: global - (hits 0/2) constraint CS = {29} extremes [1, 1] + constraint CS = {30} extremes [1, 1] global - (hits 0/2) constraint DS = {29} extremes [2, infinity) + constraint DS = {30} extremes [2, infinity) (hits 61/62) (matched: 'action name based rule producing nothing') constraint (none) extremes [1, infinity) @@ -7438,10 +7451,10 @@ internal hits 0/18536 nti 30 constraint (none) extremes [0, 0] - hits 8451/18824 nti 26 constraint (none) extremes [1, infinity) + hits 8451/18824 nti 27 constraint (none) extremes [1, infinity) English: ( ) - (hits 0/1866) constraint DS = {26} extremes [3, infinity) + (hits 0/2168) constraint DS = {27} extremes [3, infinity) (hits 144/9412) (matched: 'the person reaching') constraint (none) extremes [1, infinity) @@ -7463,17 +7476,17 @@ (hits 116/9167) (matched: 'a supporter ( called the chaise )') constraint (none) extremes [1, infinity) - (hits 0/2955) constraint DS = {25} extremes [2, infinity) + (hits 0/1338) constraint DS = {26} extremes [2, infinity) member/members of - (hits 0/1834) constraint DS = {26} extremes [3, infinity) + (hits 0/2098) constraint DS = {27} extremes [3, infinity) member/members of - (hits 0/1834) constraint DS = {26} extremes [3, infinity) + (hits 0/2098) constraint DS = {27} extremes [3, infinity) of - (hits 2/1834) (matched: 'the destination of the player') constraint DS = {26} extremes [3, infinity) + (hits 2/2098) (matched: 'the destination of the player') constraint DS = {27} extremes [3, infinity) (hits 0/4683) constraint (none) extremes [2, infinity) entry of/in/from - (hits 0/1315) constraint DS = {26} extremes [4, infinity) + (hits 0/1420) constraint DS = {27} extremes [4, infinity) (hits 0/9049) constraint (none) extremes [1, infinity) @@ -7481,12 +7494,12 @@ (hits 0/9049) constraint (none) extremes [1, infinity) - hits 4/18428 nti 24 constraint (none) extremes [1, infinity) + hits 4/18428 nti 25 constraint (none) extremes [1, infinity) English: where - (hits 4/2244) (matched long text) constraint DS = {24} extremes [3, infinity) + (hits 4/1336) (matched long text) constraint DS = {25} extremes [3, infinity) where - (hits 0/2240) constraint DS = {24} extremes [3, infinity) + (hits 0/1332) constraint DS = {25} extremes [3, infinity) (hits 0/9210) constraint (none) extremes [1, infinity) @@ -7501,10 +7514,10 @@ (hits 2211/8456) (matched: 'current item from the multiple object list') constraint (none) extremes [1, infinity) - nti 31 constraint (none) extremes [1, infinity) + nti 6 constraint (none) extremes [1, infinity) English: ( ) - constraint DS = {31} extremes [3, infinity) + constraint DS = {6} extremes [3, infinity) constraint (none) extremes [1, infinity) @@ -7521,32 +7534,32 @@ internal hits 2296/19726 nti 9 constraint (none) extremes [1, infinity) - hits 105/18392 nti 6 constraint DS = {6} extremes [3, infinity) + hits 105/18392 nti 7 constraint DS = {7} extremes [3, infinity) English: of {...} - (hits 105/1244) (matched long text) constraint DS = {6} extremes [3, infinity) + (hits 105/1367) (matched long text) constraint DS = {7} extremes [3, infinity) internal hits 493/18392 nti 10 constraint (none) extremes [1, infinity) internal hits 477/18098 nti 11 constraint (none) extremes [1, infinity) - hits 139/5910 nti 25 constraint DS = {25} extremes [2, infinity) + hits 139/2676 nti 26 constraint DS = {26} extremes [2, infinity) English: entry - (hits 135/2955) (matched: 'a final response rule entry') constraint DS = {25} extremes [2, infinity) + (hits 135/1338) (matched: 'a final response rule entry') constraint DS = {26} extremes [2, infinity) in row of - (hits 0/426) constraint DS = {25} extremes [6, infinity) + (hits 0/365) constraint DS = {26} extremes [6, infinity) listed in - (hits 2/1379) (matched: 'a topic listed in source') constraint DS = {25} extremes [4, infinity) + (hits 2/1079) (matched: 'a topic listed in source') constraint DS = {26} extremes [4, infinity) corresponding to of in - (hits 0/198) constraint DS = {25} extremes [8, infinity) + (hits 0/183) constraint DS = {26} extremes [8, infinity) of in - (hits 2/664) (matched long text) constraint DS = {25} extremes [5, infinity) + (hits 2/574) (matched long text) constraint DS = {26} extremes [5, infinity) hits 1074/2238 nti 12 constraint (none) extremes [3, infinity) English: - (hits 0/851) constraint DS = {19} extremes [3, infinity) + (hits 0/732) constraint DS = {19} extremes [3, infinity) (hits 1074/1108) (matched long text) constraint (none) extremes [3, infinity) @@ -7558,39 +7571,39 @@ hits 2149/6658 nti 14 constraint (none) extremes [2, infinity) English: - (hits 0/658) constraint DS = {28} & FS = {9} extremes [4, infinity) + (hits 0/728) constraint DS = {29} & FS = {9} extremes [4, infinity) - (hits 224/1769) (matched long text) constraint DS = {14} & FS = {6} extremes [3, infinity) + (hits 224/1809) (matched long text) constraint DS = {14} & FS = {6} extremes [3, infinity) - (hits 1925/2119) (matched long text) constraint FS = {6} extremes [2, infinity) + (hits 1925/2157) (matched long text) constraint FS = {6} extremes [2, infinity) - nti 28 constraint DS = {28} extremes [3, infinity) + nti 29 constraint DS = {29} extremes [3, infinity) English: to - constraint DS = {28} extremes [3, infinity) + constraint DS = {29} extremes [3, infinity) hits 260/9986 nti 15 constraint (none) extremes [3, infinity) English: - (hits 169/4213) (matched long text) constraint DS = {13} extremes [3, infinity) + (hits 169/3892) (matched long text) constraint DS = {13} extremes [3, infinity) - (hits 91/2214) (matched long text) constraint DS = {30} extremes [4, infinity) + (hits 91/2736) (matched long text) constraint DS = {30} extremes [4, infinity) - hits 448/30986 nti 27 constraint DS = {13} extremes [2, infinity) + hits 448/29290 nti 28 constraint DS = {13} extremes [2, infinity) English: - (hits 447/9291) (matched long text) constraint DS = {13} extremes [2, infinity) + (hits 447/8377) (matched long text) constraint DS = {13} extremes [2, infinity) not - (hits 1/5320) (matched: 'not carried by the person asked') constraint DS = {13, 27} extremes [3, infinity) + (hits 1/4868) (matched: 'not carried by the person asked') constraint DS = {13, 28} extremes [3, infinity) - hits 183/20524 nti 16 constraint DS = {30} extremes [3, infinity) + hits 183/23552 nti 16 constraint DS = {30} extremes [3, infinity) English: - (hits 0/2273) constraint DS = {28, 30} extremes [5, infinity) + (hits 0/2294) constraint DS = {29, 30} extremes [5, infinity) - (hits 32/3677) (matched long text) constraint DS = {14, 30} extremes [4, infinity) + (hits 32/3713) (matched long text) constraint DS = {14, 30} extremes [4, infinity) - (hits 151/5280) (matched: 'which provide the property initial appearance') constraint DS = {30} extremes [3, infinity) + (hits 151/5694) (matched: 'which provide the property initial appearance') constraint DS = {30} extremes [3, infinity) internal hits 791/18334 nti 17 constraint (none) extremes [1, infinity) @@ -7614,10 +7627,10 @@ ^ (hits 552/849) (matched long text) constraint (none) extremes [1, infinity) - hits 2/496 nti 7 constraint (none) extremes [1, infinity) + hits 2/496 nti 8 constraint (none) extremes [1, infinity) English: ( ) - (hits 0/6) constraint DS = {7} extremes [3, infinity) + (hits 0/18) constraint DS = {8} extremes [3, infinity) constraint CS = {r0} extremes [1, 1] @@ -7632,18 +7645,18 @@ (hits 2/248) (matched: 'switched off') constraint (none) extremes [1, infinity) - hits 1325/3170 nti 16 constraint (none) extremes [0, infinity) + hits 1325/3170 nti 17 constraint (none) extremes [0, infinity) English: ( ) - (hits 0/1257) constraint DS = {16} extremes [3, infinity) + (hits 0/1319) constraint DS = {17} extremes [3, infinity) , and - (hits 0/1145) constraint DS = {16} extremes [4, infinity) + (hits 0/1207) constraint DS = {17} extremes [4, infinity) and - (hits 97/1257) (matched long text) constraint DS = {16} extremes [3, infinity) + (hits 97/1319) (matched long text) constraint DS = {17} extremes [3, infinity) , or - (hits 0/1048) constraint DS = {16} extremes [4, infinity) + (hits 0/1110) constraint DS = {17} extremes [4, infinity) or - (hits 31/1160) (matched long text) constraint DS = {16} extremes [3, infinity) + (hits 31/1222) (matched long text) constraint DS = {17} extremes [3, infinity) (hits 0/1457) constraint (none) extremes [1, infinity) @@ -7651,82 +7664,82 @@ internal hits 0/2914 nti 22 constraint (none) extremes [1, infinity) - hits 1197/2914 nti 15 constraint (none) extremes [0, infinity) + hits 1197/2914 nti 16 constraint (none) extremes [0, infinity) English: (hits 1/1457) (matched: 'continuing') constraint (none) extremes [1, infinity) not - (hits 0/474) constraint DS = {15} extremes [2, infinity) + (hits 0/974) constraint DS = {16} extremes [2, infinity) (hits 83/1456) (matched long text) constraint (none) extremes [1, infinity) - (hits 0/1091) constraint DS = {10} extremes [3, infinity) + (hits 0/1095) constraint DS = {11} extremes [3, infinity) - (hits 0/998) constraint DS = {11} extremes [4, infinity) + (hits 0/950) constraint DS = {12} extremes [4, infinity) (hits 28/1373) (matched long text) constraint (none) extremes [1, infinity) - (hits 0/891) constraint DS = {13} extremes [2, infinity) + (hits 0/1104) constraint DS = {14} extremes [2, infinity) (hits 1074/1119) (matched long text) constraint (none) extremes [3, infinity) (hits 11/271) (matched long text) constraint (none) extremes [0, infinity) - hits 83/2912 nti 9 constraint (none) extremes [1, infinity) + hits 83/2912 nti 10 constraint (none) extremes [1, infinity) English: - (hits 0/915) constraint DS = {8, 19} extremes [3, infinity) + (hits 0/781) constraint DS = {9, 19} extremes [3, infinity) (hits 83/1445) (matched long text) constraint (none) extremes [1, infinity) not - (hits 0/1089) constraint DS = {9} extremes [2, infinity) + (hits 0/1079) constraint DS = {10} extremes [2, infinity) - hits 11/542 nti 14 constraint (none) extremes [0, infinity) + hits 11/542 nti 15 constraint (none) extremes [0, infinity) English: ^ (hits 0/11) constraint (none) extremes [0, infinity) (hits 11/11) (matched long text) constraint (none) extremes [1, infinity) not - constraint DS = {14} extremes [2, infinity) + constraint DS = {15} extremes [2, infinity) - hits 22/2394 nti 8 constraint DS = {8, 19} extremes [3, infinity) + hits 22/2126 nti 9 constraint DS = {9, 19} extremes [3, infinity) English: is/are {...} - (hits 22/939) (matched long text) constraint DS = {8, 19} extremes [3, infinity) + (hits 22/817) (matched long text) constraint DS = {9, 19} extremes [3, infinity) internal hits 94/2912 nti 23 constraint (none) extremes [1, infinity) internal hits 1/2914 nti 24 constraint (none) extremes [1, infinity) - hits 1374/2748 nti 17 constraint (none) extremes [1, infinity) + hits 1374/2748 nti 18 constraint (none) extremes [1, infinity) English: ( ) - (hits 0/1030) constraint DS = {17} extremes [3, infinity) + (hits 0/1319) constraint DS = {18} extremes [3, infinity) (hits 1374/1374) (matched long text) constraint (none) extremes [1, infinity) - hits 2627/5254 nti 19 constraint (none) extremes [1, infinity) + hits 2627/5254 nti 20 constraint (none) extremes [1, infinity) English: ( ) - (hits 0/489) constraint DS = {19} extremes [3, infinity) + (hits 0/357) constraint DS = {20} extremes [3, infinity) (hits 239/2627) (matched: 'might not appreciate') constraint (none) extremes [1, infinity) (hits 2388/2388) (matched long text) constraint (none) extremes [1, infinity) - hits 239/5254 nti 18 constraint (none) extremes [1, infinity) + hits 239/5254 nti 19 constraint (none) extremes [1, infinity) English: (hits 0/2581) constraint (none) extremes [1, infinity) verb - (hits 0/811) constraint DS = {18} extremes [2, infinity) + (hits 0/755) constraint DS = {19} extremes [2, infinity) adjective - (hits 0/811) constraint DS = {18} extremes [2, infinity) + (hits 0/755) constraint DS = {19} extremes [2, infinity) (hits 210/2581) (matched: 'do not fit') constraint (none) extremes [1, infinity) verb - (hits 0/513) constraint DS = {18} extremes [3, infinity) + (hits 0/490) constraint DS = {19} extremes [3, infinity) (hits 29/855) (matched: 'might not appreciate') constraint (none) extremes [2, infinity) @@ -7760,21 +7773,21 @@ constraint (none) extremes [1, infinity) - hits 4/292 nti 20 constraint CS = {20} extremes [1, 3] + hits 4/292 nti 21 constraint CS = {21} extremes [1, 3] English: description - (hits 1/2) (matched: 'description') constraint CS = {20} extremes [1, 1] + (hits 1/2) (matched: 'description') constraint CS = {21} extremes [1, 1] specification - (hits 1/1) (matched: 'specification') constraint CS = {20} extremes [1, 1] + (hits 1/1) (matched: 'specification') constraint CS = {21} extremes [1, 1] indefinite appearance text - (hits 1/2) (matched: 'indefinite appearance text') constraint CS = {20} extremes [3, 3] + (hits 1/2) (matched: 'indefinite appearance text') constraint CS = {21} extremes [3, 3] variable initial value - (hits 1/1) (matched: 'variable initial value') constraint CS = {20} extremes [3, 3] + (hits 1/1) (matched: 'variable initial value') constraint CS = {21} extremes [3, 3] - hits 34/540 nti 19 constraint DS = {19} extremes [2, infinity) + hits 34/298 nti 20 constraint DS = {20} extremes [2, infinity) English: property {...} - (hits 34/232) (matched: 'property initial appearance') constraint DS = {19} extremes [2, infinity) + (hits 34/149) (matched: 'property initial appearance') constraint DS = {20} extremes [2, infinity) internal hits 69/430 nti 7 constraint (none) extremes [1, infinity) @@ -7784,17 +7797,17 @@ internal hits 104/392 nti 10 constraint (none) extremes [1, infinity) - hits 0/292 nti 21 constraint DS = {21} extremes [1, infinity) + hits 0/292 nti 22 constraint DS = {22} extremes [1, infinity) English: {***} of {***} - (hits 0/2) constraint DS = {21} extremes [1, infinity) + constraint DS = {22} extremes [1, infinity) internal nti 11 constraint (none) extremes [1, infinity) - nti 22 constraint DS = {22} extremes [4, infinity) + nti 23 constraint DS = {23} extremes [4, infinity) English: the same {...} as - constraint DS = {22} extremes [4, infinity) + constraint DS = {23} extremes [4, infinity) hits 22/44 nti 12 constraint (none) extremes [1, infinity) English: @@ -7805,80 +7818,80 @@ {...} constraint (none) extremes [1, infinity) - nti 23 constraint DS = {23} extremes [2, infinity) + nti 24 constraint DS = {24} extremes [2, infinity) English: {...} than - constraint DS = {23} extremes [2, infinity) + constraint DS = {24} extremes [2, infinity) - hits 0/82 nti 25 constraint DS = {25} extremes [4, infinity) + hits 0/82 nti 26 constraint DS = {26} extremes [4, infinity) English: {...} is/are not {...} - (hits 0/37) constraint DS = {25} extremes [5, infinity) + (hits 0/37) constraint DS = {26} extremes [5, infinity) {} is/are - (hits 0/37) constraint DS = {25} extremes [4, infinity) + (hits 0/38) constraint DS = {26} extremes [4, infinity) {...} is/are - (hits 0/37) constraint DS = {25} extremes [4, infinity) + (hits 0/38) constraint DS = {26} extremes [4, infinity) - nti 24 constraint (none) extremes [1, infinity) + nti 25 constraint (none) extremes [1, infinity) English: {...} or more - constraint DS = {24} extremes [3, infinity) + constraint DS = {25} extremes [3, infinity) {...} or less - constraint DS = {24} extremes [3, infinity) + constraint DS = {25} extremes [3, infinity) {...} constraint (none) extremes [1, infinity) - hits 10/292 nti 26 constraint CS = {26} extremes [1, 3] + hits 10/292 nti 27 constraint CS = {27} extremes [1, 3] English: indefinite article - (hits 1/2) (matched: 'indefinite article') constraint CS = {26} extremes [2, 2] + (hits 1/2) (matched: 'indefinite article') constraint CS = {27} extremes [2, 2] plural-named - (hits 1/6) (matched: 'plural-named') constraint CS = {26} extremes [1, 1] + (hits 1/6) (matched: 'plural-named') constraint CS = {27} extremes [1, 1] proper-named - (hits 1/5) (matched: 'proper-named') constraint CS = {26} extremes [1, 1] + (hits 1/5) (matched: 'proper-named') constraint CS = {27} extremes [1, 1] printed name - (hits 1/1) (matched: 'printed name') constraint CS = {26} extremes [2, 2] + (hits 1/1) (matched: 'printed name') constraint CS = {27} extremes [2, 2] printed plural name - (hits 1/2) (matched: 'printed plural name') constraint CS = {26} extremes [3, 3] + (hits 1/2) (matched: 'printed plural name') constraint CS = {27} extremes [3, 3] publicly-named - (hits 1/4) (matched: 'publicly-named') constraint CS = {26} extremes [1, 1] + (hits 1/4) (matched: 'publicly-named') constraint CS = {27} extremes [1, 1] privately-named - (hits 1/3) (matched: 'privately-named') constraint CS = {26} extremes [1, 1] + (hits 1/3) (matched: 'privately-named') constraint CS = {27} extremes [1, 1] adaptive text viewpoint - (hits 1/1) (matched: 'adaptive text viewpoint') constraint CS = {26} extremes [3, 3] + (hits 1/1) (matched: 'adaptive text viewpoint') constraint CS = {27} extremes [3, 3] neuter - (hits 1/2) (matched: 'neuter') constraint CS = {26} extremes [1, 1] + (hits 1/2) (matched: 'neuter') constraint CS = {27} extremes [1, 1] female - (hits 1/1) (matched: 'female') constraint CS = {26} extremes [1, 1] + (hits 1/1) (matched: 'female') constraint CS = {27} extremes [1, 1] - hits 1191/2382 nti 27 constraint DS = {27} extremes [2, infinity) + hits 1191/2382 nti 28 constraint DS = {28} extremes [2, infinity) English: {...} rule - (hits 1191/1191) (matched long text) constraint DS = {27} extremes [2, infinity) + (hits 1191/1191) (matched long text) constraint DS = {28} extremes [2, infinity) internal hits 123/246 nti 13 constraint (none) extremes [1, infinity) - hits 431/862 nti 28 constraint (none) extremes [1, infinity) + hits 431/862 nti 29 constraint (none) extremes [1, infinity) English: (hits 0/418) constraint (none) extremes [2, infinity) rules/rulebook - (hits 24/176) (matched: 'does the player mean rules') constraint DS = {28} extremes [2, infinity) + (hits 24/167) (matched: 'does the player mean rules') constraint DS = {29} extremes [2, infinity) at {***} - (hits 0/152) constraint DS = {28} extremes [1, infinity) + (hits 0/144) constraint DS = {29} extremes [1, infinity) to {***} - (hits 0/152) constraint DS = {28} extremes [1, infinity) + (hits 0/144) constraint DS = {29} extremes [1, infinity) definition {***} - (hits 0/152) constraint DS = {28} extremes [1, infinity) + (hits 0/144) constraint DS = {29} extremes [1, infinity) {...} (hits 407/407) (matched long text) constraint (none) extremes [1, infinity) - nti 29 constraint DS = {29} extremes [2, infinity) + nti 30 constraint DS = {30} extremes [2, infinity) English: {...} rules - constraint DS = {29} extremes [2, infinity) + constraint DS = {30} extremes [2, infinity) {...} rulebook - constraint DS = {29} extremes [2, infinity) + constraint DS = {30} extremes [2, infinity) internal hits 82/164 nti 14 constraint (none) extremes [1, infinity) @@ -7893,47 +7906,47 @@ (hits 373/373) (matched long text) constraint (none) extremes [1, infinity) - hits 395/790 nti 31 constraint (none) extremes [1, infinity) + hits 395/790 nti 6 constraint (none) extremes [1, infinity) English: rule for/about/on - (hits 13/207) (matched long text) constraint DS = {31} extremes [3, infinity) + (hits 13/356) (matched long text) constraint DS = {6} extremes [3, infinity) rule - (hits 0/199) constraint DS = {31} extremes [2, infinity) + (hits 0/351) constraint DS = {6} extremes [2, infinity) first rule - (hits 0/194) constraint DS = {31} extremes [3, infinity) + (hits 0/343) constraint DS = {6} extremes [3, infinity) first - (hits 3/199) (matched: 'first turn sequence rule') constraint DS = {31} extremes [2, infinity) + (hits 3/351) (matched: 'first turn sequence rule') constraint DS = {6} extremes [2, infinity) last rule - (hits 0/191) constraint DS = {31} extremes [3, infinity) + (hits 0/340) constraint DS = {6} extremes [3, infinity) last - (hits 3/196) (matched: 'last turn sequence rule') constraint DS = {31} extremes [2, infinity) + (hits 3/348) (matched: 'last turn sequence rule') constraint DS = {6} extremes [2, infinity) (hits 376/376) (matched long text) constraint (none) extremes [1, infinity) - hits 395/790 nti 30 constraint (none) extremes [1, infinity) + hits 395/790 nti 31 constraint (none) extremes [1, infinity) English: {when ... begins} - (hits 4/136) (matched long text) constraint DS = {30} extremes [3, infinity) + (hits 4/82) (matched long text) constraint DS = {31} extremes [3, infinity) {when ... ends} - (hits 0/132) constraint DS = {30} extremes [3, infinity) + (hits 0/78) constraint DS = {31} extremes [3, infinity) {...} (hits 391/391) (matched long text) constraint (none) extremes [1, infinity) internal hits 8/1226 nti 17 constraint (none) extremes [1, infinity) - hits 7/14 nti 9 constraint (none) extremes [1, infinity) + hits 7/14 nti 10 constraint (none) extremes [1, infinity) English: outcome/outcomes - (hits 7/7) (matched long text) constraint DS = {9} extremes [2, infinity) + (hits 7/7) (matched long text) constraint DS = {10} extremes [2, infinity) default - constraint DS = {9} extremes [2, infinity) + constraint DS = {10} extremes [2, infinity) {...} constraint (none) extremes [1, infinity) nti 18 constraint (none) extremes [1, infinity) English: - constraint CS = {6} extremes [1, 2] + constraint CS = {7} extremes [1, 2] {...} constraint (none) extremes [1, infinity) @@ -7942,16 +7955,16 @@ {...} (hits 10/27) (matched long text) constraint (none) extremes [1, infinity) - (hits 10/17) (matched long text) constraint DS = {8} extremes [3, infinity) + (hits 10/17) (matched long text) constraint DS = {9} extremes [3, infinity) (hits 7/7) (matched: 'there is insufficient light ( success )') constraint (none) extremes [1, infinity) - hits 20/170 nti 8 constraint DS = {8} extremes [2, infinity) + hits 20/170 nti 9 constraint DS = {9} extremes [2, infinity) English: , _and/or - (hits 0/71) constraint DS = {8} extremes [3, infinity) + (hits 0/71) constraint DS = {9} extremes [3, infinity) _,/and/or - (hits 20/77) (matched long text) constraint DS = {8} extremes [2, infinity) + (hits 20/77) (matched long text) constraint DS = {9} extremes [2, infinity) hits 27/54 nti 20 constraint (none) extremes [1, infinity) English: @@ -7960,131 +7973,118 @@ (hits 17/17) (matched: 'there is sufficient light ( failure )') constraint (none) extremes [1, infinity) - hits 17/34 nti 7 constraint (none) extremes [1, infinity) + hits 17/34 nti 8 constraint (none) extremes [1, infinity) English: {...} ( - the default ) - (hits 0/2) constraint DS = {6, 7} extremes [7, infinity) + (hits 0/2) constraint DS = {7, 8} extremes [7, infinity) {...} ( - default ) - (hits 0/3) constraint DS = {6, 7} extremes [6, infinity) + (hits 0/3) constraint DS = {7, 8} extremes [6, infinity) {...} ( ) - (hits 12/14) (matched: 'there is sufficient light ( failure )') constraint DS = {6, 7} extremes [4, infinity) + (hits 12/14) (matched: 'there is sufficient light ( failure )') constraint DS = {7, 8} extremes [4, infinity) {...} ( {...} ) - (hits 0/2) constraint DS = {7} extremes [4, infinity) + (hits 0/2) constraint DS = {8} extremes [4, infinity) {...} (hits 5/5) (matched: 'it is very likely') constraint (none) extremes [1, infinity) - hits 12/24 nti 6 constraint CS = {6} extremes [1, 2] + hits 12/24 nti 7 constraint CS = {7} extremes [1, 2] English: success - (hits 6/12) (matched: 'success') constraint CS = {6} extremes [1, 1] + (hits 6/12) (matched: 'success') constraint CS = {7} extremes [1, 1] failure - (hits 6/6) (matched: 'failure') constraint CS = {6} extremes [1, 1] + (hits 6/6) (matched: 'failure') constraint CS = {7} extremes [1, 1] no outcome - constraint CS = {6} extremes [2, 2] + constraint CS = {7} extremes [2, 2] - hits 35/70 nti 13 constraint (none) extremes [1, infinity) + hits 35/70 nti 14 constraint (none) extremes [1, infinity) English: ( ) - (hits 32/33) (matched long text) constraint DS = {12, 13} extremes [6, infinity) + (hits 32/33) (matched long text) constraint DS = {13, 14} extremes [6, infinity) -- -- - (hits 1/1) (matched long text) constraint DS = {12, 13} extremes [6, infinity) + (hits 1/1) (matched long text) constraint DS = {13, 14} extremes [6, infinity) (hits 2/2) (matched: 'handling the final question') constraint (none) extremes [1, infinity) - hits 35/70 nti 11 constraint (none) extremes [1, infinity) + hits 35/70 nti 12 constraint (none) extremes [1, infinity) English: ( future action ) - (hits 4/22) (matched long text) constraint DS = {11} extremes [5, infinity) + (hits 4/22) (matched long text) constraint DS = {12} extremes [5, infinity) ( {...} ) - (hits 0/23) constraint DS = {11} extremes [4, infinity) + (hits 0/23) constraint DS = {12} extremes [4, infinity) (hits 31/31) (matched: 'printing a refusal to act in the dark') constraint (none) extremes [1, infinity) - hits 35/70 nti 10 constraint (none) extremes [1, infinity) + hits 35/70 nti 11 constraint (none) extremes [1, infinity) English: {...} of/for something/anything - (hits 14/25) (matched: 'printing the plural name of something') constraint DS = {10} extremes [3, infinity) + (hits 14/25) (matched: 'printing the plural name of something') constraint DS = {11} extremes [3, infinity) {...} something/anything - (hits 5/11) (matched: 'printing a locale paragraph about something') constraint DS = {10} extremes [2, infinity) + (hits 5/11) (matched: 'printing a locale paragraph about something') constraint DS = {11} extremes [2, infinity) {...} (hits 16/16) (matched: 'printing a refusal to act in the dark') constraint (none) extremes [1, infinity) - nti 14 constraint DS = {14} extremes [2, infinity) + nti 15 constraint DS = {15} extremes [2, infinity) English: {...} activity - constraint DS = {14} extremes [2, infinity) + constraint DS = {15} extremes [2, infinity) - nti 15 constraint DS = {15} extremes [2, infinity) + nti 16 constraint DS = {16} extremes [2, infinity) English: before {...} - constraint DS = {15} extremes [2, infinity) + constraint DS = {16} extremes [2, infinity) for {...} - constraint DS = {15} extremes [2, infinity) + constraint DS = {16} extremes [2, infinity) after {...} - constraint DS = {15} extremes [2, infinity) + constraint DS = {16} extremes [2, infinity) internal hits 1/88 nti 21 constraint (none) extremes [1, infinity) - hits 438/876 nti 16 constraint (none) extremes [1, infinity) - English: - {***} . {***} - (hits 0/438) constraint DS = {16} extremes [1, infinity) - , {***} - (hits 0/438) constraint DS = {16} extremes [1, infinity) - {***} , - (hits 0/438) constraint DS = {16} extremes [1, infinity) - {***} , , {***} - (hits 0/438) constraint DS = {16} extremes [2, infinity) - {...} - (hits 438/438) (matched long text) constraint (none) extremes [1, infinity) - hits 432/1426 nti 17 constraint DS = {17} extremes [2, infinity) English: (- {###} - in to only - (hits 16/17) (matched: '(- rtrue; - in to only') constraint DS = {17} extremes [6, 6] + (hits 16/26) (matched: '(- rtrue; - in to only') constraint DS = {17} extremes [6, 6] (- {###} - in to decide if only - (hits 4/8) (matched: '(- rtrue; - in to decide if only') constraint DS = {17} extremes [8, 8] + (hits 4/12) (matched: '(- rtrue; - in to decide if only') constraint DS = {17} extremes [8, 8] (- {###} - in to decide only - (hits 0/3) constraint DS = {17} extremes [7, 7] + (hits 0/7) constraint DS = {17} extremes [7, 7] (- {###} - (hits 412/413) (matched: '(- {-say:val:K} ') constraint DS = {17} extremes [2, 2] + (hits 412/415) (matched: '(- {-say:val:K} ') constraint DS = {17} extremes [2, 2] (- {###} {...} - (hits 0/34) constraint DS = {17} extremes [3, infinity) + (hits 0/66) constraint DS = {17} extremes [3, infinity) hits 1880/3760 nti 18 constraint (none) extremes [1, infinity) English: definition (hits 88/88) (matched: 'definition') constraint CS = {18} extremes [1, 1] this is the {... rule} - (hits 58/1618) (matched long text) constraint DS = {18} extremes [5, infinity) + (hits 58/1642) (matched long text) constraint DS = {18} extremes [5, infinity) this is the rule constraint CS = {18} extremes [4, 4] this is {...} rule - (hits 0/1586) constraint DS = {18} extremes [4, infinity) + (hits 0/1612) constraint DS = {18} extremes [4, infinity) this is {...} rules - (hits 0/1586) constraint DS = {18} extremes [4, infinity) + (hits 0/1612) constraint DS = {18} extremes [4, infinity) - (hits 0/1676) constraint DS = {18} extremes [2, infinity) + (hits 0/1648) constraint DS = {19} extremes [2, infinity) to constraint CS = {18} extremes [1, 1] to {...} ( called {...} ) - (hits 0/1532) constraint DS = {18} extremes [6, infinity) + (hits 0/1548) constraint DS = {18} extremes [6, infinity) {to ...} ( this is the {### function} inverse to {###} ) (hits 32/1346) (matched long text) constraint DS = {18} extremes [12, infinity) {to ...} ( this is the {### function} ) - (hits 8/1416) (matched long text) constraint DS = {18} extremes [9, infinity) + (hits 8/1418) (matched long text) constraint DS = {18} extremes [9, infinity) {to ...} ( this is {...} ) - (hits 0/1470) constraint DS = {18} extremes [7, infinity) + (hits 0/1478) constraint DS = {18} extremes [7, infinity) to {...} - (hits 952/1636) (matched long text) constraint DS = {18} extremes [2, infinity) + (hits 952/1658) (matched long text) constraint DS = {18} extremes [2, infinity) {...} ( this is the {... rule} ) - (hits 562/602) (matched long text) constraint DS = {18} extremes [8, infinity) + (hits 562/606) (matched long text) constraint DS = {18} extremes [8, infinity) {...} ( this is the rule ) - (hits 0/54) constraint DS = {18} extremes [7, infinity) + (hits 0/62) constraint DS = {18} extremes [7, infinity) {...} ( this is {...} rule ) - (hits 0/54) constraint DS = {18} extremes [7, infinity) + (hits 0/62) constraint DS = {18} extremes [7, infinity) {...} ( this is {...} rules ) - (hits 0/54) constraint DS = {18} extremes [7, infinity) + (hits 0/62) constraint DS = {18} extremes [7, infinity) {...} (hits 180/180) (matched long text) constraint (none) extremes [1, infinity) @@ -8101,14 +8101,14 @@ hits 371/742 nti 23 constraint (none) extremes [1, infinity) English: during - (hits 0/326) constraint DS = {23} extremes [3, infinity) + (hits 0/334) constraint DS = {23} extremes [3, infinity) (hits 371/371) (matched long text) constraint (none) extremes [1, infinity) hits 371/742 nti 22 constraint (none) extremes [1, infinity) English: {} {when/while ...} - (hits 23/205) (matched long text) constraint DS = {22} extremes [3, infinity) + (hits 23/108) (matched long text) constraint DS = {22} extremes [3, infinity) {} (hits 348/348) (matched long text) constraint (none) extremes [1, infinity) {...} @@ -8130,9 +8130,9 @@ hits 92/1496 nti 24 constraint DS = {24} extremes [1, infinity) English: of/for {...} - (hits 48/232) (matched long text) constraint DS = {24} extremes [2, infinity) + (hits 48/592) (matched long text) constraint DS = {24} extremes [2, infinity) rule about/for/on {...} - (hits 0/180) constraint DS = {24} extremes [3, infinity) + (hits 0/534) constraint DS = {24} extremes [3, infinity) rule (hits 44/44) (matched: 'rule') constraint CS = {24} extremes [1, 1] @@ -8146,7 +8146,7 @@ hits 3/464 nti 26 constraint DS = {26} extremes [3, infinity) English: {...} when/while {...} - (hits 3/229) (matched long text) constraint DS = {26} extremes [3, infinity) + (hits 3/26) (matched long text) constraint DS = {26} extremes [3, infinity) nti 27 constraint (none) extremes [1, infinity) English: @@ -8204,7 +8204,7 @@ hits 41/82 nti 9 constraint (none) extremes [1, infinity) English: not - (hits 1/21) (matched: 'not opening or closing or locking or unlocking') constraint DS = {9} extremes [2, infinity) + (hits 1/25) (matched: 'not opening or closing or locking or unlocking') constraint DS = {9} extremes [2, infinity) (hits 40/40) (matched: 'dropping or throwing or inserting or putting') constraint (none) extremes [1, infinity) @@ -8213,16 +8213,16 @@ {...} (hits 14/41) (matched: 'throwing or inserting or putting') constraint (none) extremes [1, infinity) - (hits 14/17) (matched: 'dropping or throwing or inserting or putting') constraint DS = {8} extremes [3, infinity) + (hits 14/14) (matched: 'dropping or throwing or inserting or putting') constraint DS = {8} extremes [3, infinity) (hits 13/13) (matched: 'an actor smelling') constraint (none) extremes [1, infinity) - hits 28/76 nti 8 constraint DS = {8} extremes [2, infinity) + hits 28/64 nti 8 constraint DS = {8} extremes [2, infinity) English: , _or (hits 0/20) constraint DS = {8} extremes [3, infinity) _,/or - (hits 28/35) (matched: 'or throwing or inserting or putting') constraint DS = {8} extremes [2, infinity) + (hits 28/32) (matched: 'or throwing or inserting or putting') constraint DS = {8} extremes [2, infinity) hits 41/82 nti 7 constraint (none) extremes [1, infinity) English: @@ -8251,32 +8251,32 @@ hits 517/1034 nti 12 constraint (none) extremes [1, infinity) English: ( deprecated ) - (hits 1/428) (matched long text) constraint DS = {12} extremes [4, infinity) + (hits 1/436) (matched long text) constraint DS = {12} extremes [4, infinity) - (hits 138/485) (matched long text) constraint DS = {10} extremes [2, infinity) + (hits 138/490) (matched long text) constraint DS = {10} extremes [2, infinity) (hits 378/378) (matched long text) constraint (none) extremes [1, infinity) hits 400/800 nti 11 constraint (none) extremes [1, infinity) English: ( arithmetic operation ) - (hits 16/346) (matched long text) constraint DS = {11} extremes [6, infinity) + (hits 16/344) (matched long text) constraint DS = {11} extremes [6, infinity) ( assignment operation ) - (hits 6/339) (matched long text) constraint DS = {11} extremes [5, infinity) + (hits 6/337) (matched long text) constraint DS = {11} extremes [5, infinity) {let ... be given by ...} - (hits 2/324) (matched long text) constraint DS = {11} extremes [6, infinity) + (hits 2/322) (matched long text) constraint DS = {11} extremes [6, infinity) {let ...} - (hits 4/350) (matched long text) constraint DS = {11} extremes [2, infinity) + (hits 4/343) (matched long text) constraint DS = {11} extremes [2, infinity) {...} -- end - (hits 0/343) constraint DS = {11} extremes [3, infinity) + (hits 0/337) constraint DS = {11} extremes [3, infinity) {...} -- end conditional - (hits 3/336) (matched long text) constraint DS = {11} extremes [4, infinity) + (hits 3/333) (matched long text) constraint DS = {11} extremes [4, infinity) {...} -- end loop - (hits 9/333) (matched long text) constraint DS = {11} extremes [4, infinity) + (hits 9/330) (matched long text) constraint DS = {11} extremes [4, infinity) {...} -- in loop - (hits 2/324) (matched: 'break -- in loop') constraint DS = {11} extremes [4, infinity) + (hits 2/321) (matched: 'break -- in loop') constraint DS = {11} extremes [4, infinity) {...} -- in {###} - (hits 0/322) constraint DS = {11} extremes [4, infinity) + (hits 0/319) constraint DS = {11} extremes [4, infinity) {...} (hits 358/358) (matched long text) constraint (none) extremes [1, infinity) @@ -8285,28 +8285,28 @@ ( {......} ) {} ( {......} ) (hits 0/338) constraint DS = {13} extremes [8, infinity) - hits 154/1002 nti 10 constraint DS = {10} extremes [2, infinity) + hits 154/1012 nti 10 constraint DS = {10} extremes [2, infinity) English: -- running on - (hits 16/443) (matched long text) constraint DS = {10} extremes [4, infinity) + (hits 16/447) (matched long text) constraint DS = {10} extremes [4, infinity) {say otherwise/else} - (hits 2/4) (matched: 'say otherwise') constraint CS = {10} extremes [2, 2] + (hits 2/2) (matched: 'say otherwise') constraint CS = {10} extremes [2, 2] {say otherwise/else if/unless ...} - (hits 0/427) constraint DS = {10} extremes [4, infinity) + (hits 0/431) constraint DS = {10} extremes [4, infinity) {say if/unless ...} - (hits 2/443) (matched: 'say if ( c - condition )') constraint DS = {10} extremes [3, infinity) + (hits 2/447) (matched: 'say if ( c - condition )') constraint DS = {10} extremes [3, infinity) {say end if/unless} - (hits 2/2) (matched: 'say end if') constraint CS = {10} extremes [3, 3] + (hits 2/3) (matched: 'say end if') constraint CS = {10} extremes [3, 3] {say ...} -- beginning {###} - (hits 2/406) (matched: 'say one of -- beginning say_one_of') constraint DS = {10} extremes [5, infinity) + (hits 2/408) (matched: 'say one of -- beginning say_one_of') constraint DS = {10} extremes [5, infinity) {say ...} -- continuing {###} - (hits 1/404) (matched: 'say or -- continuing say_one_of') constraint DS = {10} extremes [5, infinity) + (hits 1/406) (matched: 'say or -- continuing say_one_of') constraint DS = {10} extremes [5, infinity) {say ...} -- ending {###} with marker {###} (hits 9/350) (matched long text) constraint DS = {10} extremes [8, infinity) {say ...} -- ending {###} - (hits 1/394) (matched: 'say only -- ending say_first_time') constraint DS = {10} extremes [5, infinity) + (hits 1/396) (matched: 'say only -- ending say_first_time') constraint DS = {10} extremes [5, infinity) {say ...} - (hits 119/466) (matched long text) constraint DS = {10} extremes [2, infinity) + (hits 119/471) (matched long text) constraint DS = {10} extremes [2, infinity) hits 516/1032 nti 14 constraint DS = {14} extremes [2, infinity) English: @@ -8335,13 +8335,13 @@ hits 2231/4462 nti 16 constraint (none) extremes [1, infinity) English: ( ) {***} - (hits 0/1726) constraint DS = {16} extremes [2, infinity) + (hits 0/1758) constraint DS = {16} extremes [2, infinity) ( ) {***} - (hits 579/1699) (matched long text) constraint DS = {16} extremes [3, infinity) + (hits 579/1724) (matched long text) constraint DS = {16} extremes [3, infinity) ( {***} - (hits 0/1156) constraint DS = {16} extremes [1, infinity) + (hits 0/1191) constraint DS = {16} extremes [1, infinity) ) {***} - (hits 0/1156) constraint DS = {16} extremes [1, infinity) + (hits 0/1191) constraint DS = {16} extremes [1, infinity) {###} {***} (hits 1652/1652) (matched long text) constraint (none) extremes [1, infinity) @@ -8452,24 +8452,6 @@ internal hits 102/3322 nti 6 constraint (none) extremes [1, infinity) - nti 20 constraint (none) extremes [1, infinity) - English: - {} ( {...} ) - constraint DS = {20} extremes [5, infinity) - {} ( {...} ) - constraint DS = {20} extremes [4, infinity) - {} - constraint (none) extremes [1, infinity) - - nti 19 constraint (none) extremes [1, infinity) - English: - {...} - {...} - {...} - constraint DS = {19} extremes [5, infinity) - {...} - {...} - constraint DS = {19} extremes [3, infinity) - {...} - constraint (none) extremes [1, infinity) - hits 209/418 nti 7 constraint (none) extremes [1, infinity) English: @@ -8477,10 +8459,10 @@ (hits 195/195) (matched: 'item being printed') constraint (none) extremes [1, infinity) - hits 209/418 nti 21 constraint (none) extremes [1, infinity) + hits 209/418 nti 19 constraint (none) extremes [1, infinity) English: {***} - {***} - constraint DS = {21} extremes [1, infinity) + constraint DS = {19} extremes [1, infinity) (hits 136/209) (matched: 'item being printed') constraint (none) extremes [1, infinity) @@ -8490,15 +8472,15 @@ internal hits 136/418 nti 8 constraint (none) extremes [1, infinity) - nti 22 constraint DS = {22} extremes [2, infinity) + nti 20 constraint DS = {20} extremes [2, infinity) English: end {...} - constraint DS = {22} extremes [2, infinity) + constraint DS = {20} extremes [2, infinity) - hits 1576/3152 nti 23 constraint (none) extremes [1, infinity) + hits 1576/3152 nti 21 constraint (none) extremes [1, infinity) English: phrase options - (hits 17/17) (matched: 'phrase options') constraint CS = {23} extremes [2, 2] + (hits 17/17) (matched: 'phrase options') constraint CS = {21} extremes [2, 2] (hits 0/1559) constraint (none) extremes [1, infinity) @@ -8508,421 +8490,421 @@ internal hits 1559/3118 nti 9 constraint (none) extremes [1, infinity) - hits 44/1880 nti 24 constraint CS = {24} extremes [1, 1] + hits 44/1880 nti 22 constraint CS = {22} extremes [1, 1] English: definition - (hits 44/44) (matched: 'definition') constraint CS = {24} extremes [1, 1] + (hits 44/44) (matched: 'definition') constraint CS = {22} extremes [1, 1] - hits 44/88 nti 27 constraint DS = {27} extremes [3, infinity) + hits 44/88 nti 25 constraint DS = {25} extremes [3, infinity) English: is/are if {...} - (hits 41/41) (matched long text) constraint DS = {27} extremes [5, infinity) + (hits 41/41) (matched long text) constraint DS = {25} extremes [5, infinity) is/are unless {...} - constraint DS = {27} extremes [5, infinity) + constraint DS = {25} extremes [5, infinity) is/are - (hits 3/3) (matched: 'a room is air-conditioned') constraint DS = {27} extremes [3, infinity) + (hits 3/3) (matched: 'a room is air-conditioned') constraint DS = {25} extremes [3, infinity) - hits 44/88 nti 25 constraint (none) extremes [1, infinity) + hits 44/88 nti 23 constraint (none) extremes [1, infinity) English: {...} ( called the {...} ) - (hits 1/1) (matched: 'a thing ( called the item )') constraint DS = {25} extremes [6, infinity) + (hits 1/1) (matched: 'a thing ( called the item )') constraint DS = {23} extremes [6, infinity) {...} ( called {...} ) - constraint DS = {25} extremes [5, infinity) + constraint DS = {23} extremes [5, infinity) {...} (hits 43/43) (matched: 'a list of values') constraint (none) extremes [1, infinity) - hits 44/88 nti 26 constraint (none) extremes [1, infinity) + hits 44/88 nti 24 constraint (none) extremes [1, infinity) English: {...} rather than {...} - (hits 18/18) (matched: 'even rather than odd') constraint DS = {26} extremes [4, infinity) + (hits 18/18) (matched: 'even rather than odd') constraint DS = {24} extremes [4, infinity) {...} (hits 26/26) (matched: 'going on') constraint (none) extremes [1, infinity) - hits 18/86 nti 28 constraint DS = {28} extremes [8, infinity) + hits 18/86 nti 26 constraint DS = {26} extremes [8, infinity) English: i6 routine {} says so ( {...} ) - (hits 10/24) (matched long text) constraint DS = {28} extremes [8, infinity) + (hits 10/24) (matched long text) constraint DS = {26} extremes [8, infinity) i6 routine {} makes it so ( {...} ) - (hits 8/14) (matched long text) constraint DS = {28} extremes [9, infinity) + (hits 8/14) (matched long text) constraint DS = {26} extremes [9, infinity) - hits 1/80 nti 29 constraint DS = {29} extremes [8, infinity) + hits 1/80 nti 27 constraint DS = {27} extremes [8, infinity) English: i6 condition says so ( {...} ) - (hits 1/22) (matched long text) constraint DS = {29} extremes [8, infinity) + (hits 1/24) (matched long text) constraint DS = {27} extremes [8, infinity) - nti 31 constraint DW = {30, 31} extremes [2, infinity) + nti 29 constraint DW = {28, 29} extremes [2, infinity) English: {} - constraint DS = {30} extremes [2, 3] + constraint DS = {28} extremes [2, 3] {} in {} - constraint DS = {30, 31} extremes [4, 5] + constraint DS = {28, 29} extremes [4, 5] when defining - constraint DS = {31} extremes [3, infinity) + constraint DS = {29} extremes [3, infinity) when defining {...} - constraint DS = {31} extremes [3, infinity) + constraint DS = {29} extremes [3, infinity) before the library - constraint CS = {31} extremes [3, 3] + constraint CS = {29} extremes [3, 3] in the preform grammar - constraint CS = {31} extremes [4, 4] + constraint CS = {29} extremes [4, 4] - nti 30 constraint CS = {30} extremes [1, 2] + nti 28 constraint CS = {28} extremes [1, 2] English: before - constraint CS = {30} extremes [1, 1] + constraint CS = {28} extremes [1, 1] instead of - constraint CS = {30} extremes [2, 2] + constraint CS = {28} extremes [2, 2] after - constraint CS = {30} extremes [1, 1] + constraint CS = {28} extremes [1, 1] - hits 5/30 nti 6 constraint CS = {6} extremes [3, 4] + hits 5/30 nti 30 constraint CS = {30} extremes [3, 4] English: it is very likely - (hits 1/2) (matched: 'it is very likely') constraint CS = {6} extremes [4, 4] + (hits 1/2) (matched: 'it is very likely') constraint CS = {30} extremes [4, 4] it is likely - (hits 1/4) (matched: 'it is likely') constraint CS = {6} extremes [3, 3] + (hits 1/4) (matched: 'it is likely') constraint CS = {30} extremes [3, 3] it is possible - (hits 1/3) (matched: 'it is possible') constraint CS = {6} extremes [3, 3] + (hits 1/3) (matched: 'it is possible') constraint CS = {30} extremes [3, 3] it is unlikely - (hits 1/2) (matched: 'it is unlikely') constraint CS = {6} extremes [3, 3] + (hits 1/2) (matched: 'it is unlikely') constraint CS = {30} extremes [3, 3] it is very unlikely - (hits 1/1) (matched: 'it is very unlikely') constraint CS = {6} extremes [4, 4] + (hits 1/1) (matched: 'it is very unlikely') constraint CS = {30} extremes [4, 4] - nti 9 constraint CS = {9} extremes [1, 1] + nti 10 constraint CS = {10} extremes [1, 1] English: headline - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] sentence - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] description - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] dimensions - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] evaluation - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] equation - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] verb - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] adjective - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] participle - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] kind - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] map - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] dash - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] dashlog - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] refinery - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] pattern - constraint CS = {9} extremes [1, 1] + constraint CS = {10} extremes [1, 1] - nti 10 constraint (none) extremes [1, infinity) + nti 8 constraint (none) extremes [1, infinity) English: list {...} - constraint DS = {10} extremes [2, infinity) + constraint DS = {8} extremes [2, infinity) constraint (none) extremes [1, infinity) ~~ - constraint DS = {10} extremes [3, infinity) + constraint DS = {8} extremes [3, infinity) {...} constraint (none) extremes [1, infinity) - nti 9 constraint (none) extremes [1, infinity) + nti 7 constraint (none) extremes [1, infinity) English: is {...} - constraint DS = {9} extremes [3, infinity) + constraint DS = {7} extremes [3, infinity) = - constraint DS = {7, 9} extremes [3, infinity) + constraint DS = {7, 31} extremes [3, infinity) constraint (none) extremes [1, infinity) - constraint CS = {7} extremes [1, 1] + constraint CS = {31} extremes [1, 1] experimental {...} - constraint DS = {9} extremes [2, infinity) + constraint DS = {7} extremes [2, infinity) - nti 7 constraint CS = {7} extremes [1, 1] + nti 31 constraint CS = {31} extremes [1, 1] English: r1 - constraint CS = {7} extremes [1, 1] + constraint CS = {31} extremes [1, 1] r2 - constraint CS = {7} extremes [1, 1] + constraint CS = {31} extremes [1, 1] r3 - constraint CS = {7} extremes [1, 1] + constraint CS = {31} extremes [1, 1] r4 - constraint CS = {7} extremes [1, 1] + constraint CS = {31} extremes [1, 1] r5 - constraint CS = {7} extremes [1, 1] + constraint CS = {31} extremes [1, 1] - hits 4/186 nti 11 constraint CS = {11} extremes [1, 2] + hits 4/186 nti 9 constraint CS = {9} extremes [1, 2] English: i6-varying-global - (hits 1/4) (matched: 'i6-varying-global') constraint CS = {11} extremes [1, 1] + (hits 1/3) (matched: 'i6-varying-global') constraint CS = {9} extremes [1, 1] i6-nothing-constant - (hits 1/3) (matched: 'i6-nothing-constant') constraint CS = {11} extremes [1, 1] + (hits 1/2) (matched: 'i6-nothing-constant') constraint CS = {9} extremes [1, 1] command prompt - (hits 1/1) (matched: 'command prompt') constraint CS = {11} extremes [2, 2] + (hits 1/1) (matched: 'command prompt') constraint CS = {9} extremes [2, 2] parameter-object - (hits 1/2) (matched: 'parameter-object') constraint CS = {11} extremes [1, 1] + (hits 1/1) (matched: 'parameter-object') constraint CS = {9} extremes [1, 1] - hits 0/688 nti 12 constraint DS = {12} extremes [1, 2] + hits 0/688 nti 10 constraint DS = {10} extremes [1, 2] English: story - (hits 0/71) constraint DS = {12} extremes [2, 2] + (hits 0/4) constraint DS = {10} extremes [2, 2] this story - constraint CS = {12} extremes [2, 2] + constraint CS = {10} extremes [2, 2] story - constraint CS = {12} extremes [1, 1] + constraint CS = {10} extremes [1, 1] - nti 13 constraint DS = {13} extremes [2, infinity) + nti 11 constraint DS = {11} extremes [2, infinity) English: episode of - constraint DS = {13} extremes [4, 4] + constraint DS = {11} extremes [4, 4] episode {...} - constraint DS = {13} extremes [2, infinity) + constraint DS = {11} extremes [2, infinity) - hits 7/186 nti 14 constraint CS = {14} extremes [2, 3] + hits 7/186 nti 12 constraint CS = {12} extremes [2, 3] English: story title - (hits 1/10) (matched: 'story title') constraint CS = {14} extremes [2, 2] + (hits 1/9) (matched: 'story title') constraint CS = {12} extremes [2, 2] story author - (hits 1/9) (matched: 'story author') constraint CS = {14} extremes [2, 2] + (hits 1/8) (matched: 'story author') constraint CS = {12} extremes [2, 2] story headline - (hits 1/8) (matched: 'story headline') constraint CS = {14} extremes [2, 2] + (hits 1/7) (matched: 'story headline') constraint CS = {12} extremes [2, 2] story genre - (hits 1/7) (matched: 'story genre') constraint CS = {14} extremes [2, 2] + (hits 1/6) (matched: 'story genre') constraint CS = {12} extremes [2, 2] story description - (hits 1/6) (matched: 'story description') constraint CS = {14} extremes [2, 2] + (hits 1/5) (matched: 'story description') constraint CS = {12} extremes [2, 2] story creation year - (hits 1/1) (matched: 'story creation year') constraint CS = {14} extremes [3, 3] + (hits 1/1) (matched: 'story creation year') constraint CS = {12} extremes [3, 3] release number - (hits 1/5) (matched: 'release number') constraint CS = {14} extremes [2, 2] + (hits 1/4) (matched: 'release number') constraint CS = {12} extremes [2, 2] - nti 17 constraint DW = {15, 16, 17} extremes [1, infinity) + nti 15 constraint DW = {13, 14, 15} extremes [1, infinity) English: - constraint DS = {15, 16} & CW = {15, 16} extremes [2, 3] + constraint DS = {13, 14} & CW = {13, 14} extremes [2, 3] {...} - constraint DS = {15} extremes [2, infinity) + constraint DS = {13} extremes [2, infinity) - constraint CS = {16} extremes [1, 2] + constraint CS = {14} extremes [1, 2] cover art ( ) - constraint DS = {17} extremes [5, 5] + constraint DS = {15} extremes [5, 5] cover art - constraint CS = {17} extremes [2, 2] + constraint CS = {15} extremes [2, 2] existing story file - constraint CS = {17} extremes [3, 3] + constraint CS = {15} extremes [3, 3] existing story file called {} - constraint DS = {17} extremes [5, 5] + constraint DS = {15} extremes [5, 5] file of {} called {} - constraint DS = {17} extremes [5, 5] + constraint DS = {15} extremes [5, 5] file {} in {} - constraint DS = {17} extremes [4, 4] + constraint DS = {15} extremes [4, 4] file {} - constraint DS = {17} extremes [2, 2] + constraint DS = {15} extremes [2, 2] style sheet {} - constraint DS = {17} extremes [3, 3] + constraint DS = {15} extremes [3, 3] javascript {} - constraint DS = {17} extremes [2, 2] + constraint DS = {15} extremes [2, 2] introductory booklet - constraint CS = {17} extremes [2, 2] + constraint CS = {15} extremes [2, 2] introductory postcard - constraint CS = {17} extremes [2, 2] + constraint CS = {15} extremes [2, 2] website - constraint CS = {17} extremes [1, 1] + constraint CS = {15} extremes [1, 1] separate figures - constraint CS = {17} extremes [2, 2] + constraint CS = {15} extremes [2, 2] separate sounds - constraint CS = {17} extremes [2, 2] + constraint CS = {15} extremes [2, 2] {} website - constraint DS = {17} extremes [2, 2] + constraint DS = {15} extremes [2, 2] interpreter - constraint CS = {17} extremes [1, 1] + constraint CS = {15} extremes [1, 1] {} interpreter - constraint DS = {17} extremes [2, 2] + constraint DS = {15} extremes [2, 2] - nti 15 constraint CS = {15} extremes [1, 1] + nti 13 constraint CS = {13} extremes [1, 1] English: private - constraint CS = {15} extremes [1, 1] + constraint CS = {13} extremes [1, 1] public - constraint CS = {15} extremes [1, 1] + constraint CS = {13} extremes [1, 1] - nti 16 constraint CS = {16} extremes [1, 2] + nti 14 constraint CS = {14} extremes [1, 2] English: solution - constraint CS = {16} extremes [1, 1] + constraint CS = {14} extremes [1, 1] source text - constraint CS = {16} extremes [2, 2] + constraint CS = {14} extremes [2, 2] library card - constraint CS = {16} extremes [2, 2] + constraint CS = {14} extremes [2, 2] - hits 12/210 nti 18 constraint CS = {18} extremes [1, 2] + hits 12/210 nti 16 constraint CS = {16} extremes [1, 2] English: room - (hits 2/10) (matched: 'room') constraint CS = {18} extremes [1, 1] + (hits 2/10) (matched: 'room') constraint CS = {16} extremes [1, 1] thing - (hits 2/8) (matched: 'thing') constraint CS = {18} extremes [1, 1] + (hits 2/8) (matched: 'thing') constraint CS = {16} extremes [1, 1] container - (hits 2/6) (matched: 'container') constraint CS = {18} extremes [1, 1] + (hits 2/6) (matched: 'container') constraint CS = {16} extremes [1, 1] supporter - (hits 2/4) (matched: 'supporter') constraint CS = {18} extremes [1, 1] + (hits 2/4) (matched: 'supporter') constraint CS = {16} extremes [1, 1] person - (hits 2/2) (matched: 'person') constraint CS = {18} extremes [1, 1] + (hits 2/2) (matched: 'person') constraint CS = {16} extremes [1, 1] player's holdall - (hits 2/2) (matched: 'player's holdall') constraint CS = {18} extremes [2, 2] + (hits 2/2) (matched: 'player's holdall') constraint CS = {16} extremes [2, 2] - hits 4/292 nti 19 constraint CS = {19} extremes [1, 3] + hits 4/292 nti 17 constraint CS = {17} extremes [1, 3] English: initial appearance - (hits 1/2) (matched: 'initial appearance') constraint CS = {19} extremes [2, 2] + (hits 1/2) (matched: 'initial appearance') constraint CS = {17} extremes [2, 2] wearable - (hits 1/1) (matched: 'wearable') constraint CS = {19} extremes [1, 1] + (hits 1/1) (matched: 'wearable') constraint CS = {17} extremes [1, 1] fixed in place - (hits 1/1) (matched: 'fixed in place') constraint CS = {19} extremes [3, 3] + (hits 1/1) (matched: 'fixed in place') constraint CS = {17} extremes [3, 3] matching key - (hits 1/1) (matched: 'matching key') constraint CS = {19} extremes [2, 2] + (hits 1/1) (matched: 'matching key') constraint CS = {17} extremes [2, 2] - hits 288/61566 nti 20 constraint DS = {20} extremes [1, infinity) + hits 288/61566 nti 18 constraint DS = {18} extremes [1, infinity) English: _something/anything {***} - (hits 207/7791) (matched long text) constraint DS = {20} extremes [1, infinity) + (hits 207/15776) (matched long text) constraint DS = {18} extremes [1, infinity) _somewhere/anywhere {***} - (hits 0/7584) constraint DS = {20} extremes [1, infinity) + (hits 0/15569) constraint DS = {18} extremes [1, infinity) _someone/anyone/somebody/anybody {***} - (hits 57/7584) (matched: 'someone') constraint DS = {20} extremes [1, infinity) + (hits 57/15569) (matched: 'someone') constraint DS = {18} extremes [1, infinity) _everything {***} - (hits 0/7527) constraint DS = {20} extremes [1, infinity) + (hits 0/15512) constraint DS = {18} extremes [1, infinity) _everywhere {***} - (hits 0/7527) constraint DS = {20} extremes [1, infinity) + (hits 0/15512) constraint DS = {18} extremes [1, infinity) _everyone/everybody {***} - (hits 0/7527) constraint DS = {20} extremes [1, infinity) + (hits 0/15512) constraint DS = {18} extremes [1, infinity) _nowhere {***} - (hits 24/7527) (matched: 'nowhere') constraint DS = {20} extremes [1, infinity) + (hits 24/15512) (matched: 'nowhere') constraint DS = {18} extremes [1, infinity) _nobody/no-one {***} - (hits 0/7503) constraint DS = {20} extremes [1, infinity) + (hits 0/15488) constraint DS = {18} extremes [1, infinity) _no _one {***} - (hits 0/7432) constraint DS = {20} extremes [2, infinity) + (hits 0/14448) constraint DS = {18} extremes [2, infinity) - hits 0/2166 nti 21 constraint CS = {21} extremes [1, 1] + hits 0/2166 nti 19 constraint CS = {19} extremes [1, 1] English: nowhere - (hits 0/3) constraint CS = {21} extremes [1, 1] + (hits 0/1) constraint CS = {19} extremes [1, 1] - hits 2/186 nti 22 constraint CS = {22} extremes [1, 3] + hits 2/186 nti 20 constraint CS = {20} extremes [1, 3] English: player - (hits 1/1) (matched: 'player') constraint CS = {22} extremes [1, 1] + (hits 1/1) (matched: 'player') constraint CS = {20} extremes [1, 1] time of day - (hits 1/1) (matched: 'time of day') constraint CS = {22} extremes [3, 3] + (hits 1/1) (matched: 'time of day') constraint CS = {20} extremes [3, 3] - hits 1/334 nti 23 constraint CS = {23} extremes [1, 1] + hits 1/334 nti 21 constraint CS = {21} extremes [1, 1] English: yourself - (hits 1/1) (matched: 'yourself') constraint CS = {23} extremes [1, 1] + (hits 1/1) (matched: 'yourself') constraint CS = {21} extremes [1, 1] - nti 24 constraint CS = {24} extremes [1, 2] + nti 22 constraint CS = {22} extremes [1, 2] English: worn - constraint CS = {24} extremes [1, 1] + constraint CS = {22} extremes [1, 1] carried - constraint CS = {24} extremes [1, 1] + constraint CS = {22} extremes [1, 1] initially carried - constraint CS = {24} extremes [2, 2] + constraint CS = {22} extremes [2, 2] - hits 1/136 nti 25 constraint CS = {25} extremes [1, 1] + hits 1/136 nti 23 constraint CS = {23} extremes [1, 1] English: device - (hits 1/1) (matched: 'device') constraint CS = {25} extremes [1, 1] + (hits 1/1) (matched: 'device') constraint CS = {23} extremes [1, 1] - hits 1/138 nti 26 constraint CS = {26} extremes [1, 1] + hits 1/138 nti 24 constraint CS = {24} extremes [1, 1] English: backdrop - (hits 1/1) (matched: 'backdrop') constraint CS = {26} extremes [1, 1] + (hits 1/1) (matched: 'backdrop') constraint CS = {24} extremes [1, 1] - hits 1/292 nti 27 constraint CS = {27} extremes [1, 1] + hits 1/292 nti 25 constraint CS = {25} extremes [1, 1] English: scenery - (hits 1/1) (matched: 'scenery') constraint CS = {27} extremes [1, 1] + (hits 1/1) (matched: 'scenery') constraint CS = {25} extremes [1, 1] - nti 28 constraint CS = {28} extremes [1, 1] + nti 26 constraint CS = {26} extremes [1, 1] English: everywhere - constraint CS = {28} extremes [1, 1] + constraint CS = {26} extremes [1, 1] - hits 2/190 nti 29 constraint CS = {29} extremes [1, 1] + hits 2/190 nti 27 constraint CS = {27} extremes [1, 1] English: region - (hits 2/3) (matched: 'region') constraint CS = {29} extremes [1, 1] + (hits 2/2) (matched: 'region') constraint CS = {27} extremes [1, 1] - hits 1/292 nti 30 constraint CS = {30} extremes [2, 2] + hits 1/292 nti 28 constraint CS = {28} extremes [2, 2] English: map region - (hits 1/1) (matched: 'map region') constraint CS = {30} extremes [2, 2] + (hits 1/1) (matched: 'map region') constraint CS = {28} extremes [2, 2] - hits 19/2128 nti 31 constraint CS = {31} extremes [1, 1] + hits 19/2128 nti 29 constraint CS = {29} extremes [1, 1] English: direction - (hits 13/21) (matched: 'direction') constraint CS = {31} extremes [1, 1] + (hits 13/45) (matched: 'direction') constraint CS = {29} extremes [1, 1] door - (hits 6/8) (matched: 'door') constraint CS = {31} extremes [1, 1] + (hits 6/32) (matched: 'door') constraint CS = {29} extremes [1, 1] - hits 2/24 nti 6 constraint CS = {6} extremes [1, 1] + hits 2/24 nti 30 constraint CS = {30} extremes [1, 1] English: up - (hits 1/2) (matched: 'up') constraint CS = {6} extremes [1, 1] + (hits 1/2) (matched: 'up') constraint CS = {30} extremes [1, 1] down - (hits 1/1) (matched: 'down') constraint CS = {6} extremes [1, 1] + (hits 1/1) (matched: 'down') constraint CS = {30} extremes [1, 1] - hits 2/292 nti 7 constraint CS = {7} extremes [1, 2] + hits 2/292 nti 31 constraint CS = {31} extremes [1, 2] English: opposite - (hits 1/5) (matched: 'opposite') constraint CS = {7} extremes [1, 1] + (hits 1/1) (matched: 'opposite') constraint CS = {31} extremes [1, 1] other side - (hits 1/1) (matched: 'other side') constraint CS = {7} extremes [2, 2] + (hits 1/1) (matched: 'other side') constraint CS = {31} extremes [2, 2] - hits 0/2166 nti 8 constraint CS = {8} extremes [1, 1] + hits 0/2166 nti 6 constraint CS = {6} extremes [1, 1] English: below - (hits 0/13) constraint CS = {8} extremes [1, 1] + (hits 0/15) constraint CS = {6} extremes [1, 1] above - (hits 0/13) constraint CS = {8} extremes [1, 1] + (hits 0/15) constraint CS = {6} extremes [1, 1] - nti 9 constraint DS = {9} extremes [2, infinity) + nti 7 constraint DS = {7} extremes [2, infinity) English: mapping {...} - constraint DS = {9} extremes [2, infinity) + constraint DS = {7} extremes [2, infinity) - nti 10 constraint DS = {10} extremes [2, infinity) + nti 8 constraint DS = {8} extremes [2, infinity) English: mapped {...} of - constraint DS = {10} extremes [3, infinity) + constraint DS = {8} extremes [3, infinity) mapped {...} - constraint DS = {10} extremes [2, infinity) + constraint DS = {8} extremes [2, infinity) {...} of - constraint DS = {10} extremes [2, infinity) + constraint DS = {8} extremes [2, infinity) {...} from - constraint DS = {10} extremes [2, infinity) + constraint DS = {8} extremes [2, infinity) - hits 2/24 nti 11 constraint CS = {11} extremes [1, 1] + hits 2/24 nti 9 constraint CS = {9} extremes [1, 1] English: inside - (hits 1/2) (matched: 'inside') constraint CS = {11} extremes [1, 1] + (hits 1/2) (matched: 'inside') constraint CS = {9} extremes [1, 1] outside - (hits 1/1) (matched: 'outside') constraint CS = {11} extremes [1, 1] + (hits 1/1) (matched: 'outside') constraint CS = {9} extremes [1, 1] - hits 1/292 nti 12 constraint CS = {12} extremes [1, 1] + hits 1/292 nti 10 constraint CS = {10} extremes [1, 1] English: recurring - (hits 1/4) (matched: 'recurring') constraint CS = {12} extremes [1, 1] + (hits 1/6) (matched: 'recurring') constraint CS = {10} extremes [1, 1] - hits 1/2 nti 13 constraint CS = {13} extremes [2, 2] + hits 1/2 nti 11 constraint CS = {11} extremes [2, 2] English: entire game - (hits 1/1) (matched: 'entire game') constraint CS = {13} extremes [2, 2] + (hits 1/1) (matched: 'entire game') constraint CS = {11} extremes [2, 2] hits 4/8 nti 10 constraint (none) extremes [1, infinity) English: @@ -8936,22 +8918,22 @@ constraint (none) extremes [1, infinity) - hits 0/4 nti 14 constraint (none) extremes [1, infinity) + hits 0/4 nti 12 constraint (none) extremes [1, infinity) English: - (hits 0/1) constraint DS = {14} extremes [5, infinity) + (hits 0/1) constraint DS = {15} extremes [5, infinity) play begins - constraint CS = {14} extremes [2, 2] + constraint CS = {12} extremes [2, 2] play ends - constraint CS = {14} extremes [2, 2] + constraint CS = {12} extremes [2, 2] begins - (hits 0/2) constraint DS = {14} extremes [2, infinity) + (hits 0/2) constraint DS = {12} extremes [2, infinity) ends - (hits 0/2) constraint DS = {14} extremes [2, infinity) + (hits 0/2) constraint DS = {12} extremes [2, infinity) ends - (hits 0/2) constraint DS = {14} extremes [3, infinity) + (hits 0/2) constraint DS = {12} extremes [3, infinity) ends {...} - (hits 0/2) constraint DS = {14} extremes [3, infinity) + (hits 0/2) constraint DS = {12} extremes [3, infinity) (hits 0/2) constraint (none) extremes [1, infinity) @@ -8976,48 +8958,48 @@ constraint (none) extremes [1, infinity) - hits 2/186 nti 15 constraint CS = {15} extremes [1, 2] + hits 2/186 nti 13 constraint CS = {13} extremes [1, 2] English: score - (hits 1/1) (matched: 'score') constraint CS = {15} extremes [1, 1] + (hits 1/2) (matched: 'score') constraint CS = {13} extremes [1, 1] maximum score - (hits 1/2) (matched: 'maximum score') constraint CS = {15} extremes [2, 2] + (hits 1/1) (matched: 'maximum score') constraint CS = {13} extremes [2, 2] - hits 0/14 nti 16 constraint CS = {16} extremes [1, 1] + hits 0/14 nti 14 constraint CS = {14} extremes [1, 1] English: rankings - constraint CS = {16} extremes [1, 1] + constraint CS = {14} extremes [1, 1] - hits 1/180 nti 17 constraint CS = {17} extremes [1, 1] + hits 1/180 nti 15 constraint CS = {15} extremes [1, 1] English: waiting - (hits 1/1) (matched: 'waiting') constraint CS = {17} extremes [1, 1] + (hits 1/1) (matched: 'waiting') constraint CS = {15} extremes [1, 1] - hits 90/1036 nti 17 constraint DS = {18} extremes [1, infinity) + hits 90/1036 nti 17 constraint DS = {16} extremes [1, infinity) English: - (hits 90/310) (matched long text) constraint DS = {18} extremes [2, infinity) + (hits 90/252) (matched long text) constraint DS = {16} extremes [2, infinity) - (hits 0/221) constraint DS = {18} extremes [1, infinity) + (hits 0/163) constraint DS = {16} extremes [1, infinity) - hits 90/842 nti 18 constraint DS = {18} extremes [1, infinity) + hits 90/614 nti 16 constraint DS = {16} extremes [1, infinity) English: action - (hits 90/421) (matched long text) constraint DS = {18} extremes [1, infinity) + (hits 90/307) (matched long text) constraint DS = {16} extremes [1, infinity) action - (hits 0/30) constraint CS = {18} extremes [1, 1] + (hits 0/4) constraint CS = {16} extremes [1, 1] hits 90/182 nti 18 constraint (none) extremes [0, infinity) English: ^ (hits 90/91) (matched long text) constraint (none) extremes [0, infinity) - hits 1/182 nti 19 constraint DS = {19} extremes [1, infinity) + hits 1/182 nti 17 constraint DS = {17} extremes [1, infinity) English: {***} that/which vary/varies - (hits 1/91) (matched: 'name based rule producing nothing that varies') constraint DS = {19} extremes [2, infinity) + (hits 1/91) (matched: 'name based rule producing nothing that varies') constraint DS = {17} extremes [2, infinity) {***} variable - (hits 0/90) constraint DS = {19} extremes [1, infinity) + (hits 0/90) constraint DS = {17} extremes [1, infinity) hits 90/180 nti 19 constraint (none) extremes [1, infinity) English: @@ -9038,52 +9020,52 @@ {...} (hits 19/128) (matched: 'applying to nothing or one thing and') constraint (none) extremes [1, infinity) - (hits 19/109) (matched: 'applying to one visible thing and requiring light') constraint DS = {22} extremes [2, infinity) + (hits 19/109) (matched: 'applying to one visible thing and requiring light') constraint DS = {20} extremes [2, infinity) - (hits 90/90) (matched long text) constraint DS = {22} extremes [1, infinity) + (hits 90/90) (matched long text) constraint DS = {20} extremes [1, infinity) - hits 128/1002 nti 23 constraint DS = {22} extremes [1, infinity) + hits 128/1002 nti 21 constraint DS = {20} extremes [1, infinity) English: , and - (hits 0/274) constraint DS = {22, 23} extremes [3, infinity) + (hits 0/303) constraint DS = {20, 21} extremes [3, infinity) and - (hits 19/309) (matched: 'applying to nothing or one thing and') constraint DS = {22, 23} extremes [2, infinity) + (hits 19/339) (matched: 'applying to nothing or one thing and') constraint DS = {20, 21} extremes [2, infinity) , - (hits 0/290) constraint DS = {22, 23} extremes [2, infinity) + (hits 0/320) constraint DS = {20, 21} extremes [2, infinity) - (hits 109/315) (matched long text) constraint DS = {22} extremes [1, infinity) + (hits 109/363) (matched long text) constraint DS = {20} extremes [1, infinity) - hits 128/738 nti 22 constraint DS = {22} extremes [1, infinity) + hits 128/856 nti 20 constraint DS = {20} extremes [1, infinity) English: out of world - (hits 16/61) (matched: 'out of world') constraint CS = {22} extremes [3, 3] + (hits 16/79) (matched: 'out of world') constraint CS = {20} extremes [3, 3] abbreviable - (hits 2/33) (matched: 'abbreviable') constraint CS = {22} extremes [1, 1] + (hits 2/52) (matched: 'abbreviable') constraint CS = {20} extremes [1, 1] with past participle {...} - (hits 0/156) constraint DS = {22} extremes [4, infinity) + (hits 0/177) constraint DS = {20} extremes [4, infinity) applying to - (hits 104/264) (matched long text) constraint DS = {22} extremes [3, infinity) + (hits 104/292) (matched long text) constraint DS = {20} extremes [3, infinity) requiring light - (hits 6/37) (matched: 'requiring light') constraint CS = {22} extremes [2, 2] + (hits 6/53) (matched: 'requiring light') constraint CS = {20} extremes [2, 2] - hits 104/208 nti 21 constraint (none) extremes [1, infinity) + hits 104/208 nti 19 constraint (none) extremes [1, infinity) English: nothing - (hits 45/45) (matched: 'nothing') constraint CS = {21} extremes [1, 1] + (hits 45/45) (matched: 'nothing') constraint CS = {19} extremes [1, 1] one and one - (hits 11/11) (matched: 'one carried thing and one visible thing') constraint DS = {21} extremes [5, infinity) + (hits 11/11) (matched: 'one carried thing and one visible thing') constraint DS = {19} extremes [5, infinity) one and - (hits 0/2) constraint DS = {21} extremes [4, infinity) + (hits 0/2) constraint DS = {19} extremes [4, infinity) and one - (hits 0/2) constraint DS = {21} extremes [4, infinity) + (hits 0/2) constraint DS = {19} extremes [4, infinity) and - (hits 0/7) constraint DS = {21} extremes [3, infinity) + (hits 0/7) constraint DS = {19} extremes [3, infinity) nothing or one - (hits 2/2) (matched: 'nothing or one thing') constraint DS = {21} extremes [4, infinity) + (hits 2/2) (matched: 'nothing or one thing') constraint DS = {19} extremes [4, infinity) one - (hits 40/46) (matched: 'one visible thing') constraint DS = {21} extremes [2, infinity) + (hits 40/46) (matched: 'one visible thing') constraint DS = {19} extremes [2, infinity) two - (hits 6/6) (matched: 'two things') constraint DS = {21} extremes [2, infinity) + (hits 6/6) (matched: 'two things') constraint DS = {19} extremes [2, infinity) constraint (none) extremes [1, infinity) {...} @@ -9097,25 +9079,25 @@ hits 70/140 nti 23 constraint (none) extremes [1, infinity) English: - (hits 12/12) (matched: 'visible thing') constraint DS = {20} extremes [2, infinity) + (hits 12/12) (matched: 'visible thing') constraint DS = {18} extremes [2, infinity) (hits 58/58) (matched: 'infection color') constraint (none) extremes [1, infinity) - hits 12/24 nti 20 constraint CS = {20} extremes [1, 1] + hits 12/24 nti 18 constraint CS = {18} extremes [1, 1] English: visible - (hits 6/12) (matched: 'visible') constraint CS = {20} extremes [1, 1] + (hits 6/12) (matched: 'visible') constraint CS = {18} extremes [1, 1] touchable - (hits 0/6) constraint CS = {20} extremes [1, 1] + (hits 0/6) constraint CS = {18} extremes [1, 1] carried - (hits 6/6) (matched: 'carried') constraint CS = {20} extremes [1, 1] + (hits 6/6) (matched: 'carried') constraint CS = {18} extremes [1, 1] - hits 13/26 nti 24 constraint (none) extremes [1, infinity) + hits 13/26 nti 22 constraint (none) extremes [1, infinity) English: ( matched as {} ) - (hits 6/6) (matched: 'room gone from ( matched as from )') constraint DS = {24} extremes [6, infinity) + (hits 6/6) (matched: 'room gone from ( matched as from )') constraint DS = {22} extremes [6, infinity) ( {...} ) - constraint DS = {24} extremes [4, infinity) + constraint DS = {22} extremes [4, infinity) (hits 7/7) (matched: 'abbreviated form allowed') constraint (none) extremes [1, infinity) @@ -9126,71 +9108,71 @@ {...} (hits 13/13) (matched: 'room gone from') constraint (none) extremes [1, infinity) - nti 25 constraint DS = {25} extremes [2, infinity) + nti 23 constraint DS = {23} extremes [2, infinity) English: {...} action - constraint DS = {25} extremes [2, infinity) + constraint DS = {23} extremes [2, infinity) - nti 26 constraint DS = {26} extremes [2, infinity) + nti 24 constraint DS = {24} extremes [2, infinity) English: check {...} - constraint DS = {26} extremes [2, infinity) + constraint DS = {24} extremes [2, infinity) carry out {...} - constraint DS = {26} extremes [3, infinity) + constraint DS = {24} extremes [3, infinity) report {...} - constraint DS = {26} extremes [2, infinity) + constraint DS = {24} extremes [2, infinity) internal hits 227/664 nti 25 constraint (none) extremes [1, infinity) - hits 378/10710 nti 27 constraint DS = {27} extremes [2, infinity) + hits 378/10710 nti 25 constraint DS = {25} extremes [2, infinity) English: {...} to - (hits 378/1724) (matched: 'giving it to') constraint DS = {27} extremes [2, infinity) + (hits 378/378) (matched: 'giving it to') constraint DS = {25} extremes [2, infinity) - hits 595/1406 nti 31 constraint (none) extremes [1, infinity) + hits 595/1406 nti 29 constraint (none) extremes [1, infinity) English: doing something/anything other than - (hits 0/98) constraint DS = {31} extremes [5, infinity) + (hits 0/98) constraint DS = {29} extremes [5, infinity) doing something/anything except - (hits 0/134) constraint DS = {31} extremes [4, infinity) + (hits 0/134) constraint DS = {29} extremes [4, infinity) doing something/anything to/with {...} - (hits 0/134) constraint DS = {31} extremes [4, infinity) + (hits 0/134) constraint DS = {29} extremes [4, infinity) doing something/anything - constraint CS = {31} extremes [2, 2] + constraint CS = {29} extremes [2, 2] doing something/anything {...} - (hits 0/281) constraint DS = {31} extremes [3, infinity) + (hits 0/278) constraint DS = {29} extremes [3, infinity) (hits 595/703) (matched long text) constraint (none) extremes [1, infinity) - nti 30 constraint (none) extremes [1, infinity) + nti 28 constraint (none) extremes [1, infinity) English: to/with {} - constraint DS = {30} extremes [3, infinity) + constraint DS = {28} extremes [3, infinity) constraint (none) extremes [1, infinity) - nti 29 constraint (none) extremes [1, infinity) + nti 27 constraint (none) extremes [1, infinity) English: _,/or {...} - constraint DS = {29} extremes [2, infinity) + constraint DS = {27} extremes [2, infinity) {...} to/with {...} - constraint DS = {29} extremes [3, infinity) + constraint DS = {27} extremes [3, infinity) {...} constraint (none) extremes [1, infinity) hits 595/1406 nti 26 constraint (none) extremes [1, infinity) English: - (hits 0/204) constraint DS = {28} extremes [3, infinity) + (hits 0/101) constraint DS = {26} extremes [3, infinity) (hits 595/703) (matched long text) constraint (none) extremes [1, infinity) - hits 0/1676 nti 28 constraint DS = {28} extremes [2, infinity) + hits 0/1038 nti 26 constraint DS = {26} extremes [2, infinity) English: , _or - (hits 0/412) constraint DS = {28} extremes [3, infinity) + (hits 0/261) constraint DS = {26} extremes [3, infinity) _,/or - (hits 0/561) constraint DS = {28} extremes [2, infinity) + (hits 0/321) constraint DS = {26} extremes [2, infinity) hits 595/1406 nti 27 constraint (none) extremes [1, infinity) English: @@ -9205,19 +9187,19 @@ internal hits 595/1406 nti 29 constraint (none) extremes [1, infinity) - hits 7/676 nti 6 constraint CS = {6} extremes [1, 1] + hits 7/676 nti 30 constraint CS = {30} extremes [1, 1] English: is - (hits 7/64) (matched: 'is') constraint CS = {6} extremes [1, 1] + (hits 7/106) (matched: 'is') constraint CS = {30} extremes [1, 1] not - (hits 0/57) constraint CS = {6} extremes [1, 1] + (hits 0/99) constraint CS = {30} extremes [1, 1] - hits 0/662 nti 7 constraint (none) extremes [2, infinity) + hits 0/662 nti 31 constraint (none) extremes [2, infinity) English: _in _the _presence _of {...} - (hits 0/80) constraint DS = {7} extremes [5, infinity) + (hits 0/80) constraint DS = {31} extremes [5, infinity) _in {...} - (hits 0/209) constraint DS = {7} extremes [2, infinity) + (hits 0/180) constraint DS = {31} extremes [2, infinity) {...} (hits 0/331) constraint (none) extremes [2, infinity) @@ -9247,113 +9229,113 @@ (hits 28/1373) (matched long text) constraint (none) extremes [1, infinity) - hits 0/1782 nti 10 constraint DS = {13} extremes [2, infinity) + hits 0/2208 nti 10 constraint DS = {14} extremes [2, infinity) English: - (hits 0/891) constraint DS = {13} extremes [2, infinity) + (hits 0/1104) constraint DS = {14} extremes [2, infinity) - hits 0/2182 nti 11 constraint DS = {10} extremes [3, infinity) + hits 0/2190 nti 11 constraint DS = {11} extremes [3, infinity) English: - (hits 0/1091) constraint DS = {10} extremes [3, infinity) + (hits 0/1095) constraint DS = {11} extremes [3, infinity) - hits 0/1996 nti 12 constraint DS = {11} extremes [4, infinity) + hits 0/1900 nti 12 constraint DS = {12} extremes [4, infinity) English: - (hits 0/998) constraint DS = {11} extremes [4, infinity) + (hits 0/950) constraint DS = {12} extremes [4, infinity) - hits 556/21330 nti 8 constraint (none) extremes [1, infinity) + hits 556/21330 nti 6 constraint (none) extremes [1, infinity) English: asking to try - (hits 0/958) constraint DS = {8} extremes [5, infinity) + (hits 0/971) constraint DS = {6} extremes [5, infinity) trying - (hits 23/1973) (matched long text) constraint DS = {8} extremes [3, infinity) + (hits 23/2237) (matched long text) constraint DS = {6} extremes [3, infinity) an actor trying - (hits 0/1563) constraint DS = {8} extremes [4, infinity) + (hits 0/1642) constraint DS = {6} extremes [4, infinity) an actor - (hits 408/1950) (matched long text) constraint DS = {8} extremes [3, infinity) + (hits 408/2214) (matched long text) constraint DS = {6} extremes [3, infinity) trying - (hits 0/1761) constraint DS = {8} extremes [2, infinity) + (hits 0/2212) constraint DS = {6} extremes [2, infinity) (hits 60/10234) (matched long text) constraint (none) extremes [1, infinity) (hits 65/5425) (matched long text) constraint (none) extremes [2, infinity) - hits 28/2746 nti 12 constraint (none) extremes [1, infinity) + hits 28/2746 nti 13 constraint (none) extremes [1, infinity) English: we are asking to try - (hits 0/230) constraint DS = {12} extremes [7, infinity) + (hits 0/231) constraint DS = {13} extremes [7, infinity) asking to try - (hits 0/594) constraint DS = {12} extremes [5, infinity) + (hits 0/524) constraint DS = {13} extremes [5, infinity) trying - (hits 0/952) constraint DS = {12} extremes [3, infinity) + (hits 0/876) constraint DS = {13} extremes [3, infinity) an actor trying - (hits 0/923) constraint DS = {12} extremes [4, infinity) + (hits 0/861) constraint DS = {13} extremes [4, infinity) an actor - (hits 3/952) (matched: 'an actor smelling') constraint DS = {12} extremes [3, infinity) + (hits 3/876) (matched: 'an actor smelling') constraint DS = {13} extremes [3, infinity) we are trying - (hits 0/923) constraint DS = {12} extremes [4, infinity) + (hits 0/861) constraint DS = {13} extremes [4, infinity) trying - (hits 0/955) constraint DS = {12} extremes [2, infinity) + (hits 0/879) constraint DS = {13} extremes [2, infinity) we are - (hits 0/949) constraint DS = {12} extremes [3, infinity) + (hits 0/873) constraint DS = {13} extremes [3, infinity) (hits 25/1370) (matched long text) constraint (none) extremes [1, infinity) (hits 0/1120) constraint (none) extremes [2, infinity) - hits 0/1782 nti 13 constraint DS = {13} extremes [2, infinity) + hits 0/2208 nti 14 constraint DS = {14} extremes [2, infinity) English: we are not asking to try - (hits 0/135) constraint DS = {13} extremes [8, infinity) + (hits 0/135) constraint DS = {14} extremes [8, infinity) not asking to try - (hits 0/341) constraint DS = {13} extremes [6, infinity) + (hits 0/403) constraint DS = {14} extremes [6, infinity) not trying - (hits 0/866) constraint DS = {13} extremes [4, infinity) + (hits 0/999) constraint DS = {14} extremes [4, infinity) an actor not trying - (hits 0/529) constraint DS = {13} extremes [5, infinity) + (hits 0/622) constraint DS = {14} extremes [5, infinity) an actor not - (hits 0/866) constraint DS = {13} extremes [4, infinity) + (hits 0/999) constraint DS = {14} extremes [4, infinity) we are not trying - (hits 0/529) constraint DS = {13} extremes [5, infinity) + (hits 0/622) constraint DS = {14} extremes [5, infinity) not trying - (hits 0/890) constraint DS = {13} extremes [3, infinity) + (hits 0/1103) constraint DS = {14} extremes [3, infinity) we are not - (hits 0/866) constraint DS = {13} extremes [4, infinity) + (hits 0/999) constraint DS = {14} extremes [4, infinity) not - (hits 0/891) constraint DS = {13} extremes [2, infinity) + (hits 0/1104) constraint DS = {14} extremes [2, infinity) not - (hits 0/890) constraint DS = {13} extremes [3, infinity) + (hits 0/1103) constraint DS = {14} extremes [3, infinity) - hits 0/2182 nti 10 constraint DS = {10} extremes [3, infinity) + hits 0/2190 nti 11 constraint DS = {11} extremes [3, infinity) English: we have asked to try - (hits 0/231) constraint DS = {10} extremes [7, infinity) + (hits 0/231) constraint DS = {11} extremes [7, infinity) has tried - (hits 0/994) constraint DS = {10} extremes [4, infinity) + (hits 0/998) constraint DS = {11} extremes [4, infinity) an actor has tried - (hits 0/619) constraint DS = {10} extremes [5, infinity) + (hits 0/623) constraint DS = {11} extremes [5, infinity) an actor has - (hits 0/994) constraint DS = {10} extremes [4, infinity) + (hits 0/998) constraint DS = {11} extremes [4, infinity) we have tried - (hits 0/994) constraint DS = {10} extremes [4, infinity) + (hits 0/998) constraint DS = {11} extremes [4, infinity) we have - (hits 0/1091) constraint DS = {10} extremes [3, infinity) + (hits 0/1095) constraint DS = {11} extremes [3, infinity) - hits 0/1996 nti 11 constraint DS = {11} extremes [4, infinity) + hits 0/1900 nti 12 constraint DS = {12} extremes [4, infinity) English: we have not asked to try - (hits 0/136) constraint DS = {11} extremes [8, infinity) + (hits 0/136) constraint DS = {12} extremes [8, infinity) has not tried - (hits 0/619) constraint DS = {11} extremes [5, infinity) + (hits 0/602) constraint DS = {12} extremes [5, infinity) an actor has not tried - (hits 0/404) constraint DS = {11} extremes [6, infinity) + (hits 0/402) constraint DS = {12} extremes [6, infinity) an actor has not - (hits 0/619) constraint DS = {11} extremes [5, infinity) + (hits 0/602) constraint DS = {12} extremes [5, infinity) we have not tried - (hits 0/619) constraint DS = {11} extremes [5, infinity) + (hits 0/602) constraint DS = {12} extremes [5, infinity) we have not - (hits 0/998) constraint DS = {11} extremes [4, infinity) + (hits 0/950) constraint DS = {12} extremes [4, infinity) internal hits 94/13090 nti 13 constraint (none) extremes [1, infinity) @@ -9361,81 +9343,81 @@ internal nti 15 constraint (none) extremes [1, infinity) - hits 0/1390 nti 8 constraint CS = {8} extremes [2, 2] + hits 0/1390 nti 6 constraint CS = {6} extremes [2, 2] English: doing it - constraint CS = {8} extremes [2, 2] + constraint CS = {6} extremes [2, 2] - hits 584/1390 nti 9 constraint (none) extremes [1, infinity) + hits 584/1390 nti 7 constraint (none) extremes [1, infinity) English: when/while - (hits 11/166) (matched long text) constraint DS = {9} extremes [3, infinity) + (hits 11/72) (matched long text) constraint DS = {7} extremes [3, infinity) (hits 573/684) (matched long text) constraint (none) extremes [1, infinity) {...} when/while - (hits 0/52) constraint DS = {9} extremes [3, infinity) + (hits 0/34) constraint DS = {7} extremes [3, infinity) {...} when/while {...} - (hits 0/52) constraint DS = {9} extremes [3, infinity) + (hits 0/34) constraint DS = {7} extremes [3, infinity) internal hits 19/38 nti 16 constraint (none) extremes [1, infinity) internal hits 584/1406 nti 17 constraint (none) extremes [1, infinity) - hits 200/406 nti 10 constraint (none) extremes [1, infinity) + hits 200/406 nti 8 constraint (none) extremes [1, infinity) English: something/anything - (hits 79/79) (matched: 'something') constraint CS = {10} extremes [1, 1] + (hits 79/80) (matched: 'something') constraint CS = {8} extremes [1, 1] something/anything else - constraint CS = {10} extremes [2, 2] + constraint CS = {8} extremes [2, 2] (hits 121/124) (matched long text) constraint (none) extremes [1, infinity) - hits 5/10 nti 11 constraint CS = {11} extremes [1, 1] + hits 5/10 nti 9 constraint CS = {9} extremes [1, 1] English: something/anything - (hits 4/5) (matched: 'something') constraint CS = {11} extremes [1, 1] + (hits 4/5) (matched: 'something') constraint CS = {9} extremes [1, 1] it - (hits 1/1) (matched: 'it') constraint CS = {11} extremes [1, 1] + (hits 1/1) (matched: 'it') constraint CS = {9} extremes [1, 1] internal hits 0/4000 nti 18 constraint (none) extremes [1, infinity) - hits 1/180 nti 12 constraint CS = {12} extremes [1, 1] + hits 1/180 nti 10 constraint CS = {10} extremes [1, 1] English: going - (hits 1/20) (matched: 'going') constraint CS = {12} extremes [1, 1] + (hits 1/1) (matched: 'going') constraint CS = {10} extremes [1, 1] - hits 0/16 nti 13 constraint CS = {13} extremes [1, 1] + hits 0/16 nti 11 constraint CS = {11} extremes [1, 1] English: nowhere - constraint CS = {13} extremes [1, 1] + constraint CS = {11} extremes [1, 1] somewhere - constraint CS = {13} extremes [1, 1] + constraint CS = {11} extremes [1, 1] - hits 21/186 nti 14 constraint DS = {14} extremes [1, infinity) + hits 21/186 nti 12 constraint DS = {12} extremes [1, infinity) English: understood - (hits 16/47) (matched: 'command parser error understood') constraint DS = {14} extremes [2, infinity) + (hits 16/53) (matched: 'command parser error understood') constraint DS = {12} extremes [2, infinity) noun - (hits 1/3) (matched: 'noun') constraint CS = {14} extremes [1, 1] + (hits 1/4) (matched: 'noun') constraint CS = {12} extremes [1, 1] location - (hits 1/2) (matched: 'location') constraint CS = {14} extremes [1, 1] + (hits 1/3) (matched: 'location') constraint CS = {12} extremes [1, 1] actor-location - (hits 1/1) (matched: 'actor-location') constraint CS = {14} extremes [1, 1] + (hits 1/2) (matched: 'actor-location') constraint CS = {12} extremes [1, 1] second noun - (hits 1/8) (matched: 'second noun') constraint CS = {14} extremes [2, 2] + (hits 1/8) (matched: 'second noun') constraint CS = {12} extremes [2, 2] person asked - (hits 1/7) (matched: 'person asked') constraint CS = {14} extremes [2, 2] + (hits 1/7) (matched: 'person asked') constraint CS = {12} extremes [2, 2] - hits 208/416 nti 18 constraint (none) extremes [1, infinity) + hits 208/416 nti 16 constraint (none) extremes [1, infinity) English: nothing - constraint CS = {18} extremes [1, 1] + constraint CS = {16} extremes [1, 1] (hits 1/208) (matched: 'the infection color property') constraint (none) extremes [1, infinity) the command/commands - (hits 40/40) (matched long text) constraint DS = {18} extremes [3, infinity) + (hits 40/67) (matched long text) constraint DS = {16} extremes [3, infinity) the verb/verbs {...} - constraint DS = {18} extremes [3, infinity) + (hits 0/27) constraint DS = {16} extremes [3, infinity) (hits 167/167) (matched long text) constraint (none) extremes [1, infinity) @@ -9444,49 +9426,49 @@ {...} (hits 88/383) (matched long text) constraint (none) extremes [1, infinity) - (hits 88/88) (matched long text) constraint DS = {17} extremes [3, infinity) + (hits 88/88) (matched long text) constraint DS = {15} extremes [3, infinity) (hits 207/207) (matched: '"n"') constraint (none) extremes [1, infinity) - hits 176/352 nti 17 constraint DS = {17} extremes [2, infinity) + hits 176/352 nti 15 constraint DS = {15} extremes [2, infinity) English: , _and/or - (hits 0/74) constraint DS = {17} extremes [3, infinity) + (hits 0/74) constraint DS = {15} extremes [3, infinity) _,/and/or - (hits 176/176) (matched long text) constraint DS = {17} extremes [2, infinity) + (hits 176/176) (matched long text) constraint DS = {15} extremes [2, infinity) hits 383/766 nti 20 constraint (none) extremes [1, infinity) English: {...} (hits 383/383) (matched: '"n"') constraint (none) extremes [1, infinity) - hits 32/478 nti 21 constraint (none) extremes [1, infinity) + hits 50/514 nti 21 constraint (none) extremes [1, infinity) English: {...} - (hits 31/239) (matched long text) constraint (none) extremes [1, infinity) + (hits 49/257) (matched long text) constraint (none) extremes [1, infinity) - (hits 0/8) constraint DS = {15, 16} extremes [4, infinity) + (hits 0/25) constraint DS = {13, 14} extremes [4, infinity) - (hits 1/9) (matched: 'the infection color property') constraint DS = {15} extremes [2, infinity) + (hits 1/41) (matched: 'the infection color property') constraint DS = {13} extremes [2, infinity) - hits 31/156 nti 16 constraint DS = {16} extremes [2, infinity) + hits 49/298 nti 14 constraint DS = {14} extremes [2, infinity) English: , _and/or - (hits 0/62) constraint DS = {16} extremes [3, infinity) + (hits 0/98) constraint DS = {14} extremes [3, infinity) _,/and/or - (hits 31/70) (matched long text) constraint DS = {16} extremes [2, infinity) + (hits 49/122) (matched long text) constraint DS = {14} extremes [2, infinity) - hits 1/80 nti 15 constraint DS = {15} extremes [2, infinity) + hits 1/180 nti 13 constraint DS = {13} extremes [2, infinity) English: property - (hits 1/32) (matched: 'the infection color property') constraint DS = {15} extremes [2, infinity) + (hits 1/90) (matched: 'the infection color property') constraint DS = {13} extremes [2, infinity) {...} property - (hits 0/31) constraint DS = {15} extremes [2, infinity) + (hits 0/89) constraint DS = {13} extremes [2, infinity) - hits 167/334 nti 21 constraint (none) extremes [1, infinity) + hits 167/334 nti 19 constraint (none) extremes [1, infinity) English: when/while {...} - (hits 1/26) (matched: 'yourself when the player is not yourself') constraint DS = {21} extremes [3, infinity) + (hits 1/42) (matched: 'yourself when the player is not yourself') constraint DS = {19} extremes [3, infinity) (hits 166/166) (matched: 'giving it to ( with nouns reversed )') constraint (none) extremes [1, infinity) @@ -9495,40 +9477,40 @@ {...} (hits 0/167) constraint (none) extremes [1, infinity) - (hits 0/20) constraint DS = {20} extremes [3, infinity) + (hits 0/47) constraint DS = {18} extremes [3, infinity) (hits 167/167) (matched: 'giving it to ( with nouns reversed )') constraint (none) extremes [1, infinity) - hits 0/152 nti 20 constraint DS = {20} extremes [2, infinity) + hits 0/274 nti 18 constraint DS = {18} extremes [2, infinity) English: , _and/or - (hits 0/36) constraint DS = {20} extremes [3, infinity) + (hits 0/41) constraint DS = {18} extremes [3, infinity) _,/and/or - (hits 0/56) constraint DS = {20} extremes [2, infinity) + (hits 0/84) constraint DS = {18} extremes [2, infinity) hits 167/334 nti 23 constraint (none) extremes [1, infinity) English: (hits 167/167) (matched: 'giving it to ( with nouns reversed )') constraint (none) extremes [1, infinity) - hits 167/334 nti 19 constraint (none) extremes [1, infinity) + hits 167/334 nti 17 constraint (none) extremes [1, infinity) English: {...} (hits 0/167) constraint (none) extremes [1, infinity) a mistake - constraint CS = {19} extremes [2, 2] + constraint CS = {17} extremes [2, 2] a mistake ( ) - (hits 0/3) constraint DS = {19} extremes [5, 5] + (hits 0/3) constraint DS = {17} extremes [5, 5] a mistake {...} - (hits 0/40) constraint DS = {19} extremes [3, infinity) + (hits 0/45) constraint DS = {17} extremes [3, infinity) the plural of - (hits 0/11) constraint DS = {19} extremes [4, infinity) + (hits 0/11) constraint DS = {17} extremes [4, infinity) plural of - (hits 0/40) constraint DS = {19} extremes [3, infinity) + (hits 0/45) constraint DS = {17} extremes [3, infinity) (hits 2/73) (matched: '"[ice cream]"') constraint (none) extremes [1, 1] ( with nouns reversed ) - (hits 6/6) (matched: 'giving it to ( with nouns reversed )') constraint DS = {19} extremes [6, infinity) + (hits 6/6) (matched: 'giving it to ( with nouns reversed )') constraint DS = {17} extremes [6, infinity) (hits 159/159) (matched: 'requesting the story file version') constraint (none) extremes [1, infinity) @@ -9543,30 +9525,30 @@ {...} constraint (none) extremes [1, infinity) - hits 40/80 nti 22 constraint (none) extremes [1, infinity) + hits 40/80 nti 20 constraint (none) extremes [1, infinity) English: {...} when/while {...} - constraint DS = {22} extremes [3, infinity) + constraint DS = {20} extremes [3, infinity) something new - (hits 3/3) (matched: 'something new') constraint CS = {22} extremes [2, 2] + (hits 3/3) (matched: 'something new') constraint CS = {20} extremes [2, 2] (hits 37/37) (matched: 'take') constraint (none) extremes [1, 1] {...} constraint (none) extremes [1, infinity) - hits 1/2 nti 24 constraint (none) extremes [1, infinity) + hits 1/2 nti 22 constraint (none) extremes [1, infinity) English: when/while {...} - constraint DS = {24} extremes [3, infinity) + (hits 0/1) constraint DS = {22} extremes [3, infinity) (hits 1/1) (matched: 'referring to an ice cream cone') constraint (none) extremes [1, infinity) - hits 1/2 nti 23 constraint (none) extremes [1, infinity) + hits 1/2 nti 21 constraint (none) extremes [1, infinity) English: referring to - (hits 1/1) (matched: 'referring to an ice cream cone') constraint DS = {23} extremes [3, infinity) + (hits 1/1) (matched: 'referring to an ice cream cone') constraint DS = {21} extremes [3, infinity) describing - constraint DS = {23} extremes [2, infinity) + constraint DS = {21} extremes [2, infinity) {...} constraint (none) extremes [1, infinity) @@ -9588,39 +9570,39 @@ {...} constraint (none) extremes [1, infinity) - hits 910/1820 nti 25 constraint (none) extremes [1, infinity) + hits 910/1820 nti 23 constraint (none) extremes [1, infinity) English: {...} , {...} - (hits 340/342) (matched long text) constraint DS = {25} extremes [3, infinity) + (hits 340/370) (matched long text) constraint DS = {23} extremes [3, infinity) (hits 400/526) (matched: 'n') constraint (none) extremes [1, 1] {...} (hits 170/170) (matched: 'a locked lockable thing') constraint (none) extremes [1, infinity) - hits 163/326 nti 27 constraint (none) extremes [1, infinity) + hits 163/326 nti 25 constraint (none) extremes [1, infinity) English: (hits 3/163) (matched: 'flavored ice cream') constraint (none) extremes [1, infinity) any things - constraint CS = {27} extremes [2, 2] + constraint CS = {25} extremes [2, 2] any - (hits 2/26) (matched: 'any room') constraint DS = {27} extremes [2, infinity) + (hits 2/28) (matched: 'any room') constraint DS = {25} extremes [2, infinity) anything - (hits 0/92) constraint CS = {27} extremes [1, 1] + (hits 0/92) constraint CS = {25} extremes [1, 1] anybody - (hits 0/92) constraint CS = {27} extremes [1, 1] + (hits 0/92) constraint CS = {25} extremes [1, 1] anyone - (hits 0/92) constraint CS = {27} extremes [1, 1] + (hits 0/92) constraint CS = {25} extremes [1, 1] anywhere - (hits 0/92) constraint CS = {27} extremes [1, 1] + (hits 0/92) constraint CS = {25} extremes [1, 1] something related by reversed - constraint DS = {27} extremes [5, infinity) + constraint DS = {25} extremes [5, infinity) something related by - constraint DS = {27} extremes [4, infinity) + (hits 0/2) constraint DS = {25} extremes [4, infinity) something related by {...} - constraint DS = {27} extremes [4, infinity) + (hits 0/2) constraint DS = {25} extremes [4, infinity) - (hits 138/138) (matched: 'something preferably held') constraint CS = {26} extremes [1, 3] + (hits 138/138) (matched: 'something preferably held') constraint CS = {24} extremes [1, 3] (hits 0/13) constraint (none) extremes [2, infinity) @@ -9630,100 +9612,100 @@ {...} constraint (none) extremes [1, infinity) - hits 138/276 nti 26 constraint CS = {26} extremes [1, 3] + hits 138/276 nti 24 constraint CS = {24} extremes [1, 3] English: something - (hits 88/115) (matched: 'something') constraint CS = {26} extremes [1, 1] + (hits 88/115) (matched: 'something') constraint CS = {24} extremes [1, 1] things - (hits 4/27) (matched: 'things') constraint CS = {26} extremes [1, 1] + (hits 4/27) (matched: 'things') constraint CS = {24} extremes [1, 1] things inside - (hits 4/9) (matched: 'things inside') constraint CS = {26} extremes [2, 2] + (hits 4/9) (matched: 'things inside') constraint CS = {24} extremes [2, 2] things preferably held - (hits 3/14) (matched: 'things preferably held') constraint CS = {26} extremes [3, 3] + (hits 3/14) (matched: 'things preferably held') constraint CS = {24} extremes [3, 3] something preferably held - (hits 11/11) (matched: 'something preferably held') constraint CS = {26} extremes [3, 3] + (hits 11/11) (matched: 'something preferably held') constraint CS = {24} extremes [3, 3] other things - (hits 5/5) (matched: 'other things') constraint CS = {26} extremes [2, 2] + (hits 5/5) (matched: 'other things') constraint CS = {24} extremes [2, 2] someone - (hits 15/23) (matched: 'someone') constraint CS = {26} extremes [1, 1] + (hits 15/23) (matched: 'someone') constraint CS = {24} extremes [1, 1] somebody - (hits 0/8) constraint CS = {26} extremes [1, 1] + (hits 0/8) constraint CS = {24} extremes [1, 1] text - (hits 8/8) (matched: 'text') constraint CS = {26} extremes [1, 1] + (hits 8/8) (matched: 'text') constraint CS = {24} extremes [1, 1] topic - constraint CS = {26} extremes [1, 1] + constraint CS = {24} extremes [1, 1] a topic - constraint CS = {26} extremes [2, 2] + constraint CS = {24} extremes [2, 2] object - constraint CS = {26} extremes [1, 1] + constraint CS = {24} extremes [1, 1] an object - constraint CS = {26} extremes [2, 2] + constraint CS = {24} extremes [2, 2] something held - constraint CS = {26} extremes [2, 2] + constraint CS = {24} extremes [2, 2] things held - constraint CS = {26} extremes [2, 2] + constraint CS = {24} extremes [2, 2] internal hits 3/326 nti 27 constraint (none) extremes [1, infinity) - hits 1/4 nti 28 constraint DS = {28} extremes [2, infinity) + hits 1/4 nti 28 constraint DS = {26} extremes [2, infinity) English: - (hits 1/1) (matched: 'the file of cover art ( The cover art. )') constraint DS = {28} extremes [3, infinity) + (hits 1/1) (matched: 'the file of cover art ( The cover art. )') constraint DS = {26} extremes [3, infinity) - constraint DS = {28} extremes [2, infinity) + constraint DS = {26} extremes [2, infinity) - hits 1/2 nti 28 constraint DS = {28} extremes [2, infinity) + hits 1/2 nti 26 constraint DS = {26} extremes [2, infinity) English: file - (hits 1/1) (matched: 'file of cover art ( The cover art. )') constraint DS = {28} extremes [2, infinity) + (hits 1/1) (matched: 'file of cover art ( The cover art. )') constraint DS = {26} extremes [2, infinity) - hits 2/690 nti 29 constraint DS = {29} extremes [2, infinity) + hits 2/690 nti 27 constraint DS = {27} extremes [2, infinity) English: figure {...} - (hits 2/60) (matched: 'figure of cover') constraint DS = {29} extremes [2, infinity) + (hits 2/218) (matched: 'figure of cover') constraint DS = {27} extremes [2, infinity) - hits 1/2 nti 31 constraint (none) extremes [1, infinity) + hits 1/2 nti 29 constraint (none) extremes [1, infinity) English: ( ) - (hits 1/1) (matched: 'of cover art ( The cover art. )') constraint DS = {31} extremes [4, infinity) + (hits 1/1) (matched: 'of cover art ( The cover art. )') constraint DS = {29} extremes [4, infinity) constraint (none) extremes [1, infinity) - hits 1/2 nti 30 constraint (none) extremes [1, infinity) + hits 1/2 nti 28 constraint (none) extremes [1, infinity) English: of cover art - (hits 1/1) (matched: 'of cover art') constraint CS = {30} extremes [3, 3] + (hits 1/1) (matched: 'of cover art') constraint CS = {28} extremes [3, 3] constraint (none) extremes [1, 1] {...} constraint (none) extremes [1, infinity) - nti 6 constraint CS = {6} extremes [3, 3] + nti 30 constraint CS = {30} extremes [3, 3] English: of cover art - constraint CS = {6} extremes [3, 3] + constraint CS = {30} extremes [3, 3] - hits 0/2 nti 29 constraint DS = {7} extremes [2, infinity) + hits 0/2 nti 29 constraint DS = {31} extremes [2, infinity) English: - constraint DS = {7} extremes [3, infinity) + (hits 0/1) constraint DS = {31} extremes [3, infinity) - constraint DS = {7} extremes [2, infinity) + (hits 0/1) constraint DS = {31} extremes [2, infinity) - nti 7 constraint DS = {7} extremes [2, infinity) + hits 0/2 nti 31 constraint DS = {31} extremes [2, infinity) English: file - constraint DS = {7} extremes [2, infinity) + (hits 0/1) constraint DS = {31} extremes [2, infinity) - hits 1/688 nti 8 constraint DS = {8} extremes [2, infinity) + hits 1/688 nti 6 constraint DS = {6} extremes [2, infinity) English: sound {...} - (hits 1/157) (matched: 'sound name understood') constraint DS = {8} extremes [2, infinity) + (hits 1/151) (matched: 'sound name understood') constraint DS = {6} extremes [2, infinity) - nti 9 constraint (none) extremes [1, infinity) + nti 7 constraint (none) extremes [1, infinity) English: ( ) - constraint DS = {9} extremes [4, infinity) + constraint DS = {7} extremes [4, infinity) constraint (none) extremes [1, infinity) @@ -9734,30 +9716,30 @@ {...} constraint (none) extremes [1, infinity) - hits 0/1070 nti 12 constraint (none) extremes [2, infinity) + hits 0/1070 nti 10 constraint (none) extremes [2, infinity) English: (hits 0/509) constraint (none) extremes [2, infinity) text - (hits 0/191) constraint DS = {11, 12} extremes [3, infinity) + (hits 0/268) constraint DS = {9, 10} extremes [3, infinity) binary - (hits 0/191) constraint DS = {11, 12} extremes [3, infinity) + (hits 0/268) constraint DS = {9, 10} extremes [3, infinity) - (hits 0/385) constraint DS = {11} extremes [2, infinity) + (hits 0/294) constraint DS = {9} extremes [2, infinity) - hits 0/770 nti 11 constraint DS = {11} extremes [2, infinity) + hits 0/588 nti 9 constraint DS = {9} extremes [2, infinity) English: {file ...} ( owned by ) - (hits 0/77) constraint DS = {11} extremes [7, infinity) + (hits 0/75) constraint DS = {9} extremes [7, infinity) {file ...} - (hits 0/385) constraint DS = {11} extremes [2, infinity) + (hits 0/294) constraint DS = {9} extremes [2, infinity) - nti 10 constraint (none) extremes [1, infinity) + nti 8 constraint (none) extremes [1, infinity) English: another project - constraint CS = {10} extremes [2, 2] + constraint CS = {8} extremes [2, 2] project {} - constraint DS = {10} extremes [2, 2] + constraint DS = {8} extremes [2, 2] {...} constraint (none) extremes [1, infinity) @@ -9768,39 +9750,57 @@ {...} constraint (none) extremes [1, infinity) - nti 6 constraint DS = {13} extremes [2, infinity) + nti 6 constraint DS = {11} extremes [2, infinity) English: - constraint DS = {13} extremes [3, infinity) + constraint DS = {11} extremes [3, infinity) - constraint DS = {13} extremes [2, infinity) + constraint DS = {11} extremes [2, infinity) - nti 13 constraint DS = {13} extremes [2, infinity) + nti 11 constraint DS = {11} extremes [2, infinity) English: called - constraint DS = {13} extremes [2, infinity) + constraint DS = {11} extremes [2, infinity) hits 0/688 nti 7 constraint (none) extremes [2, infinity) English: (hits 0/330) constraint (none) extremes [2, infinity) - hits 447/2552 nti 14 constraint DS = {12, 14} extremes [6, infinity) + hits 447/2552 nti 12 constraint DS = {12, 13} extremes [6, infinity) English: {...} ( ) - (hits 424/889) (matched long text) constraint DS = {12, 14} extremes [6, infinity) + (hits 424/890) (matched long text) constraint DS = {12, 13} extremes [6, infinity) {...} -- -- - (hits 23/465) (matched long text) constraint DS = {12, 14} extremes [6, infinity) + (hits 23/466) (matched long text) constraint DS = {12, 13} extremes [6, infinity) - hits 480/1188 nti 12 constraint DS = {12} extremes [3, 3] + hits 480/1188 nti 13 constraint DS = {13} extremes [3, 3] English: documented at {###} - (hits 480/523) (matched: 'documented at act_startvm') constraint DS = {12} extremes [3, 3] + (hits 480/494) (matched: 'documented at act_startvm') constraint DS = {13} extremes [3, 3] - nti 15 constraint DS = {15} extremes [2, infinity) + nti 13 constraint DS = {13} extremes [2, infinity) English: understood - constraint DS = {15} extremes [2, infinity) + constraint DS = {13} extremes [2, infinity) + + nti 15 constraint (none) extremes [1, infinity) + English: + {} ( {...} ) + constraint DS = {15} extremes [5, infinity) + {} ( {...} ) + constraint DS = {15} extremes [4, infinity) + {} + constraint (none) extremes [1, infinity) + + nti 14 constraint (none) extremes [1, infinity) + English: + {...} - {...} - {...} + constraint DS = {14} extremes [5, infinity) + {...} - {...} + constraint DS = {14} extremes [3, infinity) + {...} + constraint (none) extremes [1, infinity) nti 16 constraint (none) extremes [1, 1] English: diff --git a/inform7/Downloads/syntax-diagnostics.txt b/inform7/Downloads/syntax-diagnostics.txt index 4c0a5a669..78854e84d 100644 --- a/inform7/Downloads/syntax-diagnostics.txt +++ b/inform7/Downloads/syntax-diagnostics.txt @@ -455,310 +455,310 @@ ROOT_NT HEADING_NT'part three - phrasebook' {heading 3} {under: H3'part three - phrasebook'} {unit: 0} HEADING_NT'chapter 1 - saying' {heading 4} {under: H4'chapter 1 - saying'} {unit: 0} HEADING_NT'section 1 - saying values' {heading 5} {under: H5'section 1 - saying values'} {unit: 0} - RULE_NT'to say ( val - sayable value of kind k ) ( documented at ph_' {unit: 0} + IMPERATIVE_NT'to say ( val - sayable value of kind k ) ( documented at ph_' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-say:val:K} ' - RULE_NT'to say ( something - number ) in words ( documented at phs_n' {unit: 0} + IMPERATIVE_NT'to say ( something - number ) in words ( documented at phs_n' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (number) say__n=({something}); ' - RULE_NT'to say s ( documented at phs_s )' {unit: 0} + IMPERATIVE_NT'to say s ( documented at phs_s )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- STextSubstitution(); ' - RULE_NT'to showme ( val - value ) ( documented at ph_showme )' {unit: 0} + IMPERATIVE_NT'to showme ( val - value ) ( documented at ph_showme )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-show-me:val} ' HEADING_NT'section 2 - saying names' {heading 5} {under: H5'section 2 - saying names'} {unit: 0} - RULE_NT'to say a ( something - object ) ( documented at phs_a )' {unit: 0} + IMPERATIVE_NT'to say a ( something - object ) ( documented at phs_a )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (a) {something}; ' - RULE_NT'to say an ( something - object ) ( documented at phs_a )' {unit: 0} + IMPERATIVE_NT'to say an ( something - object ) ( documented at phs_a )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (a) {something}; ' - RULE_NT'to say a ( something - object ) ( documented at phs_a )' {unit: 0} + IMPERATIVE_NT'to say a ( something - object ) ( documented at phs_a )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CIndefArt({something}); ' - RULE_NT'to say an ( something - object ) ( documented at phs_a )' {unit: 0} + IMPERATIVE_NT'to say an ( something - object ) ( documented at phs_a )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CIndefArt({something}); ' - RULE_NT'to say the ( something - object ) ( documented at phs_the )' {unit: 0} + IMPERATIVE_NT'to say the ( something - object ) ( documented at phs_the )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (the) {something}; ' - RULE_NT'to say the ( something - object ) ( documented at phs_the )' {unit: 0} + IMPERATIVE_NT'to say the ( something - object ) ( documented at phs_the )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (The) {something}; ' HEADING_NT'section 3 - saying special characters' {heading 5} {under: H5'section 3 - saying special characters'} {unit: 0} - RULE_NT'to say bracket -- running on ( documented at phs_bracket )' {unit: 0} + IMPERATIVE_NT'to say bracket -- running on ( documented at phs_bracket )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print "["; ' - RULE_NT'to say close bracket -- running on ( documented at phs_close' {unit: 0} + IMPERATIVE_NT'to say close bracket -- running on ( documented at phs_close' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print "]"; ' - RULE_NT'to say apostrophe/' -- running on ( documented at phs_apostr' {unit: 0} + IMPERATIVE_NT'to say apostrophe/' -- running on ( documented at phs_apostr' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print "'"; ' - RULE_NT'to say quotation mark -- running on ( documented at phs_quot' {unit: 0} + IMPERATIVE_NT'to say quotation mark -- running on ( documented at phs_quot' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print "~"; ' HEADING_NT'section 4 - saying line and paragraph breaks' {heading 5} {under: H5'section 4 - saying line and paragraph breaks'} {unit: 0} - RULE_NT'to say line break -- running on ( documented at phs_linebrea' {unit: 0} + IMPERATIVE_NT'to say line break -- running on ( documented at phs_linebrea' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- new_line; ' - RULE_NT'to say no line break -- running on ( documented at phs_nolin' {unit: 0} + IMPERATIVE_NT'to say no line break -- running on ( documented at phs_nolin' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'do nothing' INVOCATION_NT'do nothing' {phrase invoked: call} - RULE_NT'to say conditional paragraph break -- running on ( documente' {unit: 0} + IMPERATIVE_NT'to say conditional paragraph break -- running on ( documente' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DivideParagraphPoint(); ' - RULE_NT'to say paragraph break -- running on ( documented at phs_par' {unit: 0} + IMPERATIVE_NT'to say paragraph break -- running on ( documented at phs_par' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DivideParagraphPoint(); new_line; ' - RULE_NT'to say run paragraph on -- running on ( documented at phs_ru' {unit: 0} + IMPERATIVE_NT'to say run paragraph on -- running on ( documented at phs_ru' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RunParagraphOn(); ' - RULE_NT'to decide if a paragraph break is pending ( documented at ph' {unit: 0} + IMPERATIVE_NT'to decide if a paragraph break is pending ( documented at ph' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (say__p) ' HEADING_NT'section 5 - saying if and otherwise' {heading 5} {under: H5'section 5 - saying if and otherwise'} {unit: 0} - RULE_NT'to say if ( c - condition ) ( documented at phs_if )' {unit: 0} + IMPERATIVE_NT'to say if ( c - condition ) ( documented at phs_if )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (~~({c})) jump {-label:Say}; ' - RULE_NT'to say unless ( c - condition ) ( documented at phs_unless )' {unit: 0} + IMPERATIVE_NT'to say unless ( c - condition ) ( documented at phs_unless )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if ({c}) jump {-label:Say}; ' - RULE_NT'to say otherwise/else if ( c - condition ) ( documented at p' {unit: 0} + IMPERATIVE_NT'to say otherwise/else if ( c - condition ) ( documented at p' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- jump {-label:SayX}; .{-label:Say}{-counter-up:Say}; if ' - RULE_NT'to say otherwise/else unless ( c - condition ) ( documented ' {unit: 0} + IMPERATIVE_NT'to say otherwise/else unless ( c - condition ) ( documented ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- jump {-label:SayX}; .{-label:Say}{-counter-up:Say}; if ' - RULE_NT'to say otherwise ( documented at phs_otherwise )' {unit: 0} + IMPERATIVE_NT'to say otherwise ( documented at phs_otherwise )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- jump {-label:SayX}; .{-label:Say}{-counter-up:Say}; ' - RULE_NT'to say else ( documented at phs_otherwise )' {unit: 0} + IMPERATIVE_NT'to say else ( documented at phs_otherwise )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- jump {-label:SayX}; .{-label:Say}{-counter-up:Say}; ' - RULE_NT'to say end if ( documented at phs_endif )' {unit: 0} + IMPERATIVE_NT'to say end if ( documented at phs_endif )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- .{-label:Say}{-counter-up:Say}; .{-label:SayX}{-counter' - RULE_NT'to say end unless ( documented at phs_endunless )' {unit: 0} + IMPERATIVE_NT'to say end unless ( documented at phs_endunless )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- .{-label:Say}{-counter-up:Say}; .{-label:SayX}{-counter' HEADING_NT'section 6 - saying one of' {heading 5} {under: H5'section 6 - saying one of'} {unit: 0} - RULE_NT'to say one of -- beginning say_one_of ( documented at phs_on' {unit: 0} + IMPERATIVE_NT'to say one of -- beginning say_one_of ( documented at phs_on' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-counter-makes-array:say_one_of} {-counter-makes-arra' - RULE_NT'to say or -- continuing say_one_of ( documented at phs_or )' {unit: 0} + IMPERATIVE_NT'to say or -- continuing say_one_of ( documented at phs_or )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- @nop; {-segment-count}: ' - RULE_NT'to say at random -- ending say_one_of with marker i7_soo_ran' {unit: 0} + IMPERATIVE_NT'to say at random -- ending say_one_of with marker i7_soo_ran' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say purely at random -- ending say_one_of with marker i7_' {unit: 0} + IMPERATIVE_NT'to say purely at random -- ending say_one_of with marker i7_' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say then at random -- ending say_one_of with marker i7_so' {unit: 0} + IMPERATIVE_NT'to say then at random -- ending say_one_of with marker i7_so' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say then purely at random -- ending say_one_of with marke' {unit: 0} + IMPERATIVE_NT'to say then purely at random -- ending say_one_of with marke' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say sticky random -- ending say_one_of with marker i7_soo' {unit: 0} + IMPERATIVE_NT'to say sticky random -- ending say_one_of with marker i7_soo' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say as decreasingly likely outcomes -- ending say_one_of ' {unit: 0} + IMPERATIVE_NT'to say as decreasingly likely outcomes -- ending say_one_of ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say in random order -- ending say_one_of with marker i7_s' {unit: 0} + IMPERATIVE_NT'to say in random order -- ending say_one_of with marker i7_s' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say cycling -- ending say_one_of with marker i7_soo_cyc (' {unit: 0} + IMPERATIVE_NT'to say cycling -- ending say_one_of with marker i7_soo_cyc (' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say stopping -- ending say_one_of with marker i7_soo_stop' {unit: 0} + IMPERATIVE_NT'to say stopping -- ending say_one_of with marker i7_soo_stop' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' - RULE_NT'to say first time -- beginning say_first_time ( documented a' {unit: 0} + IMPERATIVE_NT'to say first time -- beginning say_first_time ( documented a' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-counter-makes-array:say_first_time} if ((say__comp ==' - RULE_NT'to say only -- ending say_first_time ( documented at phs_fir' {unit: 0} + IMPERATIVE_NT'to say only -- ending say_first_time ( documented at phs_fir' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-close-brace} ' HEADING_NT'section 7 - saying fonts and visual effects' {heading 5} {under: H5'section 7 - saying fonts and visual effects'} {unit: 0} - RULE_NT'to say bold type -- running on ( documented at phs_bold )' {unit: 0} + IMPERATIVE_NT'to say bold type -- running on ( documented at phs_bold )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- style bold; ' - RULE_NT'to say italic type -- running on ( documented at phs_italic ' {unit: 0} + IMPERATIVE_NT'to say italic type -- running on ( documented at phs_italic ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- style underline; ' - RULE_NT'to say roman type -- running on ( documented at phs_roman )' {unit: 0} + IMPERATIVE_NT'to say roman type -- running on ( documented at phs_roman )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- style roman; ' - RULE_NT'to say fixed letter spacing -- running on ( documented at ph' {unit: 0} + IMPERATIVE_NT'to say fixed letter spacing -- running on ( documented at ph' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- font off; ' - RULE_NT'to say variable letter spacing -- running on ( documented at' {unit: 0} + IMPERATIVE_NT'to say variable letter spacing -- running on ( documented at' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- font on; ' HEADING_NT'section 8 - saying lists of values' {heading 5} {under: H5'section 8 - saying lists of values'} {unit: 0} - RULE_NT'to say ( l - a list of values ) in brace notation ( document' {unit: 0} + IMPERATIVE_NT'to say ( l - a list of values ) in brace notation ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Say({-by-reference:L}, 1); ' - RULE_NT'to say ( l - a list of objects ) with definite articles ( do' {unit: 0} + IMPERATIVE_NT'to say ( l - a list of objects ) with definite articles ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Say({-by-reference:L}, 2); ' - RULE_NT'to say ( l - a list of objects ) with indefinite articles ( ' {unit: 0} + IMPERATIVE_NT'to say ( l - a list of objects ) with indefinite articles ( ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Say({-by-reference:L}, 3); ' HEADING_NT'chapter 2 - conditions and variables' {heading 4} {under: H4'chapter 2 - conditions and variables'} {unit: 0} HEADING_NT'section 1 - conditions' {heading 5} {under: H5'section 1 - conditions'} {unit: 0} - RULE_NT'to now ( cn - condition ) ( documented at ph_now )' {unit: 0} + IMPERATIVE_NT'to now ( cn - condition ) ( documented at ph_now )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {cn} ' - RULE_NT'to decide what truth state is whether or not ( c - condition' {unit: 0} + IMPERATIVE_NT'to decide what truth state is whether or not ( c - condition' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({C}) ' HEADING_NT'section 2 - assigning temporary variables' {heading 5} {under: H5'section 2 - assigning temporary variables'} {unit: 0} - RULE_NT'to let ( t - nonexisting variable ) be ( u - value ) ( assig' {unit: 0} + IMPERATIVE_NT'to let ( t - nonexisting variable ) be ( u - value ) ( assig' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-unprotect:t} {-copy:t:u} ' - RULE_NT'to let ( t - nonexisting variable ) be ( u - name of kind of' {unit: 0} + IMPERATIVE_NT'to let ( t - nonexisting variable ) be ( u - name of kind of' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-unprotect:t} {-initialise:t} ' - RULE_NT'to let ( t - nonexisting variable ) be ( u - description of ' {unit: 0} + IMPERATIVE_NT'to let ( t - nonexisting variable ) be ( u - description of ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-unprotect:t} {-initialise:t} {-now-matches-descr' - RULE_NT'to let ( t - nonexisting variable ) be given by ( q - equati' {unit: 0} + IMPERATIVE_NT'to let ( t - nonexisting variable ) be given by ( q - equati' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-unprotect:t} {-primitive-definition:solve-equation' - RULE_NT'to let ( t - existing variable ) be ( u - value ) ( assignme' {unit: 0} + IMPERATIVE_NT'to let ( t - existing variable ) be ( u - value ) ( assignme' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-copy:t:u} ' - RULE_NT'to let ( t - existing variable ) be given by ( q - equation ' {unit: 0} + IMPERATIVE_NT'to let ( t - existing variable ) be given by ( q - equation ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:solve-equation}; ' HEADING_NT'section 3 - increase and decrease' {heading 5} {under: H5'section 3 - increase and decrease'} {unit: 0} - RULE_NT'to increase ( s - storage ) by ( w - value ) ( assignment op' {unit: 0} + IMPERATIVE_NT'to increase ( s - storage ) by ( w - value ) ( assignment op' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-copy:S:+w}; ' - RULE_NT'to decrease ( s - storage ) by ( w - value ) ( assignment op' {unit: 0} + IMPERATIVE_NT'to decrease ( s - storage ) by ( w - value ) ( assignment op' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-copy:S:-w}; ' - RULE_NT'to increment ( s - storage ) ( documented at ph_increment )' {unit: 0} + IMPERATIVE_NT'to increment ( s - storage ) ( documented at ph_increment )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-copy:S:+}; ' - RULE_NT'to decrement ( s - storage ) ( documented at ph_decrement )' {unit: 0} + IMPERATIVE_NT'to decrement ( s - storage ) ( documented at ph_decrement )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-copy:S:-}; ' HEADING_NT'chapter 2 - arithmetic' {heading 4} {under: H4'chapter 2 - arithmetic'} {unit: 0} HEADING_NT'section 1 - arithmetic operations' {heading 5} {under: H5'section 1 - arithmetic operations'} {unit: 0} - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is remainder after dividing' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is remainder after dividing' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is ( x - arithmetic value )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X:Y}) ' - RULE_NT'to decide which arithmetic value is the square root of ( x -' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is the square root of ( x -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X}) ' - RULE_NT'to decide which arithmetic value is the cube root of ( x - a' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is the cube root of ( x - a' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-arithmetic-operation:X}) ' - RULE_NT'to decide which arithmetic value is total ( p - arithmetic v' {unit: 0} + IMPERATIVE_NT'to decide which arithmetic value is total ( p - arithmetic v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:total-of} ' HEADING_NT'section 2 - saying real numbers ( not for z-machine )' {heading 5} {under: H5'section 2 - saying real numbers ( not for z-machine )'} {unit: 0} - RULE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} + IMPERATIVE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- Float({R}, {N}); ' - RULE_NT'to say ( r - a real number ) in decimal notation ( documente' {unit: 0} + IMPERATIVE_NT'to say ( r - a real number ) in decimal notation ( documente' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FloatDec({R}); ' - RULE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} + IMPERATIVE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FloatDec({R}, {N}); ' - RULE_NT'to say ( r - a real number ) in scientific notation ( docume' {unit: 0} + IMPERATIVE_NT'to say ( r - a real number ) in scientific notation ( docume' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FloatExp({R}); ' - RULE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} + IMPERATIVE_NT'to say ( r - a real number ) to ( n - number ) decimal place' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FloatExp({R}, {N}); ' HEADING_NT'section 3 - real arithmetic ( not for z-machine )' {heading 5} {under: H5'section 3 - real arithmetic ( not for z-machine )'} {unit: 0} - RULE_NT'to decide which real number is the reciprocal of ( r - a rea' {unit: 0} + IMPERATIVE_NT'to decide which real number is the reciprocal of ( r - a rea' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Reciprocal({R}) ' - RULE_NT'to decide which real number is the absolute value of ( r - a' {unit: 0} + IMPERATIVE_NT'to decide which real number is the absolute value of ( r - a' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Abs({R}) ' - RULE_NT'to decide which real number is the real square root of ( r -' {unit: 0} + IMPERATIVE_NT'to decide which real number is the real square root of ( r -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Root({R}) ' - RULE_NT'to decide which real number is the real square of ( r - a re' {unit: 0} + IMPERATIVE_NT'to decide which real number is the real square of ( r - a re' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let x be given by x = r^2 where x is a real number' INVOCATION_NT'let x be given by x = r^2 where x is a real number' {phrase invoked: call} @@ -770,61 +770,61 @@ ROOT_NT INVOCATION_NT'decide on x' {phrase invoked: call} RVALUE_CONTEXT_NT'x' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} LOCAL_VARIABLE_NT'x' {local: LV"x"-real number real number} - RULE_NT'to decide which real number is the ceiling of ( r - a real n' {unit: 0} + IMPERATIVE_NT'to decide which real number is the ceiling of ( r - a real n' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Ceiling({R}) ' - RULE_NT'to decide which real number is the floor of ( r - a real num' {unit: 0} + IMPERATIVE_NT'to decide which real number is the floor of ( r - a real num' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Floor({R}) ' - RULE_NT'to decide which number is ( r - a real number ) to the neare' {unit: 0} + IMPERATIVE_NT'to decide which number is ( r - a real number ) to the neare' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_to_NUMBER_TY({R}) ' HEADING_NT'section 4 - exponential functions ( not for z-machine )' {heading 5} {under: H5'section 4 - exponential functions ( not for z-machine )'} {unit: 0} - RULE_NT'to decide which real number is the natural/-- logarithm of (' {unit: 0} + IMPERATIVE_NT'to decide which real number is the natural/-- logarithm of (' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Log({R}) ' - RULE_NT'to decide which real number is the logarithm to base ( n - a' {unit: 0} + IMPERATIVE_NT'to decide which real number is the logarithm to base ( n - a' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_BLog({R}, {N}) ' - RULE_NT'to decide which real number is the exponential of ( r - a re' {unit: 0} + IMPERATIVE_NT'to decide which real number is the exponential of ( r - a re' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Exp({R}) ' - RULE_NT'to decide which real number is ( r - a real number ) to the ' {unit: 0} + IMPERATIVE_NT'to decide which real number is ( r - a real number ) to the ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Pow({R}, {P}) ' HEADING_NT'section 5 - trigonometric functions ( not for z-machine )' {heading 5} {under: H5'section 5 - trigonometric functions ( not for z-machine )'} {unit: 0} - RULE_NT'to decide which real number is ( r - a real number ) degrees' {unit: 0} + IMPERATIVE_NT'to decide which real number is ( r - a real number ) degrees' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Times({R}, $+0.0174532925) ' - RULE_NT'to decide which real number is the sine of ( r - a real numb' {unit: 0} + IMPERATIVE_NT'to decide which real number is the sine of ( r - a real numb' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Sin({R}) ' - RULE_NT'to decide which real number is the cosine of ( r - a real nu' {unit: 0} + IMPERATIVE_NT'to decide which real number is the cosine of ( r - a real nu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Cos({R}) ' - RULE_NT'to decide which real number is the tangent of ( r - a real n' {unit: 0} + IMPERATIVE_NT'to decide which real number is the tangent of ( r - a real n' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Tan({R}) ' - RULE_NT'to decide which real number is the arcsine of ( r - a real n' {unit: 0} + IMPERATIVE_NT'to decide which real number is the arcsine of ( r - a real n' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Arcsin({R}) ' - RULE_NT'to decide which real number is the arccosine of ( r - a real' {unit: 0} + IMPERATIVE_NT'to decide which real number is the arccosine of ( r - a real' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Arccos({R}) ' - RULE_NT'to decide which real number is the arctangent of ( r - a rea' {unit: 0} + IMPERATIVE_NT'to decide which real number is the arctangent of ( r - a rea' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Arctan({R}) ' HEADING_NT'section 6 - trigonometric functions ( not for z-machine )' {heading 5} {under: H5'section 6 - trigonometric functions ( not for z-machine )'} {unit: 0} - RULE_NT'to decide which real number is the hyperbolic sine of ( r - ' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic sine of ( r - ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Sinh({R}) ' - RULE_NT'to decide which real number is the hyperbolic cosine of ( r ' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic cosine of ( r ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Cosh({R}) ' - RULE_NT'to decide which real number is the hyperbolic tangent of ( r' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic tangent of ( r' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- REAL_NUMBER_TY_Tanh({R}) ' - RULE_NT'to decide which real number is the hyperbolic arcsine of ( r' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic arcsine of ( r' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let x be given by x = log ( r + root ( r^2 + 1 ) ) where x i' INVOCATION_NT'let x be given by x = log ( r + root ( r^2 + 1 ) ) where x i' {phrase invoked: call} @@ -836,7 +836,7 @@ ROOT_NT INVOCATION_NT'decide on x' {phrase invoked: call} RVALUE_CONTEXT_NT'x' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} LOCAL_VARIABLE_NT'x' {local: LV"x"-real number real number} - RULE_NT'to decide which real number is the hyperbolic arccosine of (' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic arccosine of (' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let x be given by x = log ( r + root ( r^2 - 1 ) ) where x i' INVOCATION_NT'let x be given by x = log ( r + root ( r^2 - 1 ) ) where x i' {phrase invoked: call} @@ -848,7 +848,7 @@ ROOT_NT INVOCATION_NT'decide on x' {phrase invoked: call} RVALUE_CONTEXT_NT'x' {token check to do: } {token to be parsed against: TEST_VALUE_NT'value'} {required: value} LOCAL_VARIABLE_NT'x' {local: LV"x"-real number real number} - RULE_NT'to decide which real number is the hyperbolic arctangent of ' {unit: 0} + IMPERATIVE_NT'to decide which real number is the hyperbolic arctangent of ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let x be given by x = 0.5* ( log ( 1+r ) - log ( 1-r ) ) whe' INVOCATION_NT'let x be given by x = 0.5* ( log ( 1+r ) - log ( 1-r ) ) whe' {phrase invoked: call} @@ -862,485 +862,485 @@ ROOT_NT LOCAL_VARIABLE_NT'x' {local: LV"x"-real number real number} HEADING_NT'chapter 3 - control' {heading 4} {under: H4'chapter 3 - control'} {unit: 0} HEADING_NT'section 1 - deciding outcomes' {heading 5} {under: H5'section 1 - deciding outcomes'} {unit: 0} - RULE_NT'to decide yes ( documented at ph_yes )' {unit: 0} + IMPERATIVE_NT'to decide yes ( documented at ph_yes )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rtrue; - in to decide if only' - RULE_NT'to decide no ( documented at ph_no )' {unit: 0} + IMPERATIVE_NT'to decide no ( documented at ph_no )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rfalse; - in to decide if only' - RULE_NT'to stop ( documented at ph_stop )' {unit: 0} + IMPERATIVE_NT'to stop ( documented at ph_stop )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rtrue; - in to only' - RULE_NT'to decide on ( something - value ) ( documented at ph_decide' {unit: 0} + IMPERATIVE_NT'to decide on ( something - value ) ( documented at ph_decide' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- return {-return-value:something}; ' HEADING_NT'section 2 - if and unless' {heading 5} {under: H5'section 2 - if and unless'} {unit: 0} - RULE_NT'to if ( c - condition ) begin -- end conditional ( documente' {unit: 0} + IMPERATIVE_NT'to if ( c - condition ) begin -- end conditional ( documente' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {c} ' - RULE_NT'to unless ( c - condition ) begin -- end conditional ( docum' {unit: 0} + IMPERATIVE_NT'to unless ( c - condition ) begin -- end conditional ( docum' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (~~{c}) ' - RULE_NT'to if ( v - value ) is begin -- end conditional ( documented' {unit: 0} + IMPERATIVE_NT'to if ( v - value ) is begin -- end conditional ( documented' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ' - RULE_NT'to do nothing ( documented at ph_nothing )' {unit: 0} + IMPERATIVE_NT'to do nothing ( documented at ph_nothing )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ; ' HEADING_NT'section 3 - while and repeat' {heading 5} {under: H5'section 3 - while and repeat'} {unit: 0} - RULE_NT'to while ( c - condition ) begin -- end loop ( documented at' {unit: 0} + IMPERATIVE_NT'to while ( c - condition ) begin -- end loop ( documented at' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- while {c} ' - RULE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} + IMPERATIVE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- for ({loopvar}={v}: {loopvar}<={w}: {loopvar}++) ' - RULE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} + IMPERATIVE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- for ({loopvar}={v}: {loopvar}<={w}: {loopvar}++) ' - RULE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} + IMPERATIVE_NT'to repeat with ( loopvar - nonexisting k variable ) running ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:repeat-through} ' - RULE_NT'to repeat with ( loopvar - nonexisting object variable ) run' {unit: 0} + IMPERATIVE_NT'to repeat with ( loopvar - nonexisting object variable ) run' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:repeat-through-list} ' - RULE_NT'to repeat through ( t - table name ) begin -- end loop ( doc' {unit: 0} + IMPERATIVE_NT'to repeat through ( t - table name ) begin -- end loop ( doc' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- @push {-my:ct_0}; @push {-my:ct_1}; for ({-my:1}={T}' - RULE_NT'to repeat through ( t - table name ) in reverse order begin ' {unit: 0} + IMPERATIVE_NT'to repeat through ( t - table name ) in reverse order begin ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- @push {-my:ct_0}; @push {-my:ct_1}; for ({-my:1}={T}' - RULE_NT'to repeat through ( t - table name ) in ( tc - table column ' {unit: 0} + IMPERATIVE_NT'to repeat through ( t - table name ) in ( tc - table column ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- @push {-my:ct_0}; @push {-my:ct_1}; for ({-my:1}={T}' - RULE_NT'to repeat through ( t - table name ) in reverse ( tc - table' {unit: 0} + IMPERATIVE_NT'to repeat through ( t - table name ) in reverse ( tc - table' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- @push {-my:ct_0}; @push {-my:ct_1}; for ({-my:1}={T}' HEADING_NT'section 4 - loop flow' {heading 5} {under: H5'section 4 - loop flow'} {unit: 0} - RULE_NT'to break -- in loop ( documented at ph_break )' {unit: 0} + IMPERATIVE_NT'to break -- in loop ( documented at ph_break )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:break} ' - RULE_NT'to next -- in loop ( documented at ph_next )' {unit: 0} + IMPERATIVE_NT'to next -- in loop ( documented at ph_next )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- continue; ' HEADING_NT'chapter 4 - values' {heading 4} {under: H4'chapter 4 - values'} {unit: 0} HEADING_NT'section 1 - enumerations' {heading 5} {under: H5'section 1 - enumerations'} {unit: 0} - RULE_NT'to decide which number is number of ( s - description of val' {unit: 0} + IMPERATIVE_NT'to decide which number is number of ( s - description of val' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:number-of} ' - RULE_NT'to decide which k is ( name of kind of enumerated value k ) ' {unit: 0} + IMPERATIVE_NT'to decide which k is ( name of kind of enumerated value k ) ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-next-routine:K}({X}) ' - RULE_NT'to decide which k is ( name of kind of enumerated value k ) ' {unit: 0} + IMPERATIVE_NT'to decide which k is ( name of kind of enumerated value k ) ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-previous-routine:K}({X}) ' - RULE_NT'to decide which k is the first value of ( name of kind of en' {unit: 0} + IMPERATIVE_NT'to decide which k is the first value of ( name of kind of en' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'decide on the default value of k' - RULE_NT'to decide which k is the last value of ( name of kind of enu' {unit: 0} + IMPERATIVE_NT'to decide which k is the last value of ( name of kind of enu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'decide on k before the default value of k' HEADING_NT'section 2 - randomness' {heading 5} {under: H5'section 2 - randomness'} {unit: 0} - RULE_NT'to decide which k is a/-- random ( s - description of values' {unit: 0} + IMPERATIVE_NT'to decide which k is a/-- random ( s - description of values' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:random-of} ' - RULE_NT'to decide which k is a random ( name of kind of arithmetic v' {unit: 0} + IMPERATIVE_NT'to decide which k is a random ( name of kind of arithmetic v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-ranger-routine:K}({first value}, {second value}) ' - RULE_NT'to decide which k is a random ( name of kind of arithmetic v' {unit: 0} + IMPERATIVE_NT'to decide which k is a random ( name of kind of arithmetic v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-ranger-routine:K}({first value}, {second value}) ' - RULE_NT'to decide which k is a random ( name of kind of enumerated v' {unit: 0} + IMPERATIVE_NT'to decide which k is a random ( name of kind of enumerated v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-ranger-routine:K}({first value}, {second value}) ' - RULE_NT'to decide which k is a random ( name of kind of enumerated v' {unit: 0} + IMPERATIVE_NT'to decide which k is a random ( name of kind of enumerated v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-ranger-routine:K}({first value}, {second value}) ' - RULE_NT'to decide whether a random chance of ( n - number ) in ( m -' {unit: 0} + IMPERATIVE_NT'to decide whether a random chance of ( n - number ) in ( m -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (GenerateRandomNumber(1, {M}) <= {N}) ' - RULE_NT'to seed the random-number generator with ( n - number ) ( do' {unit: 0} + IMPERATIVE_NT'to seed the random-number generator with ( n - number ) ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- VM_Seed_RNG({N}); ' HEADING_NT'section 3 - default values' {heading 5} {under: H5'section 3 - default values'} {unit: 0} - RULE_NT'to decide what k is the default value of ( v - name of kind ' {unit: 0} + IMPERATIVE_NT'to decide what k is the default value of ( v - name of kind ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-new:K} ' HEADING_NT'chapter 5 - text' {heading 4} {under: H4'chapter 5 - text'} {unit: 0} HEADING_NT'section 1 - breaking down text' {heading 5} {under: H5'section 1 - breaking down text'} {unit: 0} - RULE_NT'to decide what number is the number of characters in ( t - t' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of characters in ( t - t' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, CHR_BLOB) ' - RULE_NT'to decide what number is the number of words in ( t - text )' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of words in ( t - text )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, WORD_BLOB) ' - RULE_NT'to decide what number is the number of punctuated words in (' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of punctuated words in (' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, PWORD_BLOB) ' - RULE_NT'to decide what number is the number of unpunctuated words in' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of unpunctuated words in' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, UWORD_BLOB) ' - RULE_NT'to decide what number is the number of lines in ( t - text )' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of lines in ( t - text )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, LINE_BLOB) ' - RULE_NT'to decide what number is the number of paragraphs in ( t - t' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of paragraphs in ( t - t' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_BlobAccess({-by-reference:T}, PARA_BLOB) ' - RULE_NT'to decide what text is character number ( n - a number ) in ' {unit: 0} + IMPERATIVE_NT'to decide what text is character number ( n - a number ) in ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, CHR' - RULE_NT'to decide what text is word number ( n - a number ) in ( t -' {unit: 0} + IMPERATIVE_NT'to decide what text is word number ( n - a number ) in ( t -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, WOR' - RULE_NT'to decide what text is punctuated word number ( n - a number' {unit: 0} + IMPERATIVE_NT'to decide what text is punctuated word number ( n - a number' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, PWO' - RULE_NT'to decide what text is unpunctuated word number ( n - a numb' {unit: 0} + IMPERATIVE_NT'to decide what text is unpunctuated word number ( n - a numb' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, UWO' - RULE_NT'to decide what text is line number ( n - a number ) in ( t -' {unit: 0} + IMPERATIVE_NT'to decide what text is line number ( n - a number ) in ( t -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, LIN' - RULE_NT'to decide what text is paragraph number ( n - a number ) in ' {unit: 0} + IMPERATIVE_NT'to decide what text is paragraph number ( n - a number ) in ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_GetBlob({-new:text}, {-by-reference:T}, {N}, PAR' - RULE_NT'to decide what text is the substituted form of ( t - text ) ' {unit: 0} + IMPERATIVE_NT'to decide what text is the substituted form of ( t - text ) ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_SubstitutedForm({-new:text}, {-by-reference:T}) ' HEADING_NT'section 2 - matching and replacing' {heading 5} {under: H5'section 2 - matching and replacing'} {unit: 0} - RULE_NT'to decide if ( t - text ) exactly matches the text ( find - ' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) exactly matches the text ( find - ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(CHR_BLOB,{-by-reference:T},{-by-refer' - RULE_NT'to decide if ( t - text ) matches the text ( find - text ) ,' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) matches the text ( find - text ) ,' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(CHR_BLOB,{-by-reference:T},{-by-refer' - RULE_NT'to decide what number is number of times ( t - text ) matche' {unit: 0} + IMPERATIVE_NT'to decide what number is number of times ( t - text ) matche' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(CHR_BLOB,{-by-reference:T},{-by-refer' - RULE_NT'to replace the text ( find - text ) in ( t - text ) with ( r' {unit: 0} + IMPERATIVE_NT'to replace the text ( find - text ) in ( t - text ) with ( r' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(CHR_BLOB, {-lvalue-by-reference:T}, {' - RULE_NT'to replace the word ( find - text ) in ( t - text ) with ( r' {unit: 0} + IMPERATIVE_NT'to replace the word ( find - text ) in ( t - text ) with ( r' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceText(WORD_BLOB, {-lvalue-by-reference:T},' - RULE_NT'to replace the punctuated word ( find - text ) in ( t - text' {unit: 0} + IMPERATIVE_NT'to replace the punctuated word ( find - text ) in ( t - text' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceText(PWORD_BLOB, {-lvalue-by-reference:T}' - RULE_NT'to replace character number ( n - a number ) in ( t - text )' {unit: 0} + IMPERATIVE_NT'to replace character number ( n - a number ) in ( t - text )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(CHR_BLOB, {-lvalue-by-reference:T}, ' - RULE_NT'to replace word number ( n - a number ) in ( t - text ) with' {unit: 0} + IMPERATIVE_NT'to replace word number ( n - a number ) in ( t - text ) with' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(WORD_BLOB, {-lvalue-by-reference:T},' - RULE_NT'to replace punctuated word number ( n - a number ) in ( t - ' {unit: 0} + IMPERATIVE_NT'to replace punctuated word number ( n - a number ) in ( t - ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(PWORD_BLOB, {-lvalue-by-reference:T}' - RULE_NT'to replace unpunctuated word number ( n - a number ) in ( t ' {unit: 0} + IMPERATIVE_NT'to replace unpunctuated word number ( n - a number ) in ( t ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(UWORD_BLOB, {-lvalue-by-reference:T}' - RULE_NT'to replace line number ( n - a number ) in ( t - text ) with' {unit: 0} + IMPERATIVE_NT'to replace line number ( n - a number ) in ( t - text ) with' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(LINE_BLOB, {-lvalue-by-reference:T},' - RULE_NT'to replace paragraph number ( n - a number ) in ( t - text )' {unit: 0} + IMPERATIVE_NT'to replace paragraph number ( n - a number ) in ( t - text )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_ReplaceBlob(PARA_BLOB, {-lvalue-by-reference:T},' HEADING_NT'section 3 - regular expressions' {heading 5} {under: H5'section 3 - regular expressions'} {unit: 0} - RULE_NT'to decide if ( t - text ) exactly matches the regular expres' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) exactly matches the regular expres' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(REGEXP_BLOB,{-by-reference:T},{-by-re' - RULE_NT'to decide if ( t - text ) matches the regular expression ( f' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) matches the regular expression ( f' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(REGEXP_BLOB,{-by-reference:T},{-by-re' - RULE_NT'to decide what text is text matching regular expression ( do' {unit: 0} + IMPERATIVE_NT'to decide what text is text matching regular expression ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_RE_GetMatchVar(0) ' - RULE_NT'to decide what text is text matching subexpression ( n - a n' {unit: 0} + IMPERATIVE_NT'to decide what text is text matching subexpression ( n - a n' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_RE_GetMatchVar({N}) ' - RULE_NT'to decide what number is number of times ( t - text ) matche' {unit: 0} + IMPERATIVE_NT'to decide what number is number of times ( t - text ) matche' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(REGEXP_BLOB,{-by-reference:T},{-by-re' - RULE_NT'to replace the regular expression ( find - text ) in ( t - t' {unit: 0} + IMPERATIVE_NT'to replace the regular expression ( find - text ) in ( t - t' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_Replace_RE(REGEXP_BLOB, {-lvalue-by-reference:T}' HEADING_NT'section 4 - casing of text' {heading 5} {under: H5'section 4 - casing of text'} {unit: 0} - RULE_NT'to decide what text is ( t - text ) in lower case ( document' {unit: 0} + IMPERATIVE_NT'to decide what text is ( t - text ) in lower case ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersToCase({-new:text}, {-by-reference:T},' - RULE_NT'to decide what text is ( t - text ) in upper case ( document' {unit: 0} + IMPERATIVE_NT'to decide what text is ( t - text ) in upper case ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersToCase({-new:text}, {-by-reference:T},' - RULE_NT'to decide what text is ( t - text ) in title case ( document' {unit: 0} + IMPERATIVE_NT'to decide what text is ( t - text ) in title case ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersToCase({-new:text}, {-by-reference:T},' - RULE_NT'to decide what text is ( t - text ) in sentence case ( docum' {unit: 0} + IMPERATIVE_NT'to decide what text is ( t - text ) in sentence case ( docum' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersToCase({-new:text}, {-by-reference:T},' - RULE_NT'to decide if ( t - text ) is in lower case ( documented at p' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) is in lower case ( documented at p' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersOfCase({-by-reference:T}, 0) ' - RULE_NT'to decide if ( t - text ) is in upper case ( documented at p' {unit: 0} + IMPERATIVE_NT'to decide if ( t - text ) is in upper case ( documented at p' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TEXT_TY_CharactersOfCase({-by-reference:T}, 1) ' HEADING_NT'section 5 - adaptive text' {heading 5} {under: H5'section 5 - adaptive text'} {unit: 0} - RULE_NT'to say infinitive of ( v - a verb ) ( documented at phs_infi' {unit: 0} + IMPERATIVE_NT'to say infinitive of ( v - a verb ) ( documented at phs_infi' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(1); ' - RULE_NT'to say past participle of ( v - a verb ) ( documented at phs' {unit: 0} + IMPERATIVE_NT'to say past participle of ( v - a verb ) ( documented at phs' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(2); ' - RULE_NT'to say present participle of ( v - a verb ) ( documented at ' {unit: 0} + IMPERATIVE_NT'to say present participle of ( v - a verb ) ( documented at ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(3); ' - RULE_NT'to say adapt ( v - verb ) ( documented at phs_adapt )' {unit: 0} + IMPERATIVE_NT'to say adapt ( v - verb ) ( documented at phs_adapt )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_POS, PNToVP(), story_tense); ' - RULE_NT'to say adapt ( v - verb ) in ( t - grammatical tense ) ( doc' {unit: 0} + IMPERATIVE_NT'to say adapt ( v - verb ) in ( t - grammatical tense ) ( doc' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_POS, PNToVP(), {T}); ' - RULE_NT'to say adapt ( v - verb ) from ( p - narrative viewpoint ) (' {unit: 0} + IMPERATIVE_NT'to say adapt ( v - verb ) from ( p - narrative viewpoint ) (' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_POS, {P}, story_tense); ' - RULE_NT'to say adapt ( v - verb ) in ( t - grammatical tense ) from ' {unit: 0} + IMPERATIVE_NT'to say adapt ( v - verb ) in ( t - grammatical tense ) from ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_POS, {P}, {T}); ' - RULE_NT'to say negate ( v - verb ) ( documented at phs_negate )' {unit: 0} + IMPERATIVE_NT'to say negate ( v - verb ) ( documented at phs_negate )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_NEG, PNToVP(), story_tense); ' - RULE_NT'to say negate ( v - verb ) in ( t - grammatical tense ) ( do' {unit: 0} + IMPERATIVE_NT'to say negate ( v - verb ) in ( t - grammatical tense ) ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_NEG, PNToVP(), {T}); ' - RULE_NT'to say negate ( v - verb ) from ( p - narrative viewpoint ) ' {unit: 0} + IMPERATIVE_NT'to say negate ( v - verb ) from ( p - narrative viewpoint ) ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_NEG, {P}, story_tense); ' - RULE_NT'to say negate ( v - verb ) in ( t - grammatical tense ) from' {unit: 0} + IMPERATIVE_NT'to say negate ( v - verb ) in ( t - grammatical tense ) from' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_NEG, {P}, {T}); ' - RULE_NT'to decide which relation of objects is meaning of ( v - a ve' {unit: 0} + IMPERATIVE_NT'to decide which relation of objects is meaning of ( v - a ve' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {V}(CV_MEANING) ' HEADING_NT'chapter 6 - data structures' {heading 4} {under: H4'chapter 6 - data structures'} {unit: 0} HEADING_NT'section 1 - tables' {heading 5} {under: H5'section 1 - tables'} {unit: 0} - RULE_NT'to choose a/the/-- row ( n - number ) in/from ( t - table na' {unit: 0} + IMPERATIVE_NT'to choose a/the/-- row ( n - number ) in/from ( t - table na' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-my:ct_0} = {T}; {-my:ct_1} = {N}; ' - RULE_NT'to choose a/the/-- row with ( tc - k valued table column ) o' {unit: 0} + IMPERATIVE_NT'to choose a/the/-- row with ( tc - k valued table column ) o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-my:ct_0} = {T}; {-my:ct_1} = TableRowCorr(ct_0, {TC}, ' - RULE_NT'to choose a/the/-- blank row in/from ( t - table name ) ( do' {unit: 0} + IMPERATIVE_NT'to choose a/the/-- blank row in/from ( t - table name ) ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-my:ct_0} = {T}; {-my:ct_1} = TableBlankRow(ct_0); ' - RULE_NT'to choose a/the/-- random row in/from ( t - table name ) ( d' {unit: 0} + IMPERATIVE_NT'to choose a/the/-- random row in/from ( t - table name ) ( d' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-my:ct_0} = {T}; {-my:ct_1} = TableRandomRow(ct_0); ' - RULE_NT'to decide which number is number of rows in/from ( t - table' {unit: 0} + IMPERATIVE_NT'to decide which number is number of rows in/from ( t - table' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableRows({T}) ' - RULE_NT'to decide which number is number of blank rows in/from ( t -' {unit: 0} + IMPERATIVE_NT'to decide which number is number of blank rows in/from ( t -' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableBlankRows({T}) ' - RULE_NT'to decide which number is number of filled rows in/from ( t ' {unit: 0} + IMPERATIVE_NT'to decide which number is number of filled rows in/from ( t ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableFilledRows({T}) ' - RULE_NT'to decide if there is ( tr - table-reference ) ( documented ' {unit: 0} + IMPERATIVE_NT'to decide if there is ( tr - table-reference ) ( documented ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-reference-exists:TR}) ' - RULE_NT'to decide if there is no ( tr - table-reference ) ( document' {unit: 0} + IMPERATIVE_NT'to decide if there is no ( tr - table-reference ) ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({-reference-exists:TR} == false) ' - RULE_NT'to blank out ( tr - table-reference ) ( documented at ph_bla' {unit: 0} + IMPERATIVE_NT'to blank out ( tr - table-reference ) ( documented at ph_bla' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-by-reference-blank-out:tr}; ' - RULE_NT'to blank out the whole row ( documented at ph_blankoutrow )' {unit: 0} + IMPERATIVE_NT'to blank out the whole row ( documented at ph_blankoutrow )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableBlankOutRow({-my:ct_0}, {-my:ct_1}); ' - RULE_NT'to blank out the whole ( tc - table column ) in/from/of ( t ' {unit: 0} + IMPERATIVE_NT'to blank out the whole ( tc - table column ) in/from/of ( t ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableBlankOutColumn({T}, {TC}); ' - RULE_NT'to blank out the whole of ( t - table name ) ( documented at' {unit: 0} + IMPERATIVE_NT'to blank out the whole of ( t - table name ) ( documented at' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableBlankOutAll({T}); ' - RULE_NT'to showme the contents of ( t - table name ) ( documented at' {unit: 0} + IMPERATIVE_NT'to showme the contents of ( t - table name ) ( documented at' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableDebug({T}); ' - RULE_NT'to say the/-- current table row ( documented at phs_currentt' {unit: 0} + IMPERATIVE_NT'to say the/-- current table row ( documented at phs_currentt' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableRowDebug({-my:ct_0}, {-my:ct_1}); ' - RULE_NT'to say row ( n - number ) in/from ( t - table name ) ( docum' {unit: 0} + IMPERATIVE_NT'to say row ( n - number ) in/from ( t - table name ) ( docum' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableRowDebug({T}, {N}); ' - RULE_NT'to say ( tc - table column ) in/from ( t - table name ) ( do' {unit: 0} + IMPERATIVE_NT'to say ( tc - table column ) in/from ( t - table name ) ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableColumnDebug({T}, {TC}); ' HEADING_NT'section 2 - sorting tables' {heading 5} {under: H5'section 2 - sorting tables'} {unit: 0} - RULE_NT'to sort ( t - table name ) in/into random order ( documented' {unit: 0} + IMPERATIVE_NT'to sort ( t - table name ) in/into random order ( documented' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableShuffle({T}); ' - RULE_NT'to sort ( t - table name ) in/into ( tc - table column ) ord' {unit: 0} + IMPERATIVE_NT'to sort ( t - table name ) in/into ( tc - table column ) ord' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableSort({T}, {TC}, 1); ' - RULE_NT'to sort ( t - table name ) in/into reverse ( tc - table colu' {unit: 0} + IMPERATIVE_NT'to sort ( t - table name ) in/into reverse ( tc - table colu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TableSort({T}, {TC}, -1); ' HEADING_NT'section 3 - lists' {heading 5} {under: H5'section 3 - lists'} {unit: 0} - RULE_NT'to add ( new entry - k ) to ( l - list of values of kind k )' {unit: 0} + IMPERATIVE_NT'to add ( new entry - k ) to ( l - list of values of kind k )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_InsertItem({-lvalue-by-reference:L}, {new ent' - RULE_NT'to add ( new entry - k ) at entry ( e - number ) in ( l - li' {unit: 0} + IMPERATIVE_NT'to add ( new entry - k ) at entry ( e - number ) in ( l - li' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_InsertItem({-lvalue-by-reference:L}, {new ent' - RULE_NT'to add ( lx - list of ks ) to ( l - list of values of kind k' {unit: 0} + IMPERATIVE_NT'to add ( lx - list of ks ) to ( l - list of values of kind k' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_AppendList({-lvalue-by-reference:L}, {-by-ref' - RULE_NT'to add ( lx - list of ks ) at entry ( e - number ) in ( l - ' {unit: 0} + IMPERATIVE_NT'to add ( lx - list of ks ) at entry ( e - number ) in ( l - ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_AppendList({-lvalue-by-reference:L}, {-by-ref' - RULE_NT'to remove ( existing entry - k ) from ( l - list of values o' {unit: 0} + IMPERATIVE_NT'to remove ( existing entry - k ) from ( l - list of values o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_RemoveValue({-lvalue-by-reference:L}, {existi' - RULE_NT'to remove ( n - list of ks ) from ( l - list of values of ki' {unit: 0} + IMPERATIVE_NT'to remove ( n - list of ks ) from ( l - list of values of ki' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Remove_List({-lvalue-by-reference:L}, {-by-re' - RULE_NT'to remove entry ( n - number ) from ( l - list of values ) ,' {unit: 0} + IMPERATIVE_NT'to remove entry ( n - number ) from ( l - list of values ) ,' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_RemoveItemRange({-lvalue-by-reference:L}, {N}' - RULE_NT'to remove entries ( n - number ) to ( n2 - number ) from ( l' {unit: 0} + IMPERATIVE_NT'to remove entries ( n - number ) to ( n2 - number ) from ( l' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_RemoveItemRange({-lvalue-by-reference:L}, {N}' - RULE_NT'to decide if ( n - k ) is listed in ( l - list of values of ' {unit: 0} + IMPERATIVE_NT'to decide if ( n - k ) is listed in ( l - list of values of ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (LIST_OF_TY_FindItem({-by-reference:L}, {N})) ' - RULE_NT'to decide if ( n - k ) is not listed in ( l - list of values' {unit: 0} + IMPERATIVE_NT'to decide if ( n - k ) is not listed in ( l - list of values' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (LIST_OF_TY_FindItem({-by-reference:L}, {N}) == false) ' - RULE_NT'to decide what list of ks is the list of ( d - description o' {unit: 0} + IMPERATIVE_NT'to decide what list of ks is the list of ( d - description o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-new-list-of:list of K} ' HEADING_NT'section 4 - length of lists' {heading 5} {under: H5'section 4 - length of lists'} {unit: 0} - RULE_NT'to decide what number is the number of entries in/of ( l - a' {unit: 0} + IMPERATIVE_NT'to decide what number is the number of entries in/of ( l - a' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_GetLength({-by-reference:L}) ' - RULE_NT'to truncate ( l - a list of values ) to ( n - a number ) ent' {unit: 0} + IMPERATIVE_NT'to truncate ( l - a list of values ) to ( n - a number ) ent' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_SetLength({-lvalue-by-reference:L}, {N}, -1, ' - RULE_NT'to truncate ( l - a list of values ) to the first ( n - a nu' {unit: 0} + IMPERATIVE_NT'to truncate ( l - a list of values ) to the first ( n - a nu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_SetLength({-lvalue-by-reference:L}, {N}, -1, ' - RULE_NT'to truncate ( l - a list of values ) to the last ( n - a num' {unit: 0} + IMPERATIVE_NT'to truncate ( l - a list of values ) to the last ( n - a num' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_SetLength({-lvalue-by-reference:L}, {N}, -1, ' - RULE_NT'to extend ( l - a list of values ) to ( n - a number ) entri' {unit: 0} + IMPERATIVE_NT'to extend ( l - a list of values ) to ( n - a number ) entri' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_SetLength({-lvalue-by-reference:L}, {N}, 1); ' - RULE_NT'to change ( l - a list of values ) to have ( n - a number ) ' {unit: 0} + IMPERATIVE_NT'to change ( l - a list of values ) to have ( n - a number ) ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_SetLength({-lvalue-by-reference:L}, {N}, 0); ' HEADING_NT'section 5 - list operations' {heading 5} {under: H5'section 5 - list operations'} {unit: 0} - RULE_NT'to reverse ( l - a list of values ) ( documented at ph_rever' {unit: 0} + IMPERATIVE_NT'to reverse ( l - a list of values ) ( documented at ph_rever' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Reverse({-lvalue-by-reference:L}); ' - RULE_NT'to rotate ( l - a list of values ) ( documented at ph_rotate' {unit: 0} + IMPERATIVE_NT'to rotate ( l - a list of values ) ( documented at ph_rotate' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Rotate({-lvalue-by-reference:L}, 0); ' - RULE_NT'to rotate ( l - a list of values ) backwards ( documented at' {unit: 0} + IMPERATIVE_NT'to rotate ( l - a list of values ) backwards ( documented at' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Rotate({-lvalue-by-reference:L}, 1); ' - RULE_NT'to sort ( l - a list of values ) ( documented at ph_sortlist' {unit: 0} + IMPERATIVE_NT'to sort ( l - a list of values ) ( documented at ph_sortlist' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Sort({-lvalue-by-reference:L}, 1); ' - RULE_NT'to sort ( l - a list of values ) in/into reverse order ( doc' {unit: 0} + IMPERATIVE_NT'to sort ( l - a list of values ) in/into reverse order ( doc' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Sort({-lvalue-by-reference:L}, -1); ' - RULE_NT'to sort ( l - a list of values ) in/into random order ( docu' {unit: 0} + IMPERATIVE_NT'to sort ( l - a list of values ) in/into random order ( docu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Sort({-lvalue-by-reference:L}, 2); ' - RULE_NT'to sort ( l - a list of objects ) in/into ( p - property ) o' {unit: 0} + IMPERATIVE_NT'to sort ( l - a list of objects ) in/into ( p - property ) o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Sort({-lvalue-by-reference:L}, 1, {P}, {-prop' - RULE_NT'to sort ( l - a list of objects ) in/into reverse ( p - prop' {unit: 0} + IMPERATIVE_NT'to sort ( l - a list of objects ) in/into reverse ( p - prop' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Sort({-lvalue-by-reference:L}, -1, {P}, {-pro' HEADING_NT'section 6 - relations' {heading 5} {under: H5'section 6 - relations'} {unit: 0} - RULE_NT'to show relation ( r - relation ) ( documented at ph_showrel' {unit: 0} + IMPERATIVE_NT'to show relation ( r - relation ) ( documented at ph_showrel' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-show-me:R}; RelationTest({-by-reference:R}, RELS_SHOW)' - RULE_NT'to decide which object is next step via ( r - relation of ob' {unit: 0} + IMPERATIVE_NT'to decide which object is next step via ( r - relation of ob' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationRouteTo({-by-reference:R},{O1},{O2},false) ' - RULE_NT'to decide which number is number of steps via ( r - relation' {unit: 0} + IMPERATIVE_NT'to decide which number is number of steps via ( r - relation' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationRouteTo({-by-reference:R},{O1},{O2},true) ' - RULE_NT'to decide which list of ks is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ks is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LIST, {-new:list of' - RULE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LIST, {-new:list of' - RULE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LIST, {-new:list of' - RULE_NT'to decide which list of ks is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ks is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ALL_X, {Y}, ' - RULE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ALL_Y, {X}, ' - RULE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} + IMPERATIVE_NT'to decide which list of ls is list of ( name of kind of valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ALL_Y, {X}, ' - RULE_NT'to decide whether ( name of kind of value k ) relates to ( y' {unit: 0} + IMPERATIVE_NT'to decide whether ( name of kind of value k ) relates to ( y' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ANY, {Y}, RL' - RULE_NT'to decide whether ( x - k ) relates to ( name of kind of val' {unit: 0} + IMPERATIVE_NT'to decide whether ( x - k ) relates to ( name of kind of val' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ANY, {X}, RL' - RULE_NT'to decide which k is ( name of kind of value k ) that/which/' {unit: 0} + IMPERATIVE_NT'to decide which k is ( name of kind of value k ) that/which/' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ANY, {Y}, RL' - RULE_NT'to decide which l is ( name of kind of value l ) to which/wh' {unit: 0} + IMPERATIVE_NT'to decide which l is ( name of kind of value l ) to which/wh' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ANY, {X}, RL' - RULE_NT'to decide which l is ( name of kind of value l ) that/which/' {unit: 0} + IMPERATIVE_NT'to decide which l is ( name of kind of value l ) that/which/' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RelationTest({-by-reference:R}, RELS_LOOKUP_ANY, {X}, RL' HEADING_NT'chapter 7 - functional programming' {heading 4} {under: H4'chapter 7 - functional programming'} {unit: 0} HEADING_NT'section 1 - applying functions' {heading 5} {under: H5'section 1 - applying functions'} {unit: 0} - RULE_NT'to decide whether ( val - k ) matches ( desc - description o' {unit: 0} + IMPERATIVE_NT'to decide whether ( val - k ) matches ( desc - description o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:description-application} ' - RULE_NT'to decide what k is ( function - phrase nothing -> value of ' {unit: 0} + IMPERATIVE_NT'to decide what k is ( function - phrase nothing -> value of ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application} ' - RULE_NT'to decide what l is ( function - phrase value of kind k -> v' {unit: 0} + IMPERATIVE_NT'to decide what l is ( function - phrase value of kind k -> v' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application} ' - RULE_NT'to decide what m is ( function - phrase ( value of kind k , ' {unit: 0} + IMPERATIVE_NT'to decide what m is ( function - phrase ( value of kind k , ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application} ' - RULE_NT'to decide what n is ( function - phrase ( value of kind k , ' {unit: 0} + IMPERATIVE_NT'to decide what n is ( function - phrase ( value of kind k , ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application} ' - RULE_NT'to apply ( function - phrase nothing -> nothing ) ( document' {unit: 0} + IMPERATIVE_NT'to apply ( function - phrase nothing -> nothing ) ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application}; ' - RULE_NT'to apply ( function - phrase value of kind k -> nothing ) to' {unit: 0} + IMPERATIVE_NT'to apply ( function - phrase value of kind k -> nothing ) to' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application}; ' - RULE_NT'to apply ( function - phrase ( value of kind k , value of ki' {unit: 0} + IMPERATIVE_NT'to apply ( function - phrase ( value of kind k , value of ki' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application}; ' - RULE_NT'to apply ( function - phrase ( value of kind k , value of ki' {unit: 0} + IMPERATIVE_NT'to apply ( function - phrase ( value of kind k , value of ki' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:function-application}; ' HEADING_NT'section 2 - working with lists' {heading 5} {under: H5'section 2 - working with lists'} {unit: 0} - RULE_NT'to decide what list of l is ( function - phrase k -> value o' {unit: 0} + IMPERATIVE_NT'to decide what list of l is ( function - phrase k -> value o' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let the result be a list of ls' {indent: 1} CODE_BLOCK_NT {control structure: RPT} @@ -1349,7 +1349,7 @@ ROOT_NT INVOCATION_LIST_NT'let the mapped item be the function applied to the item' {indent: 2} INVOCATION_LIST_NT'add the mapped item to the result' {indent: 2} INVOCATION_LIST_NT'decide on the result' {indent: 1} - RULE_NT'to decide what k is the ( function - phrase ( k , k ) -> k )' {unit: 0} + IMPERATIVE_NT'to decide what k is the ( function - phrase ( k , k ) -> k )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let the total be a k' {indent: 1} INVOCATION_LIST_NT'let the count be 0' {indent: 1} @@ -1366,7 +1366,7 @@ ROOT_NT INVOCATION_LIST_NT'now the total is the function applied to the total and the i' {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'the total is the function applied to the total and the item' INVOCATION_LIST_NT'decide on the total' {indent: 1} - RULE_NT'to decide what list of k is the filter to ( criterion - desc' {unit: 0} + IMPERATIVE_NT'to decide what list of k is the filter to ( criterion - desc' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'let the filtered list be a list of k' {indent: 1} CODE_BLOCK_NT {control structure: RPT} @@ -1379,150 +1379,150 @@ ROOT_NT INVOCATION_LIST_NT'decide on the filtered list' {indent: 1} HEADING_NT'chapter 8 - rulebooks and activities' {heading 4} {under: H4'chapter 8 - rulebooks and activities'} {unit: 0} HEADING_NT'section 1 - carrying out activities' {heading 5} {under: H5'section 1 - carrying out activities'} {unit: 0} - RULE_NT'to carry out the ( a - activity on nothing ) activity ( docu' {unit: 0} + IMPERATIVE_NT'to carry out the ( a - activity on nothing ) activity ( docu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CarryOutActivity({A}); ' - RULE_NT'to carry out the ( a - activity on value of kind k ) activit' {unit: 0} + IMPERATIVE_NT'to carry out the ( a - activity on value of kind k ) activit' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CarryOutActivity({A}, {val}); ' - RULE_NT'to continue the activity ( documented at ph_continueactivity' {unit: 0} + IMPERATIVE_NT'to continue the activity ( documented at ph_continueactivity' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rfalse; - in to only' HEADING_NT'section 2 - advanced activities' {heading 5} {under: H5'section 2 - advanced activities'} {unit: 0} - RULE_NT'to begin the ( a - activity on nothing ) activity ( document' {unit: 0} + IMPERATIVE_NT'to begin the ( a - activity on nothing ) activity ( document' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- BeginActivity({A}); ' - RULE_NT'to begin the ( a - activity on value of kind k ) activity wi' {unit: 0} + IMPERATIVE_NT'to begin the ( a - activity on value of kind k ) activity wi' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- BeginActivity({A}, {val}); ' - RULE_NT'to decide whether handling ( a - activity ) activity ( docum' {unit: 0} + IMPERATIVE_NT'to decide whether handling ( a - activity ) activity ( docum' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (~~(ForActivity({A}))) ' - RULE_NT'to decide whether handling ( a - activity on value of kind k' {unit: 0} + IMPERATIVE_NT'to decide whether handling ( a - activity on value of kind k' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (~~(ForActivity({A}, {val}))) ' - RULE_NT'to end the ( a - activity on nothing ) activity ( documented' {unit: 0} + IMPERATIVE_NT'to end the ( a - activity on nothing ) activity ( documented' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- EndActivity({A}); ' - RULE_NT'to end the ( a - activity on value of kind k ) activity with' {unit: 0} + IMPERATIVE_NT'to end the ( a - activity on value of kind k ) activity with' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- EndActivity({A}, {val}); ' - RULE_NT'to abandon the ( a - activity on nothing ) activity ( docume' {unit: 0} + IMPERATIVE_NT'to abandon the ( a - activity on nothing ) activity ( docume' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- AbandonActivity({A}); ' - RULE_NT'to abandon the ( a - activity on value of kind k ) activity ' {unit: 0} + IMPERATIVE_NT'to abandon the ( a - activity on value of kind k ) activity ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- AbandonActivity({A}, {val}); ' HEADING_NT'section 3 - following rules' {heading 5} {under: H5'section 3 - following rules'} {unit: 0} - RULE_NT'to follow ( rl - a rule ) ( documented at ph_follow )' {unit: 0} + IMPERATIVE_NT'to follow ( rl - a rule ) ( documented at ph_follow )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FollowRulebook({RL}); ' - RULE_NT'to follow ( rl - value of kind k based rule producing a valu' {unit: 0} + IMPERATIVE_NT'to follow ( rl - value of kind k based rule producing a valu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FollowRulebook({RL}, {V}, true); ' - RULE_NT'to follow ( rl - a nothing based rule ) ( documented at ph_f' {unit: 0} + IMPERATIVE_NT'to follow ( rl - a nothing based rule ) ( documented at ph_f' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FollowRulebook({RL}); ' - RULE_NT'to decide what k is the ( name of kind k ) produced by ( rl ' {unit: 0} + IMPERATIVE_NT'to decide what k is the ( name of kind k ) produced by ( rl ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ResultOfRule({RL}, 0, true, {-strong-kind:K}) ' - RULE_NT'to decide what l is the ( name of kind l ) produced by ( rl ' {unit: 0} + IMPERATIVE_NT'to decide what l is the ( name of kind l ) produced by ( rl ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ResultOfRule({RL}, {V}, true, {-strong-kind:L}) ' - RULE_NT'to decide what k is the ( name of kind k ) produced by ( rl ' {unit: 0} + IMPERATIVE_NT'to decide what k is the ( name of kind k ) produced by ( rl ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ResultOfRule({RL}, 0, true, {-strong-kind:K}) ' - RULE_NT'to abide by ( rl - a rule ) ( documented at ph_abide )' {unit: 0} + IMPERATIVE_NT'to abide by ( rl - a rule ) ( documented at ph_abide )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (FollowRulebook({RL})) rtrue; - in to only' - RULE_NT'to abide by ( rl - value of kind k based rule producing a va' {unit: 0} + IMPERATIVE_NT'to abide by ( rl - value of kind k based rule producing a va' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (FollowRulebook({RL}, {V}, true)) rtrue; - in to onl' - RULE_NT'to abide by ( rl - a nothing based rule ) ( documented at ph' {unit: 0} + IMPERATIVE_NT'to abide by ( rl - a nothing based rule ) ( documented at ph' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (FollowRulebook({RL})) rtrue; - in to only' HEADING_NT'section 4 - success and failure' {heading 5} {under: H5'section 4 - success and failure'} {unit: 0} - RULE_NT'to make no decision ( documented at ph_nodecision )' {unit: 0} + IMPERATIVE_NT'to make no decision ( documented at ph_nodecision )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rfalse; - in to only' - RULE_NT'to rule succeeds ( documented at ph_succeeds )' {unit: 0} + IMPERATIVE_NT'to rule succeeds ( documented at ph_succeeds )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RulebookSucceeds(); rtrue; - in to only' - RULE_NT'to rule fails ( documented at ph_fails )' {unit: 0} + IMPERATIVE_NT'to rule fails ( documented at ph_fails )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RulebookFails(); rtrue; - in to only' - RULE_NT'to rule succeeds with result ( val - a value ) ( documented ' {unit: 0} + IMPERATIVE_NT'to rule succeeds with result ( val - a value ) ( documented ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RulebookSucceeds({-weak-kind:rule-return-kind},{-return-' - RULE_NT'to decide if rule succeeded ( documented at ph_succeeded )' {unit: 0} + IMPERATIVE_NT'to decide if rule succeeded ( documented at ph_succeeded )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (RulebookSucceeded()) ' - RULE_NT'to decide if rule failed ( documented at ph_failed )' {unit: 0} + IMPERATIVE_NT'to decide if rule failed ( documented at ph_failed )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (RulebookFailed()) ' - RULE_NT'to decide which rulebook outcome is the outcome of the ruleb' {unit: 0} + IMPERATIVE_NT'to decide which rulebook outcome is the outcome of the ruleb' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (ResultOfRule()) ' HEADING_NT'chapter 9 - external files ( not for z-machine )' {heading 4} {under: H4'chapter 9 - external files ( not for z-machine )'} {unit: 0} HEADING_NT'section 1 - files of text' {heading 5} {under: H5'section 1 - files of text'} {unit: 0} - RULE_NT'to write ( t - text ) to ( fn - external file ) ( documented' {unit: 0} + IMPERATIVE_NT'to write ( t - text ) to ( fn - external file ) ( documented' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_PutContents({FN}, {T}, false); ' - RULE_NT'to append ( t - text ) to ( fn - external file ) ( documente' {unit: 0} + IMPERATIVE_NT'to append ( t - text ) to ( fn - external file ) ( documente' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_PutContents({FN}, {T}, true); ' - RULE_NT'to say text of ( fn - external file ) ( documented at ph_say' {unit: 0} + IMPERATIVE_NT'to say text of ( fn - external file ) ( documented at ph_say' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_PrintContents({FN}); say__p = 1; ' HEADING_NT'section 2 - files of data' {heading 5} {under: H5'section 2 - files of data'} {unit: 0} - RULE_NT'to read ( filename - external file ) into ( t - table name )' {unit: 0} + IMPERATIVE_NT'to read ( filename - external file ) into ( t - table name )' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_GetTable({filename}, {T}); ' - RULE_NT'to write ( filename - external file ) from ( t - table name ' {unit: 0} + IMPERATIVE_NT'to write ( filename - external file ) from ( t - table name ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_PutTable({filename}, {T}); ' HEADING_NT'section 3 - file handling' {heading 5} {under: H5'section 3 - file handling'} {unit: 0} - RULE_NT'to decide if ( filename - external file ) exists ( documente' {unit: 0} + IMPERATIVE_NT'to decide if ( filename - external file ) exists ( documente' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (FileIO_Exists({filename}, false)) ' - RULE_NT'to decide if ready to read ( filename - external file ) ( do' {unit: 0} + IMPERATIVE_NT'to decide if ready to read ( filename - external file ) ( do' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (FileIO_Ready({filename}, false)) ' - RULE_NT'to mark ( filename - external file ) as ready to read ( docu' {unit: 0} + IMPERATIVE_NT'to mark ( filename - external file ) as ready to read ( docu' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_MarkReady({filename}, true); ' - RULE_NT'to mark ( filename - external file ) as not ready to read ( ' {unit: 0} + IMPERATIVE_NT'to mark ( filename - external file ) as not ready to read ( ' {unit: 0} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FileIO_MarkReady({filename}, false); ' HEADING_NT'part four - adjectival definitions' {heading 3} {under: H3'part four - adjectival definitions'} {unit: 0} HEADING_NT'section 1 - miscellaneous useful adjectives' {heading 5} {under: H5'section 1 - miscellaneous useful adjectives'} {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} HEADING_NT'section 2 - adjectives for relations' {heading 5} {under: H5'section 2 - adjectives for relations'} {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} HEADING_NT'section 3 - adjectives for real numbers ( not for z-machine ' {heading 5} {under: H5'section 3 - adjectives for real numbers ( not for z-machine )'} {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} - RULE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} + IMPERATIVE_NT'definition' {unit: 0} ENDHERE_NT'basic inform' {unit: 0} INCLUSION_NT'include english language by graham nelson' HEADING_NT'version 1 of english language by graham nelson begins here' {heading 0} {under: H0'version 1 of english language by graham nelson begins here'} {includes: English Language by Graham Nelson v1 } {unit: 1} @@ -1691,25 +1691,25 @@ ROOT_NT VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 3} UNPARSED_NOUN_NT'story viewpoint variable' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'story_viewpoint' - RULE_NT'to say regarding ( item - an object )' {unit: 1} + IMPERATIVE_NT'to say regarding ( item - an object )' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RegardingSingleObject({item}); ' - RULE_NT'to say regarding ( n - a number )' {unit: 1} + IMPERATIVE_NT'to say regarding ( n - a number )' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RegardingNumber({N}); ' - RULE_NT'to say regarding list writer internals' {unit: 1} + IMPERATIVE_NT'to say regarding list writer internals' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RegardingLWI(); ' - RULE_NT'to say regarding ( d - a description of objects )' {unit: 1} + IMPERATIVE_NT'to say regarding ( d - a description of objects )' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-d' - RULE_NT'to decide if the prior naming context is plural' {unit: 1} + IMPERATIVE_NT'to decide if the prior naming context is plural' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ((prior_named_list >= 2) || (prior_named_noun && prior_n' HEADING_NT'section 2 - saying pronouns ( for interactive fiction langua' {heading 5} {under: H5'section 2 - saying pronouns ( for interactive fiction language element only )'} {unit: 1} - RULE_NT'to say we' {unit: 1} + IMPERATIVE_NT'to say we' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' @@ -1791,7 +1791,7 @@ ROOT_NT INVOCATION_NT'"they"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"they"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"they"' {kind: text} - RULE_NT'to say us' {unit: 1} + IMPERATIVE_NT'to say us' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' @@ -1873,7 +1873,7 @@ ROOT_NT INVOCATION_NT'"them"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"them"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"them"' {kind: text} - RULE_NT'to say ours' {unit: 1} + IMPERATIVE_NT'to say ours' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' @@ -1955,7 +1955,7 @@ ROOT_NT INVOCATION_NT'"theirs"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"theirs"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"theirs"' {kind: text} - RULE_NT'to say ourselves' {unit: 1} + IMPERATIVE_NT'to say ourselves' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' @@ -2037,7 +2037,7 @@ ROOT_NT INVOCATION_NT'"themselves"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"themselves"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"themselves"' {kind: text} - RULE_NT'to say our' {unit: 1} + IMPERATIVE_NT'to say our' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' @@ -2119,7 +2119,7 @@ ROOT_NT INVOCATION_NT'"their"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"their"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"their"' {kind: text} - RULE_NT'to say we' {unit: 1} + IMPERATIVE_NT'to say we' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' @@ -2201,7 +2201,7 @@ ROOT_NT INVOCATION_NT'"They"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"They"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"They"' {kind: text} - RULE_NT'to say us' {unit: 1} + IMPERATIVE_NT'to say us' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' @@ -2283,7 +2283,7 @@ ROOT_NT INVOCATION_NT'"Them"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"Them"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Them"' {kind: text} - RULE_NT'to say ours' {unit: 1} + IMPERATIVE_NT'to say ours' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' @@ -2365,7 +2365,7 @@ ROOT_NT INVOCATION_NT'"Theirs"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"Theirs"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Theirs"' {kind: text} - RULE_NT'to say ourselves' {unit: 1} + IMPERATIVE_NT'to say ourselves' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' @@ -2447,7 +2447,7 @@ ROOT_NT INVOCATION_NT'"Themselves"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"Themselves"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Themselves"' {kind: text} - RULE_NT'to say our' {unit: 1} + IMPERATIVE_NT'to say our' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the player' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the player' @@ -2530,21 +2530,21 @@ ROOT_NT RVALUE_CONTEXT_NT'"Their"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Their"' {kind: text} HEADING_NT'section 3 - further pronouns ( for interactive fiction langu' {heading 5} {under: H5'section 3 - further pronouns ( for interactive fiction language element only )'} {unit: 1} - RULE_NT'to say those' {unit: 1} + IMPERATIVE_NT'to say those' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say those in the accusative' {control structure: SAY} INVOCATION_LIST_SAY_NT'those in the accusative' INVOCATION_NT'those in the accusative' {phrase invoked: call} RVALUE_CONTEXT_NT'accusative' {token check to do: } {token to be parsed against: TEST_VALUE_NT'grammatical case'} {required: grammatical case} CONSTANT_NT'accusative' {kind: grammatical case} {instance: I18'accusative'[grammatical case]} {enumeration: 0}{meaning: {accusative = NAMED_CONSTANT_MC}} - RULE_NT'to say those' {unit: 1} + IMPERATIVE_NT'to say those' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say those in the nominative' {control structure: SAY} INVOCATION_LIST_SAY_NT'those in the nominative' INVOCATION_NT'those in the nominative' {phrase invoked: call} RVALUE_CONTEXT_NT'nominative' {token check to do: } {token to be parsed against: TEST_VALUE_NT'grammatical case'} {required: grammatical case} CONSTANT_NT'nominative' {kind: grammatical case} {instance: I17'nominative'[grammatical case]} {enumeration: 0}{meaning: {nominative = NAMED_CONSTANT_MC}} - RULE_NT'to say those in ( case - grammatical case )' {unit: 1} + IMPERATIVE_NT'to say those in ( case - grammatical case )' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the case is nominative' {colon_block_command} {indent: 1} @@ -2681,7 +2681,7 @@ ROOT_NT INVOCATION_NT'"that"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"that"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"that"' {kind: text} - RULE_NT'to say those in ( case - grammatical case )' {unit: 1} + IMPERATIVE_NT'to say those in ( case - grammatical case )' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the case is nominative' {colon_block_command} {indent: 1} @@ -2818,7 +2818,7 @@ ROOT_NT INVOCATION_NT'"That"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"That"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"That"' {kind: text} - RULE_NT'to say they' {unit: 1} + IMPERATIVE_NT'to say they' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -2884,7 +2884,7 @@ ROOT_NT INVOCATION_NT'"it"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"it"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"it"' {kind: text} - RULE_NT'to say they' {unit: 1} + IMPERATIVE_NT'to say they' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -2950,7 +2950,7 @@ ROOT_NT INVOCATION_NT'"It"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"It"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"It"' {kind: text} - RULE_NT'to say their' {unit: 1} + IMPERATIVE_NT'to say their' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3016,7 +3016,7 @@ ROOT_NT INVOCATION_NT'"its"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"its"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"its"' {kind: text} - RULE_NT'to say their' {unit: 1} + IMPERATIVE_NT'to say their' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3082,7 +3082,7 @@ ROOT_NT INVOCATION_NT'"Its"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"Its"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Its"' {kind: text} - RULE_NT'to say them' {unit: 1} + IMPERATIVE_NT'to say them' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3148,7 +3148,7 @@ ROOT_NT INVOCATION_NT'"it"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"it"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"it"' {kind: text} - RULE_NT'to say them' {unit: 1} + IMPERATIVE_NT'to say them' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3214,7 +3214,7 @@ ROOT_NT INVOCATION_NT'"It"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"It"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"It"' {kind: text} - RULE_NT'to say theirs' {unit: 1} + IMPERATIVE_NT'to say theirs' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3280,7 +3280,7 @@ ROOT_NT INVOCATION_NT'"its"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"its"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"its"' {kind: text} - RULE_NT'to say theirs' {unit: 1} + IMPERATIVE_NT'to say theirs' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3346,7 +3346,7 @@ ROOT_NT INVOCATION_NT'"Its"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"Its"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Its"' {kind: text} - RULE_NT'to say themselves' {unit: 1} + IMPERATIVE_NT'to say themselves' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3412,7 +3412,7 @@ ROOT_NT INVOCATION_NT'"itself"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"itself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"itself"' {kind: text} - RULE_NT'to say themselves' {unit: 1} + IMPERATIVE_NT'to say themselves' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3478,7 +3478,7 @@ ROOT_NT INVOCATION_NT'"Itself"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"Itself"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Itself"' {kind: text} - RULE_NT'to say they're' {unit: 1} + IMPERATIVE_NT'to say they're' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3547,7 +3547,7 @@ ROOT_NT CODE_BLOCK_NT'say "['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say they're' {unit: 1} + IMPERATIVE_NT'to say they're' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3616,7 +3616,7 @@ ROOT_NT CODE_BLOCK_NT'say "['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say it' {unit: 1} + IMPERATIVE_NT'to say it' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]It"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' @@ -3627,7 +3627,7 @@ ROOT_NT INVOCATION_NT'"It"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"It"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"It"' {kind: text} - RULE_NT'to say there' {unit: 1} + IMPERATIVE_NT'to say there' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]There"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' @@ -3638,7 +3638,7 @@ ROOT_NT INVOCATION_NT'"There"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"There"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"There"' {kind: text} - RULE_NT'to say it' {unit: 1} + IMPERATIVE_NT'to say it' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]it"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' @@ -3649,7 +3649,7 @@ ROOT_NT INVOCATION_NT'"it"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"it"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"it"' {kind: text} - RULE_NT'to say there' {unit: 1} + IMPERATIVE_NT'to say there' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]there"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' @@ -3660,7 +3660,7 @@ ROOT_NT INVOCATION_NT'"there"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"there"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"there"' {kind: text} - RULE_NT'to say it's' {unit: 1} + IMPERATIVE_NT'to say it's' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]It['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' @@ -3673,7 +3673,7 @@ ROOT_NT CONSTANT_NT'"It"' {kind: text} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say there's' {unit: 1} + IMPERATIVE_NT'to say there's' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]There['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' @@ -3686,7 +3686,7 @@ ROOT_NT CONSTANT_NT'"There"' {kind: text} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say it's' {unit: 1} + IMPERATIVE_NT'to say it's' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]it['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' @@ -3699,7 +3699,7 @@ ROOT_NT CONSTANT_NT'"it"' {kind: text} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say there's' {unit: 1} + IMPERATIVE_NT'to say there's' {unit: 1} CODE_BLOCK_NT CODE_BLOCK_NT'say "[regarding nothing]there['re]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'regarding nothing' @@ -3712,7 +3712,7 @@ ROOT_NT CONSTANT_NT'"there"' {kind: text} INVOCATION_LIST_SAY_NT''re' INVOCATION_NT''re' {say verb: } {say verb: } - RULE_NT'to say possessive' {unit: 1} + IMPERATIVE_NT'to say possessive' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3758,7 +3758,7 @@ ROOT_NT INVOCATION_NT'"s"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"s"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"s"' {kind: text} - RULE_NT'to say possessive' {unit: 1} + IMPERATIVE_NT'to say possessive' {unit: 1} CODE_BLOCK_NT INVOCATION_LIST_NT'let the item be the prior named object' {indent: 1} INVOCATION_NT'let the item be the prior named object' {phrase invoked: call} @@ -3960,9 +3960,9 @@ ROOT_NT VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to wear' UNPARSED_NOUN_NT'wearing relation' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} SENTENCE_NT'the verb to be able to see means the visibility relation' {unit: 2} {classified} VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to be able to see' @@ -3971,16 +3971,16 @@ ROOT_NT VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to be able to touch' UNPARSED_NOUN_NT'touchability relation' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} SENTENCE_NT'the verb to conceal ( he conceals , they conceal , he concea' {unit: 2} {classified} VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to conceal ( he conceals , they conceal , he concealed , it ' UNPARSED_NOUN_NT'concealment relation' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} - RULE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} HEADING_NT'chapter 2 - kinds for the physical world' {heading 4} {under: H4'chapter 2 - kinds for the physical world'} {unit: 2} HEADING_NT'section 1 - kind definitions' {heading 5} {under: H5'section 1 - kind definitions'} {unit: 2} SENTENCE_NT'a room is a kind' {unit: 2} {classified} @@ -4098,7 +4098,7 @@ ROOT_NT VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to be adjacent to' UNPARSED_NOUN_NT'reversed adjacency relation' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'definition' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} SENTENCE_NT'the verb to be regionally in means the reversed regional-con' {unit: 2} {classified} VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to be regionally in' @@ -5580,7 +5580,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the position player in model world rule' UNPARSED_NOUN_NT'first in the startup rulebook' - RULE_NT'this is the declare everything initially unmentioned rule' {unit: 2} + IMPERATIVE_NT'this is the declare everything initially unmentioned rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with item running through things' {colon_block_command} {indent: 1} @@ -5632,7 +5632,7 @@ ROOT_NT VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 2} UNPARSED_NOUN_NT'position player in model world rule' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'POSITION_PLAYER_IN_MODEL_R' - RULE_NT'this is the start in the correct scenes rule' {unit: 2} + IMPERATIVE_NT'this is the start in the correct scenes rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the scene changing rules' INVOCATION_NT'follow the scene changing rules' {phrase invoked: call} @@ -5654,34 +5654,34 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the initial room description rule' UNPARSED_NOUN_NT'in the startup rulebook' - RULE_NT'this is the when play begins stage rule' {unit: 2} + IMPERATIVE_NT'this is the when play begins stage rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the when play begins rulebook' INVOCATION_NT'follow the when play begins rulebook' {phrase invoked: call} RVALUE_CONTEXT_NT'when play begins rulebook' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'when play begins rulebook' {kind: rulebook} {rulebook: when play begins}{meaning: {when play begins rulebook = RULEBOOK_MC}} - RULE_NT'this is the fix baseline scoring rule' {unit: 2} + IMPERATIVE_NT'this is the fix baseline scoring rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the last notified score is the score' {control structure: NOW} CONDITION_CONTEXT_NT'the last notified score is the score' - RULE_NT'this is the display banner rule' {unit: 2} + IMPERATIVE_NT'this is the display banner rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "[banner text]"' {control structure: SAY} INVOCATION_LIST_SAY_NT'banner text' INVOCATION_NT'banner text' {phrase invoked: call} - RULE_NT'this is the initial room description rule' {unit: 2} + IMPERATIVE_NT'this is the initial room description rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'try looking' INVOCATION_NT'try looking' {phrase invoked: call} RVALUE_CONTEXT_NT'looking' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'looking' {kind: action} {explicit action: } - RULE_NT'a first turn sequence rule ( this is the every turn stage ru' {unit: 2} + IMPERATIVE_NT'a first turn sequence rule ( this is the every turn stage ru' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the every turn rules' INVOCATION_NT'follow the every turn rules' {phrase invoked: call} RVALUE_CONTEXT_NT'every turn rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'every turn rules' {kind: rulebook} {rulebook: every turn}{meaning: {every turn rules = RULEBOOK_MC}} - RULE_NT'a first turn sequence rule' {unit: 2} + IMPERATIVE_NT'a first turn sequence rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the scene changing rules' INVOCATION_NT'follow the scene changing rules' {phrase invoked: call} @@ -5711,7 +5711,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the update chronological records rule' UNPARSED_NOUN_NT'in the turn sequence rulebook' - RULE_NT'a last turn sequence rule' {unit: 2} + IMPERATIVE_NT'a last turn sequence rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the scene changing rules' INVOCATION_NT'follow the scene changing rules' {phrase invoked: call} @@ -5729,7 +5729,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the notify score changes rule' UNPARSED_NOUN_NT'last in the turn sequence rulebook' - RULE_NT'this is the notify score changes rule' {unit: 2} + IMPERATIVE_NT'this is the notify score changes rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the score is not the last notified score' {colon_block_command} {indent: 1} @@ -5785,13 +5785,13 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the ask the final question rule' UNPARSED_NOUN_NT'last in the shutdown rulebook' - RULE_NT'this is the when play ends stage rule' {unit: 2} + IMPERATIVE_NT'this is the when play ends stage rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the when play ends rulebook' INVOCATION_NT'follow the when play ends rulebook' {phrase invoked: call} RVALUE_CONTEXT_NT'when play ends rulebook' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'when play ends rulebook' {kind: rulebook} {rulebook: when play ends}{meaning: {when play ends rulebook = RULEBOOK_MC}} - RULE_NT'this is the print player's obituary rule' {unit: 2} + IMPERATIVE_NT'this is the print player's obituary rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'carry out the printing the player's obituary activity' INVOCATION_NT'carry out the printing the player's obituary activity' {phrase invoked: call} @@ -5871,7 +5871,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the end action-processing in success rule' UNPARSED_NOUN_NT'last in the action-processing rules' - RULE_NT'this is the set pronouns from items from multiple object lis' {unit: 2} + IMPERATIVE_NT'this is the set pronouns from items from multiple object lis' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the current item from the multiple object list is not not' {colon_block_command} @@ -5883,7 +5883,7 @@ ROOT_NT INVOCATION_NT'set pronouns from the current item from the multiple object ' {phrase invoked: call} RVALUE_CONTEXT_NT'current item from the multiple object list' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'current item from the multiple object list' {nonlocal: 'current item from the multiple object list'(var)object}{meaning: {current item from the multiple object list = VARIABLE_MC}} - RULE_NT'this is the announce items from multiple object lists rule' {unit: 2} + IMPERATIVE_NT'this is the announce items from multiple object lists rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the current item from the multiple object list is not not' {colon_block_command} @@ -5896,19 +5896,19 @@ ROOT_NT INVOCATION_NT'"[current item from the multiple object list]: [run paragrap' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"[current item from the multiple object list]: [run paragrap' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[current item from the multiple object list]: [run paragrap' {kind: text} - RULE_NT'this is the before stage rule' {unit: 2} + IMPERATIVE_NT'this is the before stage rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the before rules' INVOCATION_NT'abide by the before rules' {phrase invoked: call} RVALUE_CONTEXT_NT'before rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'before rules' {kind: rulebook} {rulebook: before}{meaning: {before rules = RULEBOOK_MC}} - RULE_NT'this is the instead stage rule' {unit: 2} + IMPERATIVE_NT'this is the instead stage rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the instead rules' INVOCATION_NT'abide by the instead rules' {phrase invoked: call} RVALUE_CONTEXT_NT'instead rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'instead rules' {kind: rulebook} {rulebook: instead}{meaning: {instead rules = RULEBOOK_MC}} - RULE_NT'this is the end action-processing in success rule' {unit: 2} + IMPERATIVE_NT'this is the end action-processing in success rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' INVOCATION_NT'rule succeeds' {phrase invoked: call} @@ -5944,7 +5944,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the work out details of specific action rule' UNPARSED_NOUN_NT'first in the specific action-processing rules' - RULE_NT'a specific action-processing rule ( this is the investigate ' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the investigate ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the player's action awareness rules' INVOCATION_NT'follow the player's action awareness rules' {phrase invoked: call} @@ -5964,19 +5964,19 @@ ROOT_NT CODE_BLOCK_NT'otherwise' {results_from_splitting} {control structure: O} INVOCATION_LIST_NT'now within the player's sight is false' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'within the player's sight is false' - RULE_NT'a specific action-processing rule ( this is the check stage ' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the check stage ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'anonymously abide by the specific check rulebook' INVOCATION_NT'anonymously abide by the specific check rulebook' {phrase invoked: call} RVALUE_CONTEXT_NT'specific check rulebook' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} NONLOCAL_VARIABLE_NT'specific check rulebook' {nonlocal: 'specific check rulebook'(var)rulebook} - RULE_NT'a specific action-processing rule ( this is the carry out st' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the carry out st' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'follow the specific carry out rulebook' INVOCATION_NT'follow the specific carry out rulebook' {phrase invoked: call} RVALUE_CONTEXT_NT'specific carry out rulebook' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} NONLOCAL_VARIABLE_NT'specific carry out rulebook' {nonlocal: 'specific carry out rulebook'(var)rulebook} - RULE_NT'a specific action-processing rule ( this is the after stage ' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the after stage ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if action in world is true' {colon_block_command} @@ -5988,7 +5988,7 @@ ROOT_NT INVOCATION_NT'abide by the after rules' {phrase invoked: call} RVALUE_CONTEXT_NT'after rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'after rules' {kind: rulebook} {rulebook: after}{meaning: {after rules = RULEBOOK_MC}} - RULE_NT'a specific action-processing rule ( this is the investigate ' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the investigate ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if within the player's sight is false' {colon_block_command} {indent: 1} @@ -6011,7 +6011,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'now within the player's sight is true' {results_from_splitting} {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'within the player's sight is true' - RULE_NT'a specific action-processing rule ( this is the report stage' {unit: 2} + IMPERATIVE_NT'a specific action-processing rule ( this is the report stage' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if within the player's sight is true and action keeping sile' {colon_block_command} @@ -6025,7 +6025,7 @@ ROOT_NT INVOCATION_NT'follow the specific report rulebook' {phrase invoked: call} RVALUE_CONTEXT_NT'specific report rulebook' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} NONLOCAL_VARIABLE_NT'specific report rulebook' {nonlocal: 'specific report rulebook'(var)rulebook} - RULE_NT'the last specific action-processing rule' {unit: 2} + IMPERATIVE_NT'the last specific action-processing rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' INVOCATION_NT'rule succeeds' {phrase invoked: call} @@ -6033,7 +6033,7 @@ ROOT_NT VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 2} UNPARSED_NOUN_NT'work out details of specific action rule' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'WORK_OUT_DETAILS_OF_SPECIFIC_R' - RULE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} + IMPERATIVE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} @@ -6043,7 +6043,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' {results_from_splitting} {indent: 1} INVOCATION_NT'rule succeeds' {phrase invoked: call} - RULE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} + IMPERATIVE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is not the actor and the player can see the ac' {colon_block_command} @@ -6055,7 +6055,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' {results_from_splitting} {indent: 1} INVOCATION_NT'rule succeeds' {phrase invoked: call} - RULE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} + IMPERATIVE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a thing and the player can see the noun' {colon_block_command} @@ -6067,7 +6067,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' {results_from_splitting} {indent: 1} INVOCATION_NT'rule succeeds' {phrase invoked: call} - RULE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} + IMPERATIVE_NT'a player's action awareness rule ( this is the player aware ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is a thing and the player can see the sec' {colon_block_command} @@ -6120,7 +6120,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the can't act in the dark rule' UNPARSED_NOUN_NT'last in the visibility rules' - RULE_NT'the last visibility rule ( this is the can't act in the dark' {unit: 2} + IMPERATIVE_NT'the last visibility rule ( this is the can't act in the dark' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if in darkness' {colon_block_command} @@ -6133,7 +6133,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'rule succeeds' {results_from_splitting} {indent: 1} INVOCATION_NT'rule succeeds' {phrase invoked: call} - RULE_NT'does the player mean taking something which is carried by th' {unit: 2} + IMPERATIVE_NT'does the player mean taking something which is carried by th' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it is very unlikely' HEADING_NT'section 6 - adjectival definitions' {heading 5} {under: H5'section 6 - adjectival definitions'} {unit: 2} @@ -6160,7 +6160,7 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'text' {indefinite 'a' n/m/f nom/acc s} UNPARSED_NOUN_NT'description' - RULE_NT'when a scene ( called the event ) begins ( this is the scene' {unit: 2} + IMPERATIVE_NT'when a scene ( called the event ) begins ( this is the scene' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the description of the event is not ""' {colon_block_command} @@ -6453,7 +6453,7 @@ ROOT_NT UNPARSED_NOUN_NT'standard issuing the response text rule' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'STANDARD_RESPONSE_ISSUING_R' HEADING_NT'section 2 - naming and listing' {heading 5} {under: H5'section 2 - naming and listing'} {unit: 2} - RULE_NT'before printing the name of a thing ( called the item being ' {unit: 2} + IMPERATIVE_NT'before printing the name of a thing ( called the item being ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if expanding text for comparison purposes' {colon_block_command} @@ -6472,7 +6472,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-activity} UNPARSED_NOUN_NT'printing a number of something ( documented at act_pan )' UNPARSED_NOUN_NT'an activity' - RULE_NT'rule for printing a number of something ( called the item ) ' {unit: 2} + IMPERATIVE_NT'rule for printing a number of something ( called the item ) ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "[listing group size in words] "' {control structure: SAY} INVOCATION_LIST_SAY_NT'listing group size in words' @@ -6549,7 +6549,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the look around once light available rule' UNPARSED_NOUN_NT'last in for printing the announcement of light' - RULE_NT'this is the look around once light available rule' {unit: 2} + IMPERATIVE_NT'this is the look around once light available rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'try looking' INVOCATION_NT'try looking' {phrase invoked: call} @@ -6611,30 +6611,30 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-activity} UNPARSED_NOUN_NT'implicitly taking something ( documented at act_implicitly )' UNPARSED_NOUN_NT'an activity' - RULE_NT'rule for deciding whether all includes scenery while taking ' {unit: 2} + IMPERATIVE_NT'rule for deciding whether all includes scenery while taking ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' - RULE_NT'rule for deciding whether all includes people while taking o' {unit: 2} + IMPERATIVE_NT'rule for deciding whether all includes people while taking o' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' - RULE_NT'rule for deciding whether all includes fixed in place things' {unit: 2} + IMPERATIVE_NT'rule for deciding whether all includes fixed in place things' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' - RULE_NT'rule for deciding whether all includes things enclosed by th' {unit: 2} + IMPERATIVE_NT'rule for deciding whether all includes things enclosed by th' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' - RULE_NT'rule for deciding whether all includes a person while droppi' {unit: 2} + IMPERATIVE_NT'rule for deciding whether all includes a person while droppi' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' - RULE_NT'rule for supplying a missing noun while an actor smelling ( ' {unit: 2} + IMPERATIVE_NT'rule for supplying a missing noun while an actor smelling ( ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is the touchability ceiling of the player' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is the touchability ceiling of the player' - RULE_NT'rule for supplying a missing noun while an actor listening (' {unit: 2} + IMPERATIVE_NT'rule for supplying a missing noun while an actor listening (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is the touchability ceiling of the player' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is the touchability ceiling of the player' - RULE_NT'rule for supplying a missing noun while an actor going ( thi' {unit: 2} + IMPERATIVE_NT'rule for supplying a missing noun while an actor going ( thi' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "You'll have to say which compass direction to go in." (' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You'll have to say which compass direction to go in." ( a )' @@ -6737,7 +6737,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the standard respond to final question rule' UNPARSED_NOUN_NT'last in for handling the final question' - RULE_NT'this is the print the final prompt rule' {unit: 2} + IMPERATIVE_NT'this is the print the final prompt rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "> [run paragraph on]" ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"> [run paragraph on]" ( a )' @@ -6749,7 +6749,7 @@ ROOT_NT UNPARSED_NOUN_NT'read the final answer rule' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'READ_FINAL_ANSWER_R' HEADING_NT'section 5 - the final question' {heading 5} {under: H5'section 5 - the final question'} {unit: 2} - RULE_NT'this is the print the final question rule' {unit: 2} + IMPERATIVE_NT'this is the print the final question rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let named options count be 0' {indent: 1} INVOCATION_NT'let named options count be 0' {phrase invoked: call} @@ -6918,7 +6918,7 @@ ROOT_NT INVOCATION_NT'", "' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'", "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", "' {kind: text} - RULE_NT'this is the standard respond to final question rule' {unit: 2} + IMPERATIVE_NT'this is the standard respond to final question rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through the table of final question options' {colon_block_command} {indent: 1} @@ -6999,7 +6999,7 @@ ROOT_NT TABLE_NT'table of final question options final question wording only ' {unit: 2} HEADING_NT'section 7 - locale descriptions - unindexed' {heading 5} {under: H5'section 7 - locale descriptions - unindexed'} {unit: 2} TABLE_NT'table of locale priorities notable-object ( an object ) loca' {unit: 2} - RULE_NT'to describe locale for ( o - object )' {unit: 2} + IMPERATIVE_NT'to describe locale for ( o - object )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'carry out the printing the locale description activity with ' INVOCATION_NT'carry out the printing the locale description activity with ' {phrase invoked: call} {kind variable declarations: K=object} @@ -7007,7 +7007,7 @@ ROOT_NT CONSTANT_NT'printing the locale description' {kind: activity on objects} {activity: printing the locale description}{meaning: {printing the locale description = ACTIVITY_MC}} RVALUE_CONTEXT_NT'o' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'o' {local: LV"o"-object object} - RULE_NT'to set the/-- locale priority of ( o - an object ) to ( n - ' {unit: 2} + IMPERATIVE_NT'to set the/-- locale priority of ( o - an object ) to ( n - ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if o is a thing' {colon_block_command} {indent: 1} @@ -7080,7 +7080,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'locale paragraph count' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'locale paragraph count' {nonlocal: 'locale paragraph count'(var)number}} {created here} COMMON_NOUN_NT'number that varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=numbers variable-pointer(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before printing the locale description ( this is the initial' {unit: 2} + IMPERATIVE_NT'before printing the locale description ( this is the initial' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the locale paragraph count is 0' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the locale paragraph count is 0' @@ -7092,7 +7092,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'blank out the whole row' {indent: 2} INVOCATION_NT'blank out the whole row' {phrase invoked: call} - RULE_NT'before printing the locale description ( this is the find no' {unit: 2} + IMPERATIVE_NT'before printing the locale description ( this is the find no' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the domain be the parameter-object' INVOCATION_NT'let the domain be the parameter-object' {phrase invoked: call} @@ -7108,7 +7108,7 @@ ROOT_NT LOCAL_VARIABLE_NT'domain' {local: LV"domain"-object object} INVOCATION_LIST_NT'continue the activity' INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing the locale description ( this is the interestin' {unit: 2} + IMPERATIVE_NT'for printing the locale description ( this is the interestin' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the domain be the parameter-object' {indent: 1} INVOCATION_NT'let the domain be the parameter-object' {phrase invoked: call} @@ -7137,7 +7137,7 @@ ROOT_NT CONSTANT_NT {kind: nothing valued table column} {table column: 'notable-object'}{meaning: {notable-object = TABLE_COLUMN_MC}} INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing the locale description ( this is the you-can-al' {unit: 2} + IMPERATIVE_NT'for printing the locale description ( this is the you-can-al' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the domain be the parameter-object' {indent: 1} INVOCATION_NT'let the domain be the parameter-object' {phrase invoked: call} @@ -7382,7 +7382,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-activity} UNPARSED_NOUN_NT'choosing notable locale objects of something ( documented at' UNPARSED_NOUN_NT'an activity' - RULE_NT'for choosing notable locale objects ( this is the standard n' {unit: 2} + IMPERATIVE_NT'for choosing notable locale objects ( this is the standard n' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the domain be the parameter-object' {indent: 1} INVOCATION_NT'let the domain be the parameter-object' {phrase invoked: call} @@ -7420,7 +7420,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-activity} UNPARSED_NOUN_NT'printing a locale paragraph about something ( documented at ' UNPARSED_NOUN_NT'an activity' - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item encloses the player' {colon_block_command} @@ -7436,7 +7436,7 @@ ROOT_NT CONSTANT_NT'0' {kind: number} {explicit literal} {number: 0} INVOCATION_LIST_NT'continue the activity' INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is scenery' {colon_block_command} @@ -7452,7 +7452,7 @@ ROOT_NT CONSTANT_NT'0' {kind: number} {explicit literal} {number: 0} INVOCATION_LIST_NT'continue the activity' INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is undescribed' {colon_block_command} {indent: 1} @@ -7468,7 +7468,7 @@ ROOT_NT CONSTANT_NT'0' {kind: number} {explicit literal} {number: 0} INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is not mentioned' {colon_block_command} @@ -7482,7 +7482,7 @@ ROOT_NT LOCAL_VARIABLE_NT'item' {local: LV"item"-thing thing} INVOCATION_LIST_NT'continue the activity' INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is not mentioned' {colon_block_command} {indent: 1} @@ -7530,7 +7530,7 @@ ROOT_NT INVOCATION_NT'conditional paragraph break' {phrase invoked: call} INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is not mentioned' {colon_block_command} {indent: 1} @@ -7608,7 +7608,7 @@ ROOT_NT CONDITION_CONTEXT_NT'the item is mentioned' INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a supporter ( called t' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a supporter ( called t' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with item running through not handled things on the t' {colon_block_command} {indent: 1} @@ -7642,8 +7642,8 @@ ROOT_NT INVOCATION_NT'paragraph break' {phrase invoked: call} INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'definition' {unit: 2} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'definition' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is scenery and the item does not enclose the pla' {colon_block_command} {indent: 1} @@ -7705,7 +7705,7 @@ ROOT_NT INVOCATION_NT'paragraph break' {phrase invoked: call} INVOCATION_LIST_NT'continue the activity' {indent: 1} INVOCATION_NT'continue the activity' {phrase invoked: call} - RULE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} + IMPERATIVE_NT'for printing a locale paragraph about a thing ( called the i' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the item is mentioned and the item is not undescribed and' {colon_block_command} {indent: 1} @@ -7937,7 +7937,7 @@ ROOT_NT PROPER_NOUN_NT'Taking an inventory of one's immediate possessions: the thin' {refined} {eval: CONSTANT_NT'Taking an inventory of one's immediate possessions: the thin' {kind: text}} - RULE_NT'carry out taking inventory ( this is the print empty invento' {unit: 2} + IMPERATIVE_NT'carry out taking inventory ( this is the print empty invento' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the first thing held by the player is nothing' {colon_block_command} @@ -7951,7 +7951,7 @@ ROOT_NT RVALUE_CONTEXT_NT'"[We] [are] carrying nothing." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [are] carrying nothing." ( a )' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out taking inventory ( this is the print standard inve' {unit: 2} + IMPERATIVE_NT'carry out taking inventory ( this is the print standard inve' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [are] carrying:[line break]" ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [are] carrying:[line break]" ( a )' @@ -7962,7 +7962,7 @@ ROOT_NT INVOCATION_NT'list the contents of the player' {phrase invoked: call} {phrase options invoked: with newlines , indented , including contents , giving inventory information , with extra indentation} RVALUE_CONTEXT_NT'player' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'player' {nonlocal: 'player'(var)person}{meaning: {player = VARIABLE_MC}} - RULE_NT'report an actor taking inventory ( this is the report other ' {unit: 2} + IMPERATIVE_NT'report an actor taking inventory ( this is the report other ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the player and the action is not silent' {colon_block_command} {indent: 1} @@ -7996,7 +7996,7 @@ ROOT_NT PROPER_NOUN_NT'The taking action is the only way an action in the Standard ' {refined} {eval: CONSTANT_NT'The taking action is the only way an action in the Standard ' {kind: text}} - RULE_NT'check an actor taking ( this is the can't take yourself rule' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take yourself rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the noun' {colon_block_command} {indent: 1} @@ -8017,7 +8017,7 @@ ROOT_NT CONSTANT_NT'"[We] [are] always self-possessed." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take other people ' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take other people ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} @@ -8038,7 +8038,7 @@ ROOT_NT CONSTANT_NT'"I don't suppose [the noun] [would care] for that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take component par' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take component par' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is part of something ( called the whole )' {colon_block_command} {indent: 1} @@ -8059,7 +8059,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][Those] [seem] to be a part of [the who' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take people's poss' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take people's poss' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the local ceiling be the common ancestor of the actor wi' {indent: 1} INVOCATION_NT'let the local ceiling be the common ancestor of the actor wi' {phrase invoked: call} @@ -8120,7 +8120,7 @@ ROOT_NT INVOCATION_NT'not-counting-parts holder of the owner' {phrase invoked: call} {resulting: object} RVALUE_CONTEXT_NT'owner' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'owner' {local: LV"owner"-object object} - RULE_NT'check an actor taking ( this is the can't take items out of ' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take items out of ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let h be the noun' {indent: 1} INVOCATION_NT'let h be the noun' {phrase invoked: call} @@ -8165,7 +8165,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][Those] [aren't] available." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take what you're i' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take what you're i' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the local ceiling be the common ancestor of the actor wi' {indent: 1} INVOCATION_NT'let the local ceiling be the common ancestor of the actor wi' {phrase invoked: call} @@ -8203,7 +8203,7 @@ ROOT_NT [if noun is a supporter]off[otherw' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take what's alread' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take what's alread' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is carrying the noun or the actor is wearing th' {colon_block_command} {indent: 1} @@ -8226,7 +8226,7 @@ ROOT_NT CONSTANT_NT'"[We] already [have] [regarding the noun][those]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take scenery rule ' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take scenery rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is scenery' {colon_block_command} {indent: 1} @@ -8247,7 +8247,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They're] hardly portable." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can only take things rul' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can only take things rul' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not a thing' {colon_block_command} {indent: 1} @@ -8268,7 +8268,7 @@ ROOT_NT CONSTANT_NT'"[We] [cannot] carry [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't take what's fixed ' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't take what's fixed ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is fixed in place' {colon_block_command} {indent: 1} @@ -8289,7 +8289,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They're] fixed in place." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the use player's holdall to ' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the use player's holdall to ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things carried by the actor is at least the' {colon_block_command} {indent: 1} @@ -8360,7 +8360,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {indent: 5} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking ( this is the can't exceed carrying ca' {unit: 2} + IMPERATIVE_NT'check an actor taking ( this is the can't exceed carrying ca' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things carried by the actor is at least the' {colon_block_command} {indent: 1} @@ -8381,7 +8381,7 @@ ROOT_NT CONSTANT_NT'"[We]['re] carrying too many things already." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor taking ( this is the standard taking rule' {unit: 2} + IMPERATIVE_NT'carry out an actor taking ( this is the standard taking rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the actor carries the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the actor carries the noun' @@ -8393,7 +8393,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is handled' {results_from_splitting} {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the noun is handled' - RULE_NT'report an actor taking ( this is the standard report taking ' {unit: 2} + IMPERATIVE_NT'report an actor taking ( this is the standard report taking ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -8437,7 +8437,7 @@ ROOT_NT PROPER_NOUN_NT'Removing is not really an action in its own right. Whereas t' {refined} {eval: CONSTANT_NT'Removing is not really an action in its own right. Whereas t' {kind: text}} - RULE_NT'check an actor removing something from ( this is the can't r' {unit: 2} + IMPERATIVE_NT'check an actor removing something from ( this is the can't r' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the noun is not the second noun' {colon_block_command} {indent: 1} @@ -8458,7 +8458,7 @@ ROOT_NT CONSTANT_NT'"But [regarding the noun][they] [aren't] there now." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor removing something from ( this is the can't r' {unit: 2} + IMPERATIVE_NT'check an actor removing something from ( this is the can't r' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the owner be the holder of the noun' {indent: 1} INVOCATION_NT'let the owner be the holder of the noun' {phrase invoked: call} @@ -8501,7 +8501,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][Those] [seem] to belong to [the owner]' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor removing something from ( this is the convert' {unit: 2} + IMPERATIVE_NT'check an actor removing something from ( this is the convert' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to the taking action on the noun' INVOCATION_NT'convert to the taking action on the noun' {phrase invoked: call} @@ -8529,7 +8529,7 @@ ROOT_NT PROPER_NOUN_NT'Dropping is one of five actions by which an actor can get ri' {refined} {eval: CONSTANT_NT'Dropping is one of five actions by which an actor can get ri' {kind: text}} - RULE_NT'check an actor dropping ( this is the can't drop yourself ru' {unit: 2} + IMPERATIVE_NT'check an actor dropping ( this is the can't drop yourself ru' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is the actor' {colon_block_command} {indent: 1} @@ -8550,7 +8550,7 @@ ROOT_NT CONSTANT_NT'"[We] [lack] the dexterity." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor dropping something which is part of the actor' {unit: 2} + IMPERATIVE_NT'check an actor dropping something which is part of the actor' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -8565,7 +8565,7 @@ ROOT_NT CONSTANT_NT'"[We] [can't drop] part of [ourselves]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor dropping ( this is the can't drop what's alre' {unit: 2} + IMPERATIVE_NT'check an actor dropping ( this is the can't drop what's alre' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is in the holder of the actor' {colon_block_command} {indent: 1} @@ -8586,7 +8586,7 @@ ROOT_NT CONSTANT_NT'"[The noun] [are] already here." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor dropping ( this is the can't drop what's not ' {unit: 2} + IMPERATIVE_NT'check an actor dropping ( this is the can't drop what's not ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is carrying the noun' {indent: 1} {colon_block_command} @@ -8617,7 +8617,7 @@ ROOT_NT CONSTANT_NT'"[We] [haven't] got [regarding the noun][those]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor dropping ( this is the can't drop clothes bei' {unit: 2} + IMPERATIVE_NT'check an actor dropping ( this is the can't drop clothes bei' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} @@ -8648,7 +8648,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor dropping ( this is the can't drop if this exc' {unit: 2} + IMPERATIVE_NT'check an actor dropping ( this is the can't drop if this exc' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the receptacle be the holder of the actor' {indent: 1} INVOCATION_NT'let the receptacle be the holder of the actor' {phrase invoked: call} @@ -8729,11 +8729,11 @@ ROOT_NT CONSTANT_NT'"[There] [are] no more room in [the receptacle]." ( b )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 4} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor dropping ( this is the standard dropping ' {unit: 2} + IMPERATIVE_NT'carry out an actor dropping ( this is the standard dropping ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is in the holder of the actor' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is in the holder of the actor' - RULE_NT'report an actor dropping ( this is the standard report dropp' {unit: 2} + IMPERATIVE_NT'report an actor dropping ( this is the standard report dropp' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -8777,7 +8777,7 @@ ROOT_NT PROPER_NOUN_NT'By this action, an actor puts something he is holding on top' {refined} {eval: CONSTANT_NT'By this action, an actor puts something he is holding on top' {kind: text}} - RULE_NT'check an actor putting something on ( this is the convert pu' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the convert pu' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is down or the actor is on the second nou' {colon_block_command} @@ -8793,7 +8793,7 @@ ROOT_NT CONSTANT_NT'dropping action' {kind: action name} {action name: dropping}{meaning: {dropping action = MISCELLANEOUS_MC}} RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is carrying the noun' {colon_block_command} @@ -8827,7 +8827,7 @@ ROOT_NT INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'stop the action' INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the noun-cpc be the component parts core of the noun' {indent: 1} INVOCATION_NT'let the noun-cpc be the component parts core of the noun' {phrase invoked: call} @@ -8880,7 +8880,7 @@ ROOT_NT CONSTANT_NT'"[We] [can't put] something on top of itself." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a supporter' {colon_block_command} {indent: 1} @@ -8901,7 +8901,7 @@ ROOT_NT CONSTANT_NT'"Putting things on [the second noun] [would achieve] nothing' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} @@ -8932,7 +8932,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} + IMPERATIVE_NT'check an actor putting something on ( this is the can't put ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun provides the property carrying capacity' {colon_block_command} {indent: 1} @@ -8959,11 +8959,11 @@ ROOT_NT CONSTANT_NT'"[There] [are] no more room on [the second noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor putting something on ( this is the standa' {unit: 2} + IMPERATIVE_NT'carry out an actor putting something on ( this is the standa' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is on the second noun' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is on the second noun' - RULE_NT'report an actor putting something on ( this is the concise r' {unit: 2} + IMPERATIVE_NT'report an actor putting something on ( this is the concise r' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -8994,7 +8994,7 @@ ROOT_NT INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor putting something on ( this is the standard ' {unit: 2} + IMPERATIVE_NT'report an actor putting something on ( this is the standard ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -9026,7 +9026,7 @@ ROOT_NT PROPER_NOUN_NT'By this action, an actor puts something he is holding into a' {refined} {eval: CONSTANT_NT'By this action, an actor puts something he is holding into a' {kind: text}} - RULE_NT'check an actor inserting something into ( this is the conver' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the conver' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is down or the actor is in the second nou' {colon_block_command} @@ -9042,7 +9042,7 @@ ROOT_NT CONSTANT_NT'dropping action' {kind: action name} {action name: dropping}{meaning: {dropping action = MISCELLANEOUS_MC}} RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is carrying the noun' {colon_block_command} @@ -9076,7 +9076,7 @@ ROOT_NT INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'stop the action' INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the noun-cpc be the component parts core of the noun' {indent: 1} INVOCATION_NT'let the noun-cpc be the component parts core of the noun' {phrase invoked: call} @@ -9129,7 +9129,7 @@ ROOT_NT CONSTANT_NT'"[We] [can't put] something inside itself." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is a closed container' {colon_block_command} {indent: 1} @@ -9150,7 +9150,7 @@ ROOT_NT CONSTANT_NT'"[The second noun] [are] closed." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a container' {colon_block_command} {indent: 1} @@ -9171,7 +9171,7 @@ ROOT_NT CONSTANT_NT'"[regarding the second noun][Those] [can't contain] things."' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} @@ -9202,7 +9202,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor inserting something into ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun provides the property carrying capacity' {colon_block_command} {indent: 1} @@ -9231,11 +9231,11 @@ ROOT_NT CONSTANT_NT'"[There] [are] no more room in [the second noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor inserting something into ( this is the st' {unit: 2} + IMPERATIVE_NT'carry out an actor inserting something into ( this is the st' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is in the second noun' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is in the second noun' - RULE_NT'report an actor inserting something into ( this is the conci' {unit: 2} + IMPERATIVE_NT'report an actor inserting something into ( this is the conci' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -9266,7 +9266,7 @@ ROOT_NT INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor inserting something into ( this is the stand' {unit: 2} + IMPERATIVE_NT'report an actor inserting something into ( this is the stand' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -9298,7 +9298,7 @@ ROOT_NT PROPER_NOUN_NT'Eating is the only one of the built-in actions which can, in' {refined} {eval: CONSTANT_NT'Eating is the only one of the built-in actions which can, in' {kind: text}} - RULE_NT'check an actor eating ( this is the can't eat unless edible ' {unit: 2} + IMPERATIVE_NT'check an actor eating ( this is the can't eat unless edible ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not a thing or the noun is not edible' {colon_block_command} {indent: 1} @@ -9321,7 +9321,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They're] plainly inedible." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor eating ( this is the can't eat clothing witho' {unit: 2} + IMPERATIVE_NT'check an actor eating ( this is the can't eat clothing witho' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} @@ -9352,7 +9352,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor eating ( this is the can't eat other people's' {unit: 2} + IMPERATIVE_NT'check an actor eating ( this is the can't eat other people's' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is enclosed by a person ( called the owner ) who' {colon_block_command} {indent: 1} @@ -9373,7 +9373,7 @@ ROOT_NT CONSTANT_NT'"[The owner] [might not appreciate] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor eating ( this is the can't eat portable food ' {unit: 2} + IMPERATIVE_NT'check an actor eating ( this is the can't eat portable food ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is portable and the actor is not carrying the no' {colon_block_command} {indent: 1} @@ -9397,11 +9397,11 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor eating ( this is the standard eating rule' {unit: 2} + IMPERATIVE_NT'carry out an actor eating ( this is the standard eating rule' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is nowhere' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is nowhere' - RULE_NT'report an actor eating ( this is the standard report eating ' {unit: 2} + IMPERATIVE_NT'report an actor eating ( this is the standard report eating ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -9481,7 +9481,7 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'object' {indefinite 'an' n/m/f nom/acc s} UNPARSED_NOUN_NT'thing gone with ( matched as with )' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'rule for setting action variables for going ( this is the st' {unit: 2} + IMPERATIVE_NT'rule for setting action variables for going ( this is the st' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the thing gone with is the item-pushed-between-rooms' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the thing gone with is the item-pushed-between-rooms' @@ -9550,7 +9550,7 @@ ROOT_NT CONDITION_CONTEXT_NT'the target is the other side of the target from the room gon' INVOCATION_LIST_NT'now the room gone to is the target' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the room gone to is the target' - RULE_NT'check an actor going when the actor is on a supporter ( call' {unit: 2} + IMPERATIVE_NT'check an actor going when the actor is on a supporter ( call' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -9567,7 +9567,7 @@ ROOT_NT INVOCATION_NT'silently try the actor exiting' {phrase invoked: call} RVALUE_CONTEXT_NT'actor exiting' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'actor exiting' {kind: action} {explicit action: } - RULE_NT'check an actor going ( this is the can't travel in what's no' {unit: 2} + IMPERATIVE_NT'check an actor going ( this is the can't travel in what's no' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let nonvehicle be the holder of the actor' {indent: 1} INVOCATION_NT'let nonvehicle be the holder of the actor' {phrase invoked: call} @@ -9620,7 +9620,7 @@ ROOT_NT CONSTANT_NT'"[We] [would have] to get out of [the nonvehicle] first." ( ' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor going ( this is the can't go through undescri' {unit: 2} + IMPERATIVE_NT'check an actor going ( this is the can't go through undescri' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the door gone through is not nothing and the door gone th' {colon_block_command} {indent: 1} @@ -9643,7 +9643,7 @@ ROOT_NT CONSTANT_NT'"[We] [can't go] that way." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor going ( this is the can't go through closed d' {unit: 2} + IMPERATIVE_NT'check an actor going ( this is the can't go through closed d' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the door gone through is not nothing and the door gone th' {colon_block_command} {indent: 1} @@ -9678,7 +9678,7 @@ ROOT_NT INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor going ( this is the determine map connection ' {unit: 2} + IMPERATIVE_NT'check an actor going ( this is the determine map connection ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the target be nothing' {indent: 1} INVOCATION_NT'let the target be nothing' {phrase invoked: call} @@ -9733,7 +9733,7 @@ ROOT_NT CONDITION_CONTEXT_NT'the target is the other side of the target from the room gon' INVOCATION_LIST_NT'now the room gone to is the target' {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the room gone to is the target' - RULE_NT'check an actor going ( this is the can't go that way rule )' {unit: 2} + IMPERATIVE_NT'check an actor going ( this is the can't go that way rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the room gone to is nothing' {colon_block_command} {indent: 1} @@ -9773,7 +9773,7 @@ ROOT_NT CONSTANT_NT'"[We] [can't], since [the door gone through] [lead] nowhere.' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor going ( this is the move player and vehic' {unit: 2} + IMPERATIVE_NT'carry out an actor going ( this is the move player and vehic' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the vehicle gone by is nothing' {indent: 1} {colon_block_command} @@ -9802,7 +9802,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'now the location is the location of the player' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the location is the location of the player' - RULE_NT'carry out an actor going ( this is the move floating objects' {unit: 2} + IMPERATIVE_NT'carry out an actor going ( this is the move floating objects' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player or the player is within the vehic' {colon_block_command} {indent: 1} @@ -9816,7 +9816,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'update backdrop positions' {indent: 2} INVOCATION_NT'update backdrop positions' {phrase invoked: call} - RULE_NT'carry out an actor going ( this is the check light in new lo' {unit: 2} + IMPERATIVE_NT'carry out an actor going ( this is the check light in new lo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player or the player is within the vehic' {colon_block_command} {indent: 1} @@ -9830,7 +9830,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'surreptitiously reckon darkness' {indent: 2} INVOCATION_NT'surreptitiously reckon darkness' {phrase invoked: call} - RULE_NT'report an actor going ( this is the describe room gone into ' {unit: 2} + IMPERATIVE_NT'report an actor going ( this is the describe room gone into ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 1} @@ -10154,7 +10154,7 @@ ROOT_NT PROPER_NOUN_NT'Whereas the going action allows people to move from one loca' {refined} {eval: CONSTANT_NT'Whereas the going action allows people to move from one loca' {kind: text}} - RULE_NT'rule for supplying a missing noun while entering ( this is t' {unit: 2} + IMPERATIVE_NT'rule for supplying a missing noun while entering ( this is t' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if something enterable ( called the box ) is in the location' {colon_block_command} @@ -10171,7 +10171,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the find what to enter rule' UNPARSED_NOUN_NT'last in the for supplying a missing noun rulebook' - RULE_NT'check an actor entering ( this is the convert enter door int' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the convert enter door int' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a door' {colon_block_command} @@ -10185,7 +10185,7 @@ ROOT_NT CONSTANT_NT'going action' {kind: action name} {action name: going}{meaning: {going action = MISCELLANEOUS_MC}} RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'check an actor entering ( this is the convert enter compass ' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the convert enter compass ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a direction' {colon_block_command} @@ -10199,7 +10199,7 @@ ROOT_NT CONSTANT_NT'going action' {kind: action name} {action name: going}{meaning: {going action = MISCELLANEOUS_MC}} RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'check an actor entering ( this is the can't enter what's alr' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the can't enter what's alr' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the noun' {indent: 1} {colon_block_command} @@ -10252,7 +10252,7 @@ ROOT_NT CONSTANT_NT'"But [we]['re] already in [the noun]." ( b )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor entering ( this is the can't enter what's not' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the can't enter what's not' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not enterable' {colon_block_command} {indent: 1} @@ -10330,7 +10330,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They're] not something [we] [can] ente' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor entering ( this is the can't enter closed con' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the can't enter closed con' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a closed container' {colon_block_command} {indent: 1} @@ -10351,7 +10351,7 @@ ROOT_NT CONSTANT_NT'"[We] [can't get] into the closed [noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor entering ( this is the can't enter if this ex' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the can't enter if this ex' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property carrying capacity' {colon_block_command} {indent: 1} @@ -10414,7 +10414,7 @@ ROOT_NT CONSTANT_NT'"[There] [are] no more room in [the noun]." ( b )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 4} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor entering ( this is the can't enter something ' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the can't enter something ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the local ceiling be the common ancestor of the actor wi' {indent: 1} INVOCATION_NT'let the local ceiling be the common ancestor of the actor wi' {phrase invoked: call} @@ -10447,7 +10447,7 @@ ROOT_NT CONSTANT_NT'"[We] [can] only get into something free-standing." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor entering ( this is the implicitly pass throug' {unit: 2} + IMPERATIVE_NT'check an actor entering ( this is the implicitly pass throug' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the actor is the holder of the noun' {indent: 1} {colon_block_command} @@ -10641,7 +10641,7 @@ ROOT_NT INVOCATION_NT'holder of the target' {phrase invoked: call} {resulting: object} RVALUE_CONTEXT_NT'target' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'target' {local: LV"target"-object object} - RULE_NT'carry out an actor entering ( this is the standard entering ' {unit: 2} + IMPERATIVE_NT'carry out an actor entering ( this is the standard entering ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'surreptitiously move the actor to the noun' INVOCATION_NT'surreptitiously move the actor to the noun' {phrase invoked: call} @@ -10649,7 +10649,7 @@ ROOT_NT NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'report an actor entering ( this is the standard report enter' {unit: 2} + IMPERATIVE_NT'report an actor entering ( this is the standard report enter' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -10703,7 +10703,7 @@ ROOT_NT CONSTANT_NT'"[The actor] [get] onto [the noun]." ( d )' {kind: text} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor entering ( this is the describe contents ent' {unit: 2} + IMPERATIVE_NT'report an actor entering ( this is the describe contents ent' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} @@ -10738,11 +10738,11 @@ ROOT_NT PROPER_NOUN_NT'Whereas the going action allows people to move from one loca' {refined} {eval: CONSTANT_NT'Whereas the going action allows people to move from one loca' {kind: text}} - RULE_NT'setting action variables for exiting' {unit: 2} + IMPERATIVE_NT'setting action variables for exiting' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the container exited from is the holder of the actor' {control structure: NOW} CONDITION_CONTEXT_NT'the container exited from is the holder of the actor' - RULE_NT'check an actor exiting ( this is the convert exit into go ou' {unit: 2} + IMPERATIVE_NT'check an actor exiting ( this is the convert exit into go ou' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the local room be the location of the actor' {indent: 1} INVOCATION_NT'let the local room be the location of the actor' {phrase invoked: call} @@ -10772,7 +10772,7 @@ ROOT_NT CONSTANT_NT'going action' {kind: action name} {action name: going}{meaning: {going action = MISCELLANEOUS_MC}} RVALUE_CONTEXT_NT'outside' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} CONSTANT_NT'outside' {kind: direction} {instance: I33'outside'} {enumeration: 0} - RULE_NT'check an actor exiting ( this is the can't exit when not ins' {unit: 2} + IMPERATIVE_NT'check an actor exiting ( this is the can't exit when not ins' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the local room be the location of the actor' {indent: 1} INVOCATION_NT'let the local room be the location of the actor' {phrase invoked: call} @@ -10803,7 +10803,7 @@ ROOT_NT CONSTANT_NT'"But [we] [aren't] in anything at the [if story tense is pre' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor exiting ( this is the can't exit closed conta' {unit: 2} + IMPERATIVE_NT'check an actor exiting ( this is the can't exit closed conta' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is in a closed container ( called the cage )' {colon_block_command} {indent: 1} @@ -10824,7 +10824,7 @@ ROOT_NT CONSTANT_NT'"You can't get out of the closed [cage]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor exiting ( this is the convert exit into get o' {unit: 2} + IMPERATIVE_NT'check an actor exiting ( this is the convert exit into get o' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is on a supporter ( called the platform )' {colon_block_command} @@ -10838,7 +10838,7 @@ ROOT_NT CONSTANT_NT'getting off action' {kind: action name} {action name: getting off}{meaning: {getting off action = MISCELLANEOUS_MC}} RVALUE_CONTEXT_NT'platform' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} LOCAL_VARIABLE_NT'platform' {local: LV"platform"-supporter supporter} - RULE_NT'carry out an actor exiting ( this is the standard exiting ru' {unit: 2} + IMPERATIVE_NT'carry out an actor exiting ( this is the standard exiting ru' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the former exterior be the not-counting-parts holder of ' INVOCATION_NT'let the former exterior be the not-counting-parts holder of ' {phrase invoked: call} @@ -10856,7 +10856,7 @@ ROOT_NT NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} RVALUE_CONTEXT_NT'former exterior' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'former exterior' {local: LV"former exterior"-object object} - RULE_NT'report an actor exiting ( this is the standard report exitin' {unit: 2} + IMPERATIVE_NT'report an actor exiting ( this is the standard report exitin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -10898,7 +10898,7 @@ ROOT_NT CONSTANT_NT'"[The actor] [get] out of [the container exited from]." ( c ' {kind: text} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor exiting ( this is the describe room emerged ' {unit: 2} + IMPERATIVE_NT'report an actor exiting ( this is the describe room emerged ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -10926,7 +10926,7 @@ ROOT_NT PROPER_NOUN_NT'The getting off action is for actors who are currently on to' {refined} {eval: CONSTANT_NT'The getting off action is for actors who are currently on to' {kind: text}} - RULE_NT'check an actor getting off ( this is the can't get off thing' {unit: 2} + IMPERATIVE_NT'check an actor getting off ( this is the can't get off thing' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is on the noun' {indent: 1} {colon_block_command} @@ -10957,7 +10957,7 @@ ROOT_NT CONSTANT_NT'"But [we] [aren't] on [the noun] at the [if story tense is p' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor getting off ( this is the standard gettin' {unit: 2} + IMPERATIVE_NT'carry out an actor getting off ( this is the standard gettin' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'let the former exterior be the not-counting-parts holder of ' INVOCATION_NT'let the former exterior be the not-counting-parts holder of ' {phrase invoked: call} @@ -10975,7 +10975,7 @@ ROOT_NT NONLOCAL_VARIABLE_NT'actor' {nonlocal: 'actor'(var)person} RVALUE_CONTEXT_NT'former exterior' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} LOCAL_VARIABLE_NT'former exterior' {local: LV"former exterior"-object object} - RULE_NT'report an actor getting off ( this is the standard report ge' {unit: 2} + IMPERATIVE_NT'report an actor getting off ( this is the standard report ge' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -10993,7 +10993,7 @@ ROOT_NT CONSTANT_NT'"[The actor] [get] off [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor getting off ( this is the describe room stoo' {unit: 2} + IMPERATIVE_NT'report an actor getting off ( this is the describe room stoo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} @@ -11048,7 +11048,7 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'object' {indefinite 'an' n/m/f nom/acc s} UNPARSED_NOUN_NT'visibility ceiling' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'setting action variables for looking ( this is the determine' {unit: 2} + IMPERATIVE_NT'setting action variables for looking ( this is the determine' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} @@ -11064,7 +11064,7 @@ ROOT_NT CONDITION_CONTEXT_NT'the visibility ceiling is the visibility ceiling calculated' INVOCATION_LIST_NT'now the room-describing action is the looking action' {control structure: NOW} CONDITION_CONTEXT_NT'the room-describing action is the looking action' - RULE_NT'carry out looking ( this is the declare everything unmention' {unit: 2} + IMPERATIVE_NT'carry out looking ( this is the declare everything unmention' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with item running through things' {colon_block_command} {indent: 1} @@ -11076,7 +11076,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'now the item is not mentioned' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the item is not mentioned' - RULE_NT'carry out looking ( this is the room description heading rul' {unit: 2} + IMPERATIVE_NT'carry out looking ( this is the room description heading rul' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say bold type' {control structure: SAY} INVOCATION_LIST_SAY_NT'bold type' @@ -11187,7 +11187,7 @@ ROOT_NT CODE_BLOCK_NT'say run paragraph on with special look spacing' {control structure: SAY} INVOCATION_LIST_SAY_NT'run paragraph on with special look spacing' INVOCATION_NT'run paragraph on with special look spacing' {phrase invoked: call} - RULE_NT'carry out looking ( this is the room description body text r' {unit: 2} + IMPERATIVE_NT'carry out looking ( this is the room description body text r' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the visibility level count is 0' {colon_block_command} {indent: 1} @@ -11282,7 +11282,7 @@ ROOT_NT INVOCATION_NT'continue the action' {phrase invoked: call} INVOCATION_LIST_NT'print the location's description' {indent: 2} INVOCATION_NT'print the location's description' {phrase invoked: call} - RULE_NT'carry out looking ( this is the room description paragraphs ' {unit: 2} + IMPERATIVE_NT'carry out looking ( this is the room description paragraphs ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the visibility level count is greater than 0' {colon_block_command} {indent: 1} @@ -11384,7 +11384,7 @@ ROOT_NT CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'carry out looking ( this is the check new arrival rule )' {unit: 2} + IMPERATIVE_NT'carry out looking ( this is the check new arrival rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if in darkness' {colon_block_command} {indent: 1} @@ -11406,7 +11406,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'now the location is visited' {results_from_splitting} {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'the location is visited' - RULE_NT'report an actor looking ( this is the other people looking r' {unit: 2} + IMPERATIVE_NT'report an actor looking ( this is the other people looking r' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the player' {colon_block_command} {indent: 1} @@ -11442,7 +11442,7 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'truth state' {indefinite 'a' n/m/f nom/acc s} UNPARSED_NOUN_NT'examine text printed' - RULE_NT'carry out examining ( this is the standard examining rule )' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the standard examining rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property description and the descri' {colon_block_command} {indent: 1} @@ -11463,7 +11463,7 @@ ROOT_NT INVOCATION_NT'line break' {phrase invoked: call} INVOCATION_LIST_NT'now examine text printed is true' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'examine text printed is true' - RULE_NT'carry out examining ( this is the examine directions rule )' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the examine directions rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a direction' {colon_block_command} {indent: 1} @@ -11478,7 +11478,7 @@ ROOT_NT CONSTANT_NT'"[We] [see] nothing unexpected in that direction." ( a )' {kind: text} INVOCATION_LIST_NT'now examine text printed is true' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'examine text printed is true' - RULE_NT'carry out examining ( this is the examine containers rule )' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the examine containers rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a container' {colon_block_command} {indent: 1} @@ -11540,7 +11540,7 @@ ROOT_NT CONSTANT_NT'"[The noun] [are] empty." ( b )' {kind: text} INVOCATION_LIST_NT'now examine text printed is true' {indent: 4} {control structure: NOW} CONDITION_CONTEXT_NT'examine text printed is true' - RULE_NT'carry out examining ( this is the examine supporters rule )' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the examine supporters rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a supporter' {colon_block_command} {indent: 1} @@ -11572,7 +11572,7 @@ ROOT_NT CONSTANT_NT'"."' {kind: text} INVOCATION_LIST_NT'now examine text printed is true' {indent: 3} {control structure: NOW} CONDITION_CONTEXT_NT'examine text printed is true' - RULE_NT'carry out examining ( this is the examine devices rule )' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the examine devices rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a device' {colon_block_command} {indent: 1} @@ -11587,7 +11587,7 @@ ROOT_NT CONSTANT_NT'"[The noun] [are] [if story tense is present tense]currently' {kind: text} INVOCATION_LIST_NT'now examine text printed is true' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'examine text printed is true' - RULE_NT'carry out examining ( this is the examine undescribed things' {unit: 2} + IMPERATIVE_NT'carry out examining ( this is the examine undescribed things' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if examine text printed is false' {colon_block_command} {indent: 1} @@ -11600,7 +11600,7 @@ ROOT_NT INVOCATION_NT'"[We] [see] nothing special about [the noun]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"[We] [see] nothing special about [the noun]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [see] nothing special about [the noun]." ( a )' {kind: text} - RULE_NT'report an actor examining ( this is the report other people ' {unit: 2} + IMPERATIVE_NT'report an actor examining ( this is the report other people ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the player' {colon_block_command} {indent: 1} @@ -11629,7 +11629,7 @@ ROOT_NT PROPER_NOUN_NT'The standard Inform world model does not have a concept of t' {refined} {eval: CONSTANT_NT'The standard Inform world model does not have a concept of t' {kind: text}} - RULE_NT'carry out an actor looking under ( this is the standard look' {unit: 2} + IMPERATIVE_NT'carry out an actor looking under ( this is the standard look' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is the actor' {colon_block_command} {indent: 1} @@ -11644,7 +11644,7 @@ ROOT_NT CONSTANT_NT'"[We] [find] nothing of interest." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor looking under ( this is the report other peo' {unit: 2} + IMPERATIVE_NT'report an actor looking under ( this is the report other peo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -11682,7 +11682,7 @@ ROOT_NT PROPER_NOUN_NT'Searching looks at the contents of an open or transparent co' {refined} {eval: CONSTANT_NT'Searching looks at the contents of an open or transparent co' {kind: text}} - RULE_NT'check an actor searching ( this is the can't search unless c' {unit: 2} + IMPERATIVE_NT'check an actor searching ( this is the can't search unless c' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not a container and the noun is not a support' {colon_block_command} {indent: 1} @@ -11705,7 +11705,7 @@ ROOT_NT CONSTANT_NT'"[We] [find] nothing of interest." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor searching ( this is the can't search closed o' {unit: 2} + IMPERATIVE_NT'check an actor searching ( this is the can't search closed o' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a closed opaque container' {colon_block_command} {indent: 1} @@ -11726,7 +11726,7 @@ ROOT_NT CONSTANT_NT'"[We] [can't see] inside, since [the noun] [are] closed." ( ' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report searching a container ( this is the standard search c' {unit: 2} + IMPERATIVE_NT'report searching a container ( this is the standard search c' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun contains a described thing which is not scenery' {colon_block_command} {indent: 1} @@ -11754,7 +11754,7 @@ ROOT_NT INVOCATION_NT'"[The noun] [are] empty." ( b )' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"[The noun] [are] empty." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [are] empty." ( b )' {kind: text} - RULE_NT'report searching a supporter ( this is the standard search s' {unit: 2} + IMPERATIVE_NT'report searching a supporter ( this is the standard search s' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun supports a described thing which is not scenery' {colon_block_command} {indent: 1} @@ -11784,7 +11784,7 @@ ROOT_NT INVOCATION_NT'"[There] [are] nothing on [the noun]." ( b )' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"[There] [are] nothing on [the noun]." ( b )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[There] [are] nothing on [the noun]." ( b )' {kind: text} - RULE_NT'report an actor searching ( this is the report other people ' {unit: 2} + IMPERATIVE_NT'report an actor searching ( this is the report other people ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the player' {colon_block_command} {indent: 1} @@ -11813,7 +11813,7 @@ ROOT_NT PROPER_NOUN_NT'Consulting is a very flexible and potentially powerful actio' {refined} {eval: CONSTANT_NT'Consulting is a very flexible and potentially powerful actio' {kind: text}} - RULE_NT'report an actor consulting something about ( this is the blo' {unit: 2} + IMPERATIVE_NT'report an actor consulting something about ( this is the blo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -11849,7 +11849,7 @@ ROOT_NT PROPER_NOUN_NT'Locking is the act of using an object such as a key to ensur' {refined} {eval: CONSTANT_NT'Locking is the act of using an object such as a key to ensur' {kind: text}} - RULE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} + IMPERATIVE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property lockable and the noun is l' {colon_block_command} {indent: 1} @@ -11874,7 +11874,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][Those] [don't] seem to be something [w' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} + IMPERATIVE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is locked' {colon_block_command} {indent: 1} @@ -11895,7 +11895,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They're] locked at the [if story tense' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} + IMPERATIVE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is open' {colon_block_command} {indent: 1} @@ -11916,7 +11916,7 @@ ROOT_NT CONSTANT_NT'"First [we] [would have] to close [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} + IMPERATIVE_NT'check an actor locking something with ( this is the can't lo' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the second noun is not the actor or the nou' {colon_block_command} {indent: 1} @@ -11941,11 +11941,11 @@ ROOT_NT CONSTANT_NT'"[regarding the second noun][Those] [don't] seem to fit the ' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor locking something with ( this is the stan' {unit: 2} + IMPERATIVE_NT'carry out an actor locking something with ( this is the stan' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is locked' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is locked' - RULE_NT'report an actor locking something with ( this is the standar' {unit: 2} + IMPERATIVE_NT'report an actor locking something with ( this is the standar' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -11995,7 +11995,7 @@ ROOT_NT PROPER_NOUN_NT'Unlocking undoes the effect of locking, and renders the noun' {refined} {eval: CONSTANT_NT'Unlocking undoes the effect of locking, and renders the noun' {kind: text}} - RULE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property lockable and the noun is l' {colon_block_command} {indent: 1} @@ -12020,7 +12020,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][Those] [don't] seem to be something [w' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not locked' {colon_block_command} {indent: 1} @@ -12041,7 +12041,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They're] unlocked at the [if story ten' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} + IMPERATIVE_NT'check an actor unlocking something with ( this is the can't ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the second noun is not the actor or the nou' {colon_block_command} {indent: 1} @@ -12066,11 +12066,11 @@ ROOT_NT CONSTANT_NT'"[regarding the second noun][Those] [don't] seem to fit the ' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor unlocking something with ( this is the st' {unit: 2} + IMPERATIVE_NT'carry out an actor unlocking something with ( this is the st' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is not locked' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is not locked' - RULE_NT'report an actor unlocking something with ( this is the stand' {unit: 2} + IMPERATIVE_NT'report an actor unlocking something with ( this is the stand' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -12120,7 +12120,7 @@ ROOT_NT PROPER_NOUN_NT'The switching on and switching off actions are for the simpl' {refined} {eval: CONSTANT_NT'The switching on and switching off actions are for the simpl' {kind: text}} - RULE_NT'check an actor switching on ( this is the can't switch on un' {unit: 2} + IMPERATIVE_NT'check an actor switching on ( this is the can't switch on un' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property switched on' {indent: 1} {colon_block_command} @@ -12143,7 +12143,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor switching on ( this is the can't switch on wh' {unit: 2} + IMPERATIVE_NT'check an actor switching on ( this is the can't switch on wh' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is switched on' {colon_block_command} {indent: 1} @@ -12164,11 +12164,11 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They're] already on." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor switching on ( this is the standard switc' {unit: 2} + IMPERATIVE_NT'carry out an actor switching on ( this is the standard switc' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is switched on' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is switched on' - RULE_NT'report an actor switching on ( this is the standard report s' {unit: 2} + IMPERATIVE_NT'report an actor switching on ( this is the standard report s' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -12200,7 +12200,7 @@ ROOT_NT PROPER_NOUN_NT'The switching off and switching on actions are for the simpl' {refined} {eval: CONSTANT_NT'The switching off and switching on actions are for the simpl' {kind: text}} - RULE_NT'check an actor switching off ( this is the can't switch off ' {unit: 2} + IMPERATIVE_NT'check an actor switching off ( this is the can't switch off ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property switched on' {indent: 1} {colon_block_command} @@ -12223,7 +12223,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They] [aren't] something [we] [can] sw' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor switching off ( this is the can't switch off ' {unit: 2} + IMPERATIVE_NT'check an actor switching off ( this is the can't switch off ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is switched off' {colon_block_command} {indent: 1} @@ -12244,11 +12244,11 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They're] already off." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor switching off ( this is the standard swit' {unit: 2} + IMPERATIVE_NT'carry out an actor switching off ( this is the standard swit' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is switched off' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is switched off' - RULE_NT'report an actor switching off ( this is the standard report ' {unit: 2} + IMPERATIVE_NT'report an actor switching off ( this is the standard report ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the action is not silent' {colon_block_command} {indent: 1} @@ -12280,7 +12280,7 @@ ROOT_NT PROPER_NOUN_NT'Opening makes something no longer a physical barrier. The ac' {refined} {eval: CONSTANT_NT'Opening makes something no longer a physical barrier. The ac' {kind: text}} - RULE_NT'check an actor opening ( this is the can't open unless opena' {unit: 2} + IMPERATIVE_NT'check an actor opening ( this is the can't open unless opena' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property openable and the noun is o' {colon_block_command} {indent: 1} @@ -12305,7 +12305,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They] [aren't] something [we] [can] op' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor opening ( this is the can't open what's locke' {unit: 2} + IMPERATIVE_NT'check an actor opening ( this is the can't open what's locke' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property lockable and the noun is l' {colon_block_command} {indent: 1} @@ -12328,7 +12328,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They] [seem] to be locked." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor opening ( this is the can't open what's alrea' {unit: 2} + IMPERATIVE_NT'check an actor opening ( this is the can't open what's alrea' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is open' {colon_block_command} {indent: 1} @@ -12349,11 +12349,11 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They're] already open." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor opening ( this is the standard opening ru' {unit: 2} + IMPERATIVE_NT'carry out an actor opening ( this is the standard opening ru' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is open' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is open' - RULE_NT'report an actor opening ( this is the reveal any newly visib' {unit: 2} + IMPERATIVE_NT'report an actor opening ( this is the reveal any newly visib' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player and the noun is an opaque contain' {colon_block_command} {indent: 1} @@ -12398,7 +12398,7 @@ ROOT_NT CONSTANT_NT'"."' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor opening ( this is the standard report openin' {unit: 2} + IMPERATIVE_NT'report an actor opening ( this is the standard report openin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -12454,7 +12454,7 @@ ROOT_NT PROPER_NOUN_NT'Closing makes something into a physical barrier. The action ' {refined} {eval: CONSTANT_NT'Closing makes something into a physical barrier. The action ' {kind: text}} - RULE_NT'check an actor closing ( this is the can't close unless open' {unit: 2} + IMPERATIVE_NT'check an actor closing ( this is the can't close unless open' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun provides the property openable and the noun is o' {colon_block_command} {indent: 1} @@ -12479,7 +12479,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They] [aren't] something [we] [can] cl' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor closing ( this is the can't close what's alre' {unit: 2} + IMPERATIVE_NT'check an actor closing ( this is the can't close what's alre' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is closed' {colon_block_command} {indent: 1} @@ -12500,11 +12500,11 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They're] already closed." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor closing ( this is the standard closing ru' {unit: 2} + IMPERATIVE_NT'carry out an actor closing ( this is the standard closing ru' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is closed' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is closed' - RULE_NT'report an actor closing ( this is the standard report closin' {unit: 2} + IMPERATIVE_NT'report an actor closing ( this is the standard report closin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -12560,7 +12560,7 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules give Inform only a simple model of clothi' {refined} {eval: CONSTANT_NT'The Standard Rules give Inform only a simple model of clothi' {kind: text}} - RULE_NT'check an actor wearing ( this is the can't wear what's not c' {unit: 2} + IMPERATIVE_NT'check an actor wearing ( this is the can't wear what's not c' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not a thing or the noun is not wearable' {colon_block_command} {indent: 1} @@ -12583,7 +12583,7 @@ ROOT_NT CONSTANT_NT'"[We] [can't wear] [regarding the noun][those]!" ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor wearing ( this is the can't wear what's not h' {unit: 2} + IMPERATIVE_NT'check an actor wearing ( this is the can't wear what's not h' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the holder of the noun is not the actor' {colon_block_command} {indent: 1} @@ -12604,7 +12604,7 @@ ROOT_NT CONSTANT_NT'"[We] [aren't] holding [regarding the noun][those]!" ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor wearing ( this is the can't wear what's alrea' {unit: 2} + IMPERATIVE_NT'check an actor wearing ( this is the can't wear what's alrea' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} @@ -12625,11 +12625,11 @@ ROOT_NT CONSTANT_NT'"[We]['re] already wearing [regarding the noun][those]!" ( a' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor wearing ( this is the standard wearing ru' {unit: 2} + IMPERATIVE_NT'carry out an actor wearing ( this is the standard wearing ru' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the actor wears the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the actor wears the noun' - RULE_NT'report an actor wearing ( this is the standard report wearin' {unit: 2} + IMPERATIVE_NT'report an actor wearing ( this is the standard report wearin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -12665,7 +12665,7 @@ ROOT_NT VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 4} UNPARSED_NOUN_NT'taking off action' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'Disrobe' - RULE_NT'does the player mean taking off something worn' {unit: 2} + IMPERATIVE_NT'does the player mean taking off something worn' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'it is very likely' SENTENCE_NT'the specification of the taking off action is The Standard R' {unit: 2} {classified} @@ -12676,7 +12676,7 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules give Inform only a simple model of clothi' {refined} {eval: CONSTANT_NT'The Standard Rules give Inform only a simple model of clothi' {kind: text}} - RULE_NT'check an actor taking off ( this is the can't take off what'' {unit: 2} + IMPERATIVE_NT'check an actor taking off ( this is the can't take off what'' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not wearing the noun' {colon_block_command} {indent: 1} @@ -12697,7 +12697,7 @@ ROOT_NT CONSTANT_NT'"[We] [aren't] wearing [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor taking off ( this is the can't exceed carryin' {unit: 2} + IMPERATIVE_NT'check an actor taking off ( this is the can't exceed carryin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things carried by the actor is at least the' {colon_block_command} {indent: 1} @@ -12718,11 +12718,11 @@ ROOT_NT CONSTANT_NT'"[We]['re] carrying too many things already." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor taking off ( this is the standard taking ' {unit: 2} + IMPERATIVE_NT'carry out an actor taking off ( this is the standard taking ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'now the actor carries the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the actor carries the noun' - RULE_NT'report an actor taking off ( this is the standard report tak' {unit: 2} + IMPERATIVE_NT'report an actor taking off ( this is the standard report tak' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -12767,7 +12767,7 @@ ROOT_NT PROPER_NOUN_NT'This action is indexed by Inform under 'Actions concerning o' {refined} {eval: CONSTANT_NT'This action is indexed by Inform under 'Actions concerning o' {kind: text}} - RULE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the holder of the noun' {colon_block_command} {indent: 1} @@ -12788,7 +12788,7 @@ ROOT_NT CONSTANT_NT'"[We] [aren't] holding [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the second noun' {colon_block_command} {indent: 1} @@ -12809,7 +12809,7 @@ ROOT_NT CONSTANT_NT'"[We] [can't give] [the noun] to [ourselves]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a person' {colon_block_command} {indent: 1} @@ -12830,7 +12830,7 @@ ROOT_NT CONSTANT_NT'"[The second noun] [aren't] able to receive things." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the can't give ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} @@ -12855,7 +12855,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor giving something to ( this is the block givin' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the block givin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -12870,7 +12870,7 @@ ROOT_NT CONSTANT_NT'"[The second noun] [don't] seem interested." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor giving something to ( this is the can't excee' {unit: 2} + IMPERATIVE_NT'check an actor giving something to ( this is the can't excee' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of things carried by the second noun is at lea' {colon_block_command} {indent: 1} @@ -12891,7 +12891,7 @@ ROOT_NT CONSTANT_NT'"[The second noun] [are] carrying too many things already." ' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'carry out an actor giving something to ( this is the standar' {unit: 2} + IMPERATIVE_NT'carry out an actor giving something to ( this is the standar' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'move the noun to the second noun' INVOCATION_NT'move the noun to the second noun' {phrase invoked: call} @@ -12899,7 +12899,7 @@ ROOT_NT NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} RVALUE_CONTEXT_NT'second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} NONLOCAL_VARIABLE_NT'second noun' {nonlocal: 'second noun'(var)object}{meaning: {second noun = VARIABLE_MC}} - RULE_NT'report an actor giving something to ( this is the standard r' {unit: 2} + IMPERATIVE_NT'report an actor giving something to ( this is the standard r' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -12946,7 +12946,7 @@ ROOT_NT PROPER_NOUN_NT'Anyone can show anyone else something which they are carryin' {refined} {eval: CONSTANT_NT'Anyone can show anyone else something which they are carryin' {kind: text}} - RULE_NT'check an actor showing something to ( this is the can't show' {unit: 2} + IMPERATIVE_NT'check an actor showing something to ( this is the can't show' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the holder of the noun' {colon_block_command} {indent: 1} @@ -12967,7 +12967,7 @@ ROOT_NT CONSTANT_NT'"[We] [aren't] holding [the noun]." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor showing something to ( this is the convert sh' {unit: 2} + IMPERATIVE_NT'check an actor showing something to ( this is the convert sh' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the second noun' {colon_block_command} {indent: 1} @@ -12981,7 +12981,7 @@ ROOT_NT CONSTANT_NT'examining action' {kind: action name} {action name: examining}{meaning: {examining action = MISCELLANEOUS_MC}} RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'an object'} {required: object} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'check an actor showing something to ( this is the block show' {unit: 2} + IMPERATIVE_NT'check an actor showing something to ( this is the block show' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13012,7 +13012,7 @@ ROOT_NT PROPER_NOUN_NT'This is the act of jostling a sleeping person to wake him or' {refined} {eval: CONSTANT_NT'This is the act of jostling a sleeping person to wake him or' {kind: text}} - RULE_NT'check an actor waking ( this is the block waking rule )' {unit: 2} + IMPERATIVE_NT'check an actor waking ( this is the block waking rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13045,7 +13045,7 @@ ROOT_NT PROPER_NOUN_NT'Throwing something at someone or something is difficult for ' {refined} {eval: CONSTANT_NT'Throwing something at someone or something is difficult for ' {kind: text}} - RULE_NT'check an actor throwing something at ( this is the implicitl' {unit: 2} + IMPERATIVE_NT'check an actor throwing something at ( this is the implicitl' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is wearing the noun' {colon_block_command} {indent: 1} @@ -13070,7 +13070,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 3} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor throwing something at ( this is the futile to' {unit: 2} + IMPERATIVE_NT'check an actor throwing something at ( this is the futile to' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a person' {colon_block_command} {indent: 1} @@ -13091,7 +13091,7 @@ ROOT_NT CONSTANT_NT'"Futile." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor throwing something at ( this is the block thr' {unit: 2} + IMPERATIVE_NT'check an actor throwing something at ( this is the block thr' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13126,7 +13126,7 @@ ROOT_NT PROPER_NOUN_NT'Violence is seldom the answer, and attempts to attack anothe' {refined} {eval: CONSTANT_NT'Violence is seldom the answer, and attempts to attack anothe' {kind: text}} - RULE_NT'check an actor attacking ( this is the block attacking rule ' {unit: 2} + IMPERATIVE_NT'check an actor attacking ( this is the block attacking rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13159,7 +13159,7 @@ ROOT_NT PROPER_NOUN_NT'Possibly because Inform was originally written by an English' {refined} {eval: CONSTANT_NT'Possibly because Inform was originally written by an English' {kind: text}} - RULE_NT'check an actor kissing ( this is the kissing yourself rule )' {unit: 2} + IMPERATIVE_NT'check an actor kissing ( this is the kissing yourself rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is the actor' {colon_block_command} {indent: 1} @@ -13180,7 +13180,7 @@ ROOT_NT CONSTANT_NT'"[We] [don't] get much from that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor kissing ( this is the block kissing rule )' {unit: 2} + IMPERATIVE_NT'check an actor kissing ( this is the block kissing rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13211,7 +13211,7 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules do not include any systematic way to hand' {refined} {eval: CONSTANT_NT'The Standard Rules do not include any systematic way to hand' {kind: text}} - RULE_NT'report an actor answering something that ( this is the block' {unit: 2} + IMPERATIVE_NT'report an actor answering something that ( this is the block' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13244,7 +13244,7 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules do not include any systematic way to hand' {refined} {eval: CONSTANT_NT'The Standard Rules do not include any systematic way to hand' {kind: text}} - RULE_NT'check an actor telling something about ( this is the telling' {unit: 2} + IMPERATIVE_NT'check an actor telling something about ( this is the telling' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the noun' {colon_block_command} {indent: 1} @@ -13265,7 +13265,7 @@ ROOT_NT CONSTANT_NT'"[We] [talk] to [ourselves] a while." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor telling something about ( this is the block ' {unit: 2} + IMPERATIVE_NT'report an actor telling something about ( this is the block ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13298,7 +13298,7 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules do not include any systematic way to hand' {refined} {eval: CONSTANT_NT'The Standard Rules do not include any systematic way to hand' {kind: text}} - RULE_NT'report an actor asking something about ( this is the block a' {unit: 2} + IMPERATIVE_NT'report an actor asking something about ( this is the block a' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13331,7 +13331,7 @@ ROOT_NT PROPER_NOUN_NT'The Standard Rules do not include any systematic way to hand' {refined} {eval: CONSTANT_NT'The Standard Rules do not include any systematic way to hand' {kind: text}} - RULE_NT'check an actor asking something for ( this is the asking you' {unit: 2} + IMPERATIVE_NT'check an actor asking something for ( this is the asking you' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the noun and the actor is the player' {colon_block_command} {indent: 1} @@ -13346,7 +13346,7 @@ ROOT_NT RVALUE_CONTEXT_NT'taking inventory' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'taking inventory' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'check an actor asking something for ( this is the translate ' {unit: 2} + IMPERATIVE_NT'check an actor asking something for ( this is the translate ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to request of the noun to perform giving it to actio' INVOCATION_NT'convert to request of the noun to perform giving it to actio' {phrase invoked: call} @@ -13375,7 +13375,7 @@ ROOT_NT PROPER_NOUN_NT'The inaction action: where would we be without waiting? Wait' {refined} {eval: CONSTANT_NT'The inaction action: where would we be without waiting? Wait' {kind: text}} - RULE_NT'report an actor waiting ( this is the standard report waitin' {unit: 2} + IMPERATIVE_NT'report an actor waiting ( this is the standard report waitin' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13421,7 +13421,7 @@ ROOT_NT PROPER_NOUN_NT'Touching is just that, touching something without applying p' {refined} {eval: CONSTANT_NT'Touching is just that, touching something without applying p' {kind: text}} - RULE_NT'report an actor touching ( this is the report touching yours' {unit: 2} + IMPERATIVE_NT'report an actor touching ( this is the report touching yours' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is the actor' {colon_block_command} {indent: 1} @@ -13459,7 +13459,7 @@ ROOT_NT INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor touching ( this is the report touching other' {unit: 2} + IMPERATIVE_NT'report an actor touching ( this is the report touching other' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} @@ -13509,7 +13509,7 @@ ROOT_NT INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'continue the action' {indent: 1} INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'report an actor touching ( this is the report touching thing' {unit: 2} + IMPERATIVE_NT'report an actor touching ( this is the report touching thing' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13553,7 +13553,7 @@ ROOT_NT PROPER_NOUN_NT'Waving in this sense is like waving a sceptre: the item to b' {refined} {eval: CONSTANT_NT'Waving in this sense is like waving a sceptre: the item to b' {kind: text}} - RULE_NT'check an actor waving ( this is the can't wave what's not he' {unit: 2} + IMPERATIVE_NT'check an actor waving ( this is the can't wave what's not he' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is not the holder of the noun' {colon_block_command} {indent: 1} @@ -13574,7 +13574,7 @@ ROOT_NT CONSTANT_NT'"But [we] [aren't] holding [regarding the noun][those]." ( a' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor waving ( this is the report waving things ru' {unit: 2} + IMPERATIVE_NT'report an actor waving ( this is the report waving things ru' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13618,7 +13618,7 @@ ROOT_NT PROPER_NOUN_NT'Pulling is the act of pulling something not grossly larger t' {refined} {eval: CONSTANT_NT'Pulling is the act of pulling something not grossly larger t' {kind: text}} - RULE_NT'check an actor pulling ( this is the can't pull what's fixed' {unit: 2} + IMPERATIVE_NT'check an actor pulling ( this is the can't pull what's fixed' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is fixed in place' {colon_block_command} {indent: 1} @@ -13639,7 +13639,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pulling ( this is the can't pull scenery rule' {unit: 2} + IMPERATIVE_NT'check an actor pulling ( this is the can't pull scenery rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is scenery' {colon_block_command} {indent: 1} @@ -13660,7 +13660,7 @@ ROOT_NT CONSTANT_NT'"[We] [are] unable to." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pulling ( this is the can't pull people rule ' {unit: 2} + IMPERATIVE_NT'check an actor pulling ( this is the can't pull people rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} @@ -13681,7 +13681,7 @@ ROOT_NT CONSTANT_NT'"[The noun] [might not like] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor pulling ( this is the report pulling rule )' {unit: 2} + IMPERATIVE_NT'report an actor pulling ( this is the report pulling rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13727,7 +13727,7 @@ ROOT_NT PROPER_NOUN_NT'Pushing is the act of pushing something not grossly larger t' {refined} {eval: CONSTANT_NT'Pushing is the act of pushing something not grossly larger t' {kind: text}} - RULE_NT'check an actor pushing something ( this is the can't push wh' {unit: 2} + IMPERATIVE_NT'check an actor pushing something ( this is the can't push wh' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is fixed in place' {colon_block_command} {indent: 1} @@ -13748,7 +13748,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something ( this is the can't push sc' {unit: 2} + IMPERATIVE_NT'check an actor pushing something ( this is the can't push sc' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is scenery' {colon_block_command} {indent: 1} @@ -13769,7 +13769,7 @@ ROOT_NT CONSTANT_NT'"[We] [are] unable to." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something ( this is the can't push pe' {unit: 2} + IMPERATIVE_NT'check an actor pushing something ( this is the can't push pe' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} @@ -13790,7 +13790,7 @@ ROOT_NT CONSTANT_NT'"[The noun] [might not like] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor pushing something ( this is the report pushi' {unit: 2} + IMPERATIVE_NT'report an actor pushing something ( this is the report pushi' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13836,7 +13836,7 @@ ROOT_NT PROPER_NOUN_NT'Turning is the act of rotating something - say, a dial.In ' {refined} {eval: CONSTANT_NT'Turning is the act of rotating something - say, a dial.In ' {kind: text}} - RULE_NT'check an actor turning ( this is the can't turn what's fixed' {unit: 2} + IMPERATIVE_NT'check an actor turning ( this is the can't turn what's fixed' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is fixed in place' {colon_block_command} {indent: 1} @@ -13857,7 +13857,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They] [are] fixed in place." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor turning ( this is the can't turn scenery rule' {unit: 2} + IMPERATIVE_NT'check an actor turning ( this is the can't turn scenery rule' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is scenery' {colon_block_command} {indent: 1} @@ -13878,7 +13878,7 @@ ROOT_NT CONSTANT_NT'"[We] [are] unable to." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor turning ( this is the can't turn people rule ' {unit: 2} + IMPERATIVE_NT'check an actor turning ( this is the can't turn people rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} @@ -13899,7 +13899,7 @@ ROOT_NT CONSTANT_NT'"[The noun] [might not like] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor turning ( this is the report turning rule )' {unit: 2} + IMPERATIVE_NT'report an actor turning ( this is the report turning rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -13945,7 +13945,7 @@ ROOT_NT PROPER_NOUN_NT'This action covers pushing a large object, not being carried' {refined} {eval: CONSTANT_NT'This action covers pushing a large object, not being carried' {kind: text}} - RULE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not pushable between rooms' {colon_block_command} {indent: 1} @@ -13966,7 +13966,7 @@ ROOT_NT CONSTANT_NT'"[The noun] [cannot] be pushed from place to place." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a direction' {colon_block_command} {indent: 1} @@ -13987,7 +13987,7 @@ ROOT_NT CONSTANT_NT'"[regarding the noun][They] [aren't] a direction." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is up or the second noun is down' {colon_block_command} {indent: 1} @@ -14010,7 +14010,7 @@ ROOT_NT CONSTANT_NT'"[The noun] [cannot] be pushed up or down." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the can't push' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun encloses the actor' {colon_block_command} {indent: 1} @@ -14031,11 +14031,11 @@ ROOT_NT CONSTANT_NT'"[The noun] [cannot] be pushed from here." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'check an actor pushing something to ( this is the standard p' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the standard p' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'convert to special going-with-push action' INVOCATION_NT'convert to special going-with-push action' {phrase invoked: call} - RULE_NT'check an actor pushing something to ( this is the block push' {unit: 2} + IMPERATIVE_NT'check an actor pushing something to ( this is the block push' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14066,7 +14066,7 @@ ROOT_NT PROPER_NOUN_NT'Squeezing is an action which can conveniently vary from sque' {refined} {eval: CONSTANT_NT'Squeezing is an action which can conveniently vary from sque' {kind: text}} - RULE_NT'check an actor squeezing ( this is the innuendo about squeez' {unit: 2} + IMPERATIVE_NT'check an actor squeezing ( this is the innuendo about squeez' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person' {colon_block_command} {indent: 1} @@ -14087,7 +14087,7 @@ ROOT_NT CONSTANT_NT'"[The noun] [might not like] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor squeezing ( this is the report squeezing rul' {unit: 2} + IMPERATIVE_NT'report an actor squeezing ( this is the report squeezing rul' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14130,7 +14130,7 @@ ROOT_NT PROPER_NOUN_NT'saying yes action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'saying yes action' {kind: action name} {action name: saying yes}{meaning: {saying yes action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor saying yes ( this is the block saying yes rul' {unit: 2} + IMPERATIVE_NT'check an actor saying yes ( this is the block saying yes rul' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14159,7 +14159,7 @@ ROOT_NT PROPER_NOUN_NT'saying no action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'saying no action' {kind: action name} {action name: saying no}{meaning: {saying no action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor saying no ( this is the block saying no rule ' {unit: 2} + IMPERATIVE_NT'check an actor saying no ( this is the block saying no rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14188,7 +14188,7 @@ ROOT_NT PROPER_NOUN_NT'burning action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'burning action' {kind: action name} {action name: burning}{meaning: {burning action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor burning ( this is the block burning rule )' {unit: 2} + IMPERATIVE_NT'check an actor burning ( this is the block burning rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14217,7 +14217,7 @@ ROOT_NT PROPER_NOUN_NT'waking up action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'waking up action' {kind: action name} {action name: waking up}{meaning: {waking up action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor waking up ( this is the block waking up rule ' {unit: 2} + IMPERATIVE_NT'check an actor waking up ( this is the block waking up rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14248,7 +14248,7 @@ ROOT_NT PROPER_NOUN_NT'thinking action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'thinking action' {kind: action name} {action name: thinking}{meaning: {thinking action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor thinking ( this is the block thinking rule )' {unit: 2} + IMPERATIVE_NT'check an actor thinking ( this is the block thinking rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14277,7 +14277,7 @@ ROOT_NT PROPER_NOUN_NT'smelling action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'smelling action' {kind: action name} {action name: smelling}{meaning: {smelling action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'report an actor smelling ( this is the report smelling rule ' {unit: 2} + IMPERATIVE_NT'report an actor smelling ( this is the report smelling rule ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14319,7 +14319,7 @@ ROOT_NT PROPER_NOUN_NT'listening to action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'listening to action' {kind: action name} {action name: listening to}{meaning: {listening to action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'report an actor listening to ( this is the report listening ' {unit: 2} + IMPERATIVE_NT'report an actor listening to ( this is the report listening ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14361,7 +14361,7 @@ ROOT_NT PROPER_NOUN_NT'tasting action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'tasting action' {kind: action name} {action name: tasting}{meaning: {tasting action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'report an actor tasting ( this is the report tasting rule )' {unit: 2} + IMPERATIVE_NT'report an actor tasting ( this is the report tasting rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14403,7 +14403,7 @@ ROOT_NT PROPER_NOUN_NT'cutting action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'cutting action' {kind: action name} {action name: cutting}{meaning: {cutting action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor cutting ( this is the block cutting rule )' {unit: 2} + IMPERATIVE_NT'check an actor cutting ( this is the block cutting rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14432,7 +14432,7 @@ ROOT_NT PROPER_NOUN_NT'jumping action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'jumping action' {kind: action name} {action name: jumping}{meaning: {jumping action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'report an actor jumping ( this is the report jumping rule )' {unit: 2} + IMPERATIVE_NT'report an actor jumping ( this is the report jumping rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14474,7 +14474,7 @@ ROOT_NT PROPER_NOUN_NT'tying it to action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'tying it to action' {kind: action name} {action name: tying it to}{meaning: {tying it to action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor tying something to ( this is the block tying ' {unit: 2} + IMPERATIVE_NT'check an actor tying something to ( this is the block tying ' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14503,7 +14503,7 @@ ROOT_NT PROPER_NOUN_NT'drinking action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'drinking action' {kind: action name} {action name: drinking}{meaning: {drinking action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor drinking ( this is the block drinking rule )' {unit: 2} + IMPERATIVE_NT'check an actor drinking ( this is the block drinking rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14534,7 +14534,7 @@ ROOT_NT PROPER_NOUN_NT'saying sorry action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'saying sorry action' {kind: action name} {action name: saying sorry}{meaning: {saying sorry action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor saying sorry ( this is the block saying sorry' {unit: 2} + IMPERATIVE_NT'check an actor saying sorry ( this is the block saying sorry' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14568,7 +14568,7 @@ ROOT_NT PROPER_NOUN_NT'swinging action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'swinging action' {kind: action name} {action name: swinging}{meaning: {swinging action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor swinging ( this is the block swinging rule )' {unit: 2} + IMPERATIVE_NT'check an actor swinging ( this is the block swinging rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14599,7 +14599,7 @@ ROOT_NT PROPER_NOUN_NT'rubbing action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'rubbing action' {kind: action name} {action name: rubbing}{meaning: {rubbing action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor rubbing ( this is the can't rub another perso' {unit: 2} + IMPERATIVE_NT'check an actor rubbing ( this is the can't rub another perso' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is a person who is not the actor' {colon_block_command} {indent: 1} @@ -14620,7 +14620,7 @@ ROOT_NT CONSTANT_NT'"[The noun] [might not like] that." ( a )' {kind: text} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'report an actor rubbing ( this is the report rubbing rule )' {unit: 2} + IMPERATIVE_NT'report an actor rubbing ( this is the report rubbing rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14662,7 +14662,7 @@ ROOT_NT PROPER_NOUN_NT'setting it to action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'setting it to action' {kind: action name} {action name: setting it to}{meaning: {setting it to action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor setting something to ( this is the block sett' {unit: 2} + IMPERATIVE_NT'check an actor setting something to ( this is the block sett' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14691,7 +14691,7 @@ ROOT_NT PROPER_NOUN_NT'waving hands action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'waving hands action' {kind: action name} {action name: waving hands}{meaning: {waving hands action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'report an actor waving hands ( this is the report waving han' {unit: 2} + IMPERATIVE_NT'report an actor waving hands ( this is the report waving han' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14733,7 +14733,7 @@ ROOT_NT PROPER_NOUN_NT'buying action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'buying action' {kind: action name} {action name: buying}{meaning: {buying action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor buying ( this is the block buying rule )' {unit: 2} + IMPERATIVE_NT'check an actor buying ( this is the block buying rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14764,7 +14764,7 @@ ROOT_NT PROPER_NOUN_NT'climbing action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'climbing action' {kind: action name} {action name: climbing}{meaning: {climbing action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor climbing ( this is the block climbing rule )' {unit: 2} + IMPERATIVE_NT'check an actor climbing ( this is the block climbing rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -14793,7 +14793,7 @@ ROOT_NT PROPER_NOUN_NT'sleeping action' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'sleeping action' {kind: action name} {action name: sleeping}{meaning: {sleeping action = MISCELLANEOUS_MC}}} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'The Standard Rules define this action in only a minimal way,' {refined} {eval: CONSTANT_NT'The Standard Rules define this action in only a minimal way,' {kind: text}} - RULE_NT'check an actor sleeping ( this is the block sleeping rule )' {unit: 2} + IMPERATIVE_NT'check an actor sleeping ( this is the block sleeping rule )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the actor is the player' {colon_block_command} {indent: 1} @@ -15769,10 +15769,10 @@ ROOT_NT HEADING_NT'part seven - phrasebook' {heading 3} {under: H3'part seven - phrasebook'} {unit: 2} HEADING_NT'chapter 1 - saying' {heading 4} {under: H4'chapter 1 - saying'} {unit: 2} HEADING_NT'section 1 - time values' {heading 5} {under: H5'section 1 - time values'} {unit: 2} - RULE_NT'to say ( something - time ) in words ( documented at phs_tim' {unit: 2} + IMPERATIVE_NT'to say ( something - time ) in words ( documented at phs_tim' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (PrintTimeOfDayEnglish) {something}; ' - RULE_NT'to say here ( documented at phs_here )' {unit: 2} + IMPERATIVE_NT'to say here ( documented at phs_here )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "[if story tense is present tense]here[otherwise]there"' {control structure: SAY} INVOCATION_LIST_SAY_NT'if story tense is present tense' @@ -15789,7 +15789,7 @@ ROOT_NT INVOCATION_NT'"there"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"there"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"there"' {kind: text} - RULE_NT'to say now ( documented at phs_now )' {unit: 2} + IMPERATIVE_NT'to say now ( documented at phs_now )' {unit: 2} CODE_BLOCK_NT CODE_BLOCK_NT'say "[if story tense is present tense]now[otherwise]then"' {control structure: SAY} INVOCATION_LIST_SAY_NT'if story tense is present tense' @@ -15807,30 +15807,30 @@ ROOT_NT RVALUE_CONTEXT_NT'"then"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"then"' {kind: text} HEADING_NT'section 2 - boxed quotations' {heading 5} {under: H5'section 2 - boxed quotations'} {unit: 2} - RULE_NT'to display the boxed quotation ( q - text ) ( documented at ' {unit: 2} + IMPERATIVE_NT'to display the boxed quotation ( q - text ) ( documented at ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DisplayBoxedQuotation({-box-quotation-text:Q}); ' HEADING_NT'section 3 - some built-in texts' {heading 5} {under: H5'section 3 - some built-in texts'} {unit: 2} - RULE_NT'to say the/-- banner text ( documented at phs_banner )' {unit: 2} + IMPERATIVE_NT'to say the/-- banner text ( documented at phs_banner )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- Banner(); ' - RULE_NT'to say the/-- list of extension credits ( documented at phs_' {unit: 2} + IMPERATIVE_NT'to say the/-- list of extension credits ( documented at phs_' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ShowExtensionVersions(); ' - RULE_NT'to say the/-- complete list of extension credits ( documente' {unit: 2} + IMPERATIVE_NT'to say the/-- complete list of extension credits ( documente' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ShowFullExtensionVersions(); ' - RULE_NT'to say the/-- player's surroundings ( documented at phs_surr' {unit: 2} + IMPERATIVE_NT'to say the/-- player's surroundings ( documented at phs_surr' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SL_Location(true); ' - RULE_NT'to say run paragraph on with special look spacing -- running' {unit: 2} + IMPERATIVE_NT'to say run paragraph on with special look spacing -- running' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SpecialLookSpacingBreak(); ' - RULE_NT'to say command clarification break -- running on ( documente' {unit: 2} + IMPERATIVE_NT'to say command clarification break -- running on ( documente' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CommandClarificationBreak(); ' HEADING_NT'section 4 - responses' {heading 5} {under: H5'section 4 - responses'} {unit: 2} - RULE_NT'to say text of ( r - response ) ( documented at phs_response' {unit: 2} + IMPERATIVE_NT'to say text of ( r - response ) ( documented at phs_response' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'carry out the issuing the response text activity with r' INVOCATION_NT'carry out the issuing the response text activity with r' {phrase invoked: call} {kind variable declarations: K=response} @@ -15839,383 +15839,383 @@ ROOT_NT RVALUE_CONTEXT_NT'r' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} LOCAL_VARIABLE_NT'r' {local: LV"r"-response response} HEADING_NT'section 5 - saying lists of things' {heading 5} {under: H5'section 5 - saying lists of things'} {unit: 2} - RULE_NT'to list the contents of ( o - an object ) , with newlines , ' {unit: 2} + IMPERATIVE_NT'to list the contents of ( o - an object ) , with newlines , ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- WriteListFrom(child({O}), {phrase options}); ' - RULE_NT'to say a list of ( os - description of objects ) ( documente' {unit: 2} + IMPERATIVE_NT'to say a list of ( os - description of objects ) ( documente' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-d' - RULE_NT'to say a list of ( os - description of objects ) ( documente' {unit: 2} + IMPERATIVE_NT'to say a list of ( os - description of objects ) ( documente' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say list of ( os - description of objects ) ( documented ' {unit: 2} + IMPERATIVE_NT'to say list of ( os - description of objects ) ( documented ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say the list of ( os - description of objects ) ( documen' {unit: 2} + IMPERATIVE_NT'to say the list of ( os - description of objects ) ( documen' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say the list of ( os - description of objects ) ( documen' {unit: 2} + IMPERATIVE_NT'to say the list of ( os - description of objects ) ( documen' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say is-are a list of ( os - description of objects ) ( do' {unit: 2} + IMPERATIVE_NT'to say is-are a list of ( os - description of objects ) ( do' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say is-are list of ( os - description of objects ) ( docu' {unit: 2} + IMPERATIVE_NT'to say is-are list of ( os - description of objects ) ( docu' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say is-are the list of ( os - description of objects ) ( ' {unit: 2} + IMPERATIVE_NT'to say is-are the list of ( os - description of objects ) ( ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' - RULE_NT'to say a list of ( os - description of objects ) including c' {unit: 2} + IMPERATIVE_NT'to say a list of ( os - description of objects ) including c' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} ofclass Object) if ({-matches-de' HEADING_NT'section 6 - group in and omit from lists' {heading 5} {under: H5'section 6 - group in and omit from lists'} {unit: 2} - RULE_NT'to group ( os - description of objects ) together ( document' {unit: 2} + IMPERATIVE_NT'to group ( os - description of objects ) together ( document' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} provides list_together) if ({-ma' - RULE_NT'to group ( os - description of objects ) together giving art' {unit: 2} + IMPERATIVE_NT'to group ( os - description of objects ) together giving art' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- objectloop({-my:1} provides list_together) if ({-ma' - RULE_NT'to group ( os - description of objects ) together as ( t - t' {unit: 2} + IMPERATIVE_NT'to group ( os - description of objects ) together as ( t - t' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-my:2} = BlkValueCreate(TEXT_TY); {-my:2} = TEXT_TY' - RULE_NT'to omit contents in listing ( documented at ph_omit )' {unit: 2} + IMPERATIVE_NT'to omit contents in listing ( documented at ph_omit )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- c_style = c_style &~ (RECURSE_BIT+FULLINV_BIT+PARTINV_BI' HEADING_NT'section 7 - filtering contents of lists - unindexed' {heading 5} {under: H5'section 7 - filtering contents of lists - unindexed'} {unit: 2} - RULE_NT'to filter list recursion to ( d - description of objects )' {unit: 2} + IMPERATIVE_NT'to filter list recursion to ( d - description of objects )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- list_filter_routine = {D}; ' - RULE_NT'to unfilter list recursion' {unit: 2} + IMPERATIVE_NT'to unfilter list recursion' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- list_filter_routine = 0; ' HEADING_NT'chapter 2 - multimedia' {heading 4} {under: H4'chapter 2 - multimedia'} {unit: 2} HEADING_NT'section 1 - figures ( for figures language element only )' {heading 5} {under: H5'section 1 - figures ( for figures language element only )'} {unit: 2} - RULE_NT'to display ( f - figure name ) , one time only ( documented ' {unit: 2} + IMPERATIVE_NT'to display ( f - figure name ) , one time only ( documented ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DisplayFigure(ResourceIDsOfFigures-->{F}, {phrase option' - RULE_NT'to decide which number is the glulx resource id of ( f - fig' {unit: 2} + IMPERATIVE_NT'to decide which number is the glulx resource id of ( f - fig' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ResourceIDsOfFigures-->{F} ' HEADING_NT'section 2 - sound effects ( for sounds language element only' {heading 5} {under: H5'section 2 - sound effects ( for sounds language element only )'} {unit: 2} - RULE_NT'to play ( sfx - sound name ) , one time only ( documented at' {unit: 2} + IMPERATIVE_NT'to play ( sfx - sound name ) , one time only ( documented at' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PlaySound(ResourceIDsOfSounds-->{SFX}, {phrase options})' - RULE_NT'to decide which number is the glulx resource id of ( sfx - s' {unit: 2} + IMPERATIVE_NT'to decide which number is the glulx resource id of ( sfx - s' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ResourceIDsOfSounds-->{SFX} ' HEADING_NT'chapter 3 - actions , activities and rules' {heading 4} {under: H4'chapter 3 - actions , activities and rules'} {unit: 2} HEADING_NT'section 1 - trying actions' {heading 5} {under: H5'section 1 - trying actions'} {unit: 2} - RULE_NT'to try ( s - action ) ( documented at ph_try )' {unit: 2} + IMPERATIVE_NT'to try ( s - action ) ( documented at ph_try )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-try-action:S} ' - RULE_NT'to silently try ( s - action ) ( documented at ph_trysilentl' {unit: 2} + IMPERATIVE_NT'to silently try ( s - action ) ( documented at ph_trysilentl' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-try-action-silently:S} ' - RULE_NT'to try silently ( s - action ) ( documented at ph_trysilentl' {unit: 2} + IMPERATIVE_NT'to try silently ( s - action ) ( documented at ph_trysilentl' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-try-action-silently:S} ' - RULE_NT'to decide whether the action is not silent' {unit: 2} + IMPERATIVE_NT'to decide whether the action is not silent' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (keep_silent == false) ' HEADING_NT'section 2 - action requirements' {heading 5} {under: H5'section 2 - action requirements'} {unit: 2} - RULE_NT'to decide whether the action requires a touchable noun ( doc' {unit: 2} + IMPERATIVE_NT'to decide whether the action requires a touchable noun ( doc' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (NeedToTouchNoun()) ' - RULE_NT'to decide whether the action requires a touchable second nou' {unit: 2} + IMPERATIVE_NT'to decide whether the action requires a touchable second nou' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (NeedToTouchSecondNoun()) ' - RULE_NT'to decide whether the action requires a carried noun ( docum' {unit: 2} + IMPERATIVE_NT'to decide whether the action requires a carried noun ( docum' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (NeedToCarryNoun()) ' - RULE_NT'to decide whether the action requires a carried second noun ' {unit: 2} + IMPERATIVE_NT'to decide whether the action requires a carried second noun ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (NeedToCarrySecondNoun()) ' - RULE_NT'to decide whether the action requires light ( documented at ' {unit: 2} + IMPERATIVE_NT'to decide whether the action requires light ( documented at ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (NeedLightForAction()) ' - RULE_NT'to anonymously abide by ( rl - a rule ) ( documented at ph_a' {unit: 2} + IMPERATIVE_NT'to anonymously abide by ( rl - a rule ) ( documented at ph_a' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (temporary_value = FollowRulebook({RL})) { if (Rule' - RULE_NT'to anonymously abide by ( rl - value of kind k based rule pr' {unit: 2} + IMPERATIVE_NT'to anonymously abide by ( rl - value of kind k based rule pr' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (temporary_value = FollowRulebook({RL}, {V}, true)) {' - RULE_NT'to anonymously abide by ( rl - a nothing based rule ) ( docu' {unit: 2} + IMPERATIVE_NT'to anonymously abide by ( rl - a nothing based rule ) ( docu' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- if (temporary_value = FollowRulebook({RL})) { if (Rule' HEADING_NT'section 3 - stop or continue' {heading 5} {under: H5'section 3 - stop or continue'} {unit: 2} - RULE_NT'to stop the action ( documented at ph_stopaction )' {unit: 2} + IMPERATIVE_NT'to stop the action ( documented at ph_stopaction )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rtrue; - in to only' - RULE_NT'to continue the action ( documented at ph_continueaction )' {unit: 2} + IMPERATIVE_NT'to continue the action ( documented at ph_continueaction )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rfalse; - in to only' HEADING_NT'section 4 - actions as values' {heading 5} {under: H5'section 4 - actions as values'} {unit: 2} - RULE_NT'to decide what action is the current action ( documented at ' {unit: 2} + IMPERATIVE_NT'to decide what action is the current action ( documented at ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- STORED_ACTION_TY_Current({-new:action}) ' - RULE_NT'to decide what action is the action of ( a - action ) ( docu' {unit: 2} + IMPERATIVE_NT'to decide what action is the action of ( a - action ) ( docu' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {A} ' - RULE_NT'to decide if ( act - a action ) involves ( x - an object ) (' {unit: 2} + IMPERATIVE_NT'to decide if ( act - a action ) involves ( x - an object ) (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (STORED_ACTION_TY_Involves({-by-reference:act}, {X})) ' - RULE_NT'to decide what action name is the action name part of ( act ' {unit: 2} + IMPERATIVE_NT'to decide what action name is the action name part of ( act ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (STORED_ACTION_TY_Part({-by-reference:act}, STORA_ACTION' - RULE_NT'to decide what object is the noun part of ( act - a action )' {unit: 2} + IMPERATIVE_NT'to decide what object is the noun part of ( act - a action )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (STORED_ACTION_TY_Part({-by-reference:act}, STORA_NOUN_F' - RULE_NT'to decide what object is the second noun part of ( act - a a' {unit: 2} + IMPERATIVE_NT'to decide what object is the second noun part of ( act - a a' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (STORED_ACTION_TY_Part({-by-reference:act}, STORA_SECOND' - RULE_NT'to decide what object is the actor part of ( act - a action ' {unit: 2} + IMPERATIVE_NT'to decide what object is the actor part of ( act - a action ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (STORED_ACTION_TY_Part({-by-reference:act}, STORA_ACTOR_' HEADING_NT'chapter 4 - the model world' {heading 4} {under: H4'chapter 4 - the model world'} {unit: 2} HEADING_NT'section 1 - ending the story' {heading 5} {under: H5'section 1 - ending the story'} {unit: 2} - RULE_NT'to end the story ( documented at ph_end )' {unit: 2} + IMPERATIVE_NT'to end the story ( documented at ph_end )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- deadflag=3; story_complete=false; ' - RULE_NT'to end the story finally ( documented at ph_endfinally )' {unit: 2} + IMPERATIVE_NT'to end the story finally ( documented at ph_endfinally )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- deadflag=3; story_complete=true; ' - RULE_NT'to end the story saying ( finale - text ) ( documented at ph' {unit: 2} + IMPERATIVE_NT'to end the story saying ( finale - text ) ( documented at ph' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- deadflag={-by-reference:finale}; story_complete=false; ' - RULE_NT'to end the story finally saying ( finale - text ) ( document' {unit: 2} + IMPERATIVE_NT'to end the story finally saying ( finale - text ) ( document' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- deadflag={-by-reference:finale}; story_complete=true; ' - RULE_NT'to decide whether the story has ended ( documented at ph_end' {unit: 2} + IMPERATIVE_NT'to decide whether the story has ended ( documented at ph_end' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (deadflag~=0) ' - RULE_NT'to decide whether the story has ended finally ( documented a' {unit: 2} + IMPERATIVE_NT'to decide whether the story has ended finally ( documented a' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (story_complete) ' - RULE_NT'to decide whether the story has not ended ( documented at ph' {unit: 2} + IMPERATIVE_NT'to decide whether the story has not ended ( documented at ph' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (deadflag==0) ' - RULE_NT'to decide whether the story has not ended finally ( document' {unit: 2} + IMPERATIVE_NT'to decide whether the story has not ended finally ( document' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (story_complete==false) ' - RULE_NT'to resume the story ( documented at ph_resume )' {unit: 2} + IMPERATIVE_NT'to resume the story ( documented at ph_resume )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- resurrect_please = true; ' HEADING_NT'section 2 - times of day' {heading 5} {under: H5'section 2 - times of day'} {unit: 2} - RULE_NT'to decide which number is the minutes part of ( t - time ) (' {unit: 2} + IMPERATIVE_NT'to decide which number is the minutes part of ( t - time ) (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({t}%ONE_HOUR) ' - RULE_NT'to decide which number is the hours part of ( t - time ) ( d' {unit: 2} + IMPERATIVE_NT'to decide which number is the hours part of ( t - time ) ( d' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ({t}/ONE_HOUR) ' - RULE_NT'to decide if ( t - time ) is before ( t2 - time ) ( document' {unit: 2} + IMPERATIVE_NT'to decide if ( t - time ) is before ( t2 - time ) ( document' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ((({t}+20*ONE_HOUR)%(TWENTY_FOUR_HOURS))<(({t2}+20*ONE_H' - RULE_NT'to decide if ( t - time ) is after ( t2 - time ) ( documente' {unit: 2} + IMPERATIVE_NT'to decide if ( t - time ) is after ( t2 - time ) ( documente' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ((({t}+20*ONE_HOUR)%(TWENTY_FOUR_HOURS))>(({t2}+20*ONE_H' - RULE_NT'to decide which time is ( t - time ) before ( t2 - time ) ( ' {unit: 2} + IMPERATIVE_NT'to decide which time is ( t - time ) before ( t2 - time ) ( ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (({t2}-{t}+TWENTY_FOUR_HOURS)%(TWENTY_FOUR_HOURS)) ' - RULE_NT'to decide which time is ( t - time ) after ( t2 - time ) ( d' {unit: 2} + IMPERATIVE_NT'to decide which time is ( t - time ) after ( t2 - time ) ( d' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (({t2}+{t}+TWENTY_FOUR_HOURS)%(TWENTY_FOUR_HOURS)) ' HEADING_NT'section 3 - durations' {heading 5} {under: H5'section 3 - durations'} {unit: 2} - RULE_NT'to decide which time is ( n - number ) minutes ( documented ' {unit: 2} + IMPERATIVE_NT'to decide which time is ( n - number ) minutes ( documented ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (({n})%(TWENTY_FOUR_HOURS)) ' - RULE_NT'to decide which time is ( n - number ) hours ( documented at' {unit: 2} + IMPERATIVE_NT'to decide which time is ( n - number ) hours ( documented at' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (({n}*ONE_HOUR)%(TWENTY_FOUR_HOURS)) ' HEADING_NT'section 4 - timed events' {heading 5} {under: H5'section 4 - timed events'} {unit: 2} - RULE_NT'to ( r - rule ) in ( t - number ) turn/turns from now ( docu' {unit: 2} + IMPERATIVE_NT'to ( r - rule ) in ( t - number ) turn/turns from now ( docu' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SetTimedEvent({-mark-event-used:R}, {t}+1, 0); ' - RULE_NT'to ( r - rule ) at ( t - time ) ( documented at ph_attime )' {unit: 2} + IMPERATIVE_NT'to ( r - rule ) at ( t - time ) ( documented at ph_attime )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SetTimedEvent({-mark-event-used:R}, {t}, 1); ' - RULE_NT'to ( r - rule ) in ( t - time ) from now ( documented at ph_' {unit: 2} + IMPERATIVE_NT'to ( r - rule ) in ( t - time ) from now ( documented at ph_' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SetTimedEvent({-mark-event-used:R}, (the_time+{t})%(TWEN' HEADING_NT'section 5 - scenes' {heading 5} {under: H5'section 5 - scenes'} {unit: 2} - RULE_NT'to decide if ( sc - scene ) has happened ( documented at ph_' {unit: 2} + IMPERATIVE_NT'to decide if ( sc - scene ) has happened ( documented at ph_' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (scene_endings-->({sc}-1)) ' - RULE_NT'to decide if ( sc - scene ) has not happened ( documented at' {unit: 2} + IMPERATIVE_NT'to decide if ( sc - scene ) has not happened ( documented at' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (scene_endings-->({sc}-1) == 0) ' - RULE_NT'to decide if ( sc - scene ) has ended ( documented at ph_has' {unit: 2} + IMPERATIVE_NT'to decide if ( sc - scene ) has ended ( documented at ph_has' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (scene_endings-->({sc}-1) > 1) ' - RULE_NT'to decide if ( sc - scene ) has not ended ( documented at ph' {unit: 2} + IMPERATIVE_NT'to decide if ( sc - scene ) has not ended ( documented at ph' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (scene_endings-->({sc}-1) <= 1) ' HEADING_NT'section 6 - timing of scenes' {heading 5} {under: H5'section 6 - timing of scenes'} {unit: 2} - RULE_NT'to decide which time is the time since ( sc - scene ) began ' {unit: 2} + IMPERATIVE_NT'to decide which time is the time since ( sc - scene ) began ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SceneUtility({sc}, 1)) ' - RULE_NT'to decide which time is the time when ( sc - scene ) began (' {unit: 2} + IMPERATIVE_NT'to decide which time is the time when ( sc - scene ) began (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SceneUtility({sc}, 2)) ' - RULE_NT'to decide which time is the time since ( sc - scene ) ended ' {unit: 2} + IMPERATIVE_NT'to decide which time is the time since ( sc - scene ) ended ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SceneUtility({sc}, 3)) ' - RULE_NT'to decide which time is the time when ( sc - scene ) ended (' {unit: 2} + IMPERATIVE_NT'to decide which time is the time when ( sc - scene ) ended (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SceneUtility({sc}, 4)) ' HEADING_NT'section 7 - player's identity and location' {heading 5} {under: H5'section 7 - player's identity and location'} {unit: 2} - RULE_NT'to decide whether in darkness ( documented at ph_indarkness ' {unit: 2} + IMPERATIVE_NT'to decide whether in darkness ( documented at ph_indarkness ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (location==thedark) ' HEADING_NT'section 8 - moving and removing things' {heading 5} {under: H5'section 8 - moving and removing things'} {unit: 2} - RULE_NT'to move ( something - object ) to ( something else - object ' {unit: 2} + IMPERATIVE_NT'to move ( something - object ) to ( something else - object ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MoveObject({something}, {something else}, {phrase option' - RULE_NT'to remove ( something - object ) from play ( deprecated ) ( ' {unit: 2} + IMPERATIVE_NT'to remove ( something - object ) from play ( deprecated ) ( ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RemoveFromPlay({something}); ' - RULE_NT'to move ( o - object ) backdrop to all ( d - description of ' {unit: 2} + IMPERATIVE_NT'to move ( o - object ) backdrop to all ( d - description of ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MoveBackdrop({O}, {D}); ' - RULE_NT'to update backdrop positions ( documented at ph_updatebackdr' {unit: 2} + IMPERATIVE_NT'to update backdrop positions ( documented at ph_updatebackdr' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MoveFloatingObjects(); ' HEADING_NT'section 9 - the map' {heading 5} {under: H5'section 9 - the map'} {unit: 2} - RULE_NT'to decide which room is location of ( o - object ) ( documen' {unit: 2} + IMPERATIVE_NT'to decide which room is location of ( o - object ) ( documen' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LocationOf({O}) ' - RULE_NT'to decide which room is room ( d - direction ) from/of ( r1 ' {unit: 2} + IMPERATIVE_NT'to decide which room is room ( d - direction ) from/of ( r1 ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MapConnection({R1},{D}) ' - RULE_NT'to decide which door is door ( d - direction ) from/of ( r1 ' {unit: 2} + IMPERATIVE_NT'to decide which door is door ( d - direction ) from/of ( r1 ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DoorFrom({R1},{D}) ' - RULE_NT'to decide which object is the other side of ( d - door ) fro' {unit: 2} + IMPERATIVE_NT'to decide which object is the other side of ( d - door ) fro' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- OtherSideOfDoor({D},{R1}) ' - RULE_NT'to decide which object is the direction of ( d - door ) from' {unit: 2} + IMPERATIVE_NT'to decide which object is the direction of ( d - door ) from' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- DirectionDoorLeadsIn({D},{R1}) ' - RULE_NT'to decide which object is room-or-door ( d - direction ) fro' {unit: 2} + IMPERATIVE_NT'to decide which object is room-or-door ( d - direction ) fro' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RoomOrDoorFrom({R1},{D}) ' - RULE_NT'to change ( d - direction ) exit of ( r1 - room ) to ( r2 - ' {unit: 2} + IMPERATIVE_NT'to change ( d - direction ) exit of ( r1 - room ) to ( r2 - ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- AssertMapConnection({R1},{D},{R2}); ' - RULE_NT'to change ( d - direction ) exit of ( r1 - room ) to nothing' {unit: 2} + IMPERATIVE_NT'to change ( d - direction ) exit of ( r1 - room ) to nothing' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- AssertMapConnection({R1},{D},nothing); ' - RULE_NT'to decide which room is the front side of ( d - object ) ( d' {unit: 2} + IMPERATIVE_NT'to decide which room is the front side of ( d - object ) ( d' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FrontSideOfDoor({D}) ' - RULE_NT'to decide which room is the back side of ( d - object ) ( do' {unit: 2} + IMPERATIVE_NT'to decide which room is the back side of ( d - object ) ( do' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- BackSideOfDoor({D}) ' HEADING_NT'section 10 - route-finding' {heading 5} {under: H5'section 10 - route-finding'} {unit: 2} - RULE_NT'to decide which object is best route from ( r1 - object ) to' {unit: 2} + IMPERATIVE_NT'to decide which object is best route from ( r1 - object ) to' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MapRouteTo({R1},{R2},0,{phrase options}) ' - RULE_NT'to decide which number is number of moves from ( r1 - object' {unit: 2} + IMPERATIVE_NT'to decide which number is number of moves from ( r1 - object' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MapRouteTo({R1},{R2},0,{phrase options},true) ' - RULE_NT'to decide which object is best route from ( r1 - object ) to' {unit: 2} + IMPERATIVE_NT'to decide which object is best route from ( r1 - object ) to' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MapRouteTo({R1},{R2},{RS},{phrase options}) ' - RULE_NT'to decide which number is number of moves from ( r1 - object' {unit: 2} + IMPERATIVE_NT'to decide which number is number of moves from ( r1 - object' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MapRouteTo({R1},{R2},{RS},{phrase options},true) ' HEADING_NT'section 11 - the object tree' {heading 5} {under: H5'section 11 - the object tree'} {unit: 2} - RULE_NT'to decide which object is holder of ( something - object ) (' {unit: 2} + IMPERATIVE_NT'to decide which object is holder of ( something - object ) (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (HolderOf({something})) ' - RULE_NT'to decide which object is next thing held after ( something ' {unit: 2} + IMPERATIVE_NT'to decide which object is next thing held after ( something ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (sibling({something})) ' - RULE_NT'to decide which object is first thing held by ( something - ' {unit: 2} + IMPERATIVE_NT'to decide which object is first thing held by ( something - ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (child({something})) ' HEADING_NT'chapter 5 - understanding' {heading 4} {under: H4'chapter 5 - understanding'} {unit: 2} HEADING_NT'section 1 - asking yes/no questions' {heading 5} {under: H5'section 1 - asking yes/no questions'} {unit: 2} - RULE_NT'to decide whether player consents ( documented at ph_consent' {unit: 2} + IMPERATIVE_NT'to decide whether player consents ( documented at ph_consent' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- YesOrNo() ' HEADING_NT'section 2 - the player's command' {heading 5} {under: H5'section 2 - the player's command'} {unit: 2} - RULE_NT'to decide if ( s - a snippet ) matches ( t - a topic ) ( doc' {unit: 2} + IMPERATIVE_NT'to decide if ( s - a snippet ) matches ( t - a topic ) ( doc' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SnippetMatches({S}, {T})) ' - RULE_NT'to decide if ( s - a snippet ) does not match ( t - a topic ' {unit: 2} + IMPERATIVE_NT'to decide if ( s - a snippet ) does not match ( t - a topic ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SnippetMatches({S}, {T}) == false) ' - RULE_NT'to decide if ( s - a snippet ) includes ( t - a topic ) ( do' {unit: 2} + IMPERATIVE_NT'to decide if ( s - a snippet ) includes ( t - a topic ) ( do' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (matched_text=SnippetIncludes({T},{S})) ' - RULE_NT'to decide if ( s - a snippet ) does not include ( t - a topi' {unit: 2} + IMPERATIVE_NT'to decide if ( s - a snippet ) does not include ( t - a topi' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (SnippetIncludes({T},{S})==0) ' HEADING_NT'section 3 - changing the player's command' {heading 5} {under: H5'section 3 - changing the player's command'} {unit: 2} - RULE_NT'to change the text of the player's command to ( t - text ) (' {unit: 2} + IMPERATIVE_NT'to change the text of the player's command to ( t - text ) (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SetPlayersCommand({-by-reference:T}); ' - RULE_NT'to replace ( s - a snippet ) with ( t - text ) ( documented ' {unit: 2} + IMPERATIVE_NT'to replace ( s - a snippet ) with ( t - text ) ( documented ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SpliceSnippet({S}, {-by-reference:T}); ' - RULE_NT'to cut ( s - a snippet ) ( documented at ph_cutsnippet )' {unit: 2} + IMPERATIVE_NT'to cut ( s - a snippet ) ( documented at ph_cutsnippet )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SpliceSnippet({S}, 0); ' - RULE_NT'to reject the player's command ( documented at ph_rejectcomm' {unit: 2} + IMPERATIVE_NT'to reject the player's command ( documented at ph_rejectcomm' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- RulebookFails(); rtrue; - in to only' HEADING_NT'section 4 - scope and pronouns' {heading 5} {under: H5'section 4 - scope and pronouns'} {unit: 2} - RULE_NT'to place ( o - an object ) in scope , but not its contents (' {unit: 2} + IMPERATIVE_NT'to place ( o - an object ) in scope , but not its contents (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PlaceInScope({O}, {phrase options}); ' - RULE_NT'to place the/-- contents of ( o - an object ) in scope ( doc' {unit: 2} + IMPERATIVE_NT'to place the/-- contents of ( o - an object ) in scope ( doc' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- ScopeWithin({O}); ' - RULE_NT'to set pronouns from ( o - an object ) ( documented at ph_se' {unit: 2} + IMPERATIVE_NT'to set pronouns from ( o - an object ) ( documented at ph_se' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PronounNotice({O}); ' HEADING_NT'section 5 - the multiple object list' {heading 5} {under: H5'section 5 - the multiple object list'} {unit: 2} - RULE_NT'to decide what list of objects is the multiple object list (' {unit: 2} + IMPERATIVE_NT'to decide what list of objects is the multiple object list (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Mol({-new:list of objects}) ' - RULE_NT'to alter the multiple object list to ( l - list of objects )' {unit: 2} + IMPERATIVE_NT'to alter the multiple object list to ( l - list of objects )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LIST_OF_TY_Set_Mol({-by-reference:L}); ' HEADING_NT'section sr5/8/1 - message support - issuance - unindexed' {heading 5} {under: H5'section sr5/8/1 - message support - issuance - unindexed'} {unit: 2} - RULE_NT'to issue score notification message' {unit: 2} + IMPERATIVE_NT'to issue score notification message' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- NotifyTheScore(); ' - RULE_NT'to say pronoun dictionary word' {unit: 2} + IMPERATIVE_NT'to say pronoun dictionary word' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (address) pronoun_word; ' - RULE_NT'to say recap of command' {unit: 2} + IMPERATIVE_NT'to say recap of command' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PrintCommand(); ' SENTENCE_NT'the pronoun reference object is an object that varies' {unit: 2} {classified} @@ -16226,104 +16226,104 @@ ROOT_NT VERB_NT'translates into' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: into} {prep2: as} {special meaning: translates-into-i6} {category: 3} UNPARSED_NOUN_NT'pronoun reference object variable' {definite 'the' n/m/f s/p nom/acc} UNPARSED_NOUN_NT'pronoun_obj' - RULE_NT'to say pronoun i6 dictionary word' {unit: 2} + IMPERATIVE_NT'to say pronoun i6 dictionary word' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- print (address) pronoun_word; ' - RULE_NT'to say parser command so far' {unit: 2} + IMPERATIVE_NT'to say parser command so far' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PrintCommand(); ' HEADING_NT'chapter 6 - deprecated or private phrases - unindexed' {heading 4} {under: H4'chapter 6 - deprecated or private phrases - unindexed'} {unit: 2} HEADING_NT'section 1 - spatial modelling - unindexed' {heading 5} {under: H5'section 1 - spatial modelling - unindexed'} {unit: 2} - RULE_NT'to decide which object is the component parts core of ( x - ' {unit: 2} + IMPERATIVE_NT'to decide which object is the component parts core of ( x - ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- CoreOf({X}) ' - RULE_NT'to decide which object is the common ancestor of ( o - an ob' {unit: 2} + IMPERATIVE_NT'to decide which object is the common ancestor of ( o - an ob' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (CommonAncestor({O}, {P})) ' - RULE_NT'to decide which object is the not-counting-parts holder of (' {unit: 2} + IMPERATIVE_NT'to decide which object is the not-counting-parts holder of (' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (CoreOfParentOfCoreOf({O})) ' - RULE_NT'to decide which object is the visibility-holder of ( o - obj' {unit: 2} + IMPERATIVE_NT'to decide which object is the visibility-holder of ( o - obj' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- VisibilityParent({O}) ' - RULE_NT'to calculate visibility ceiling at low level' {unit: 2} + IMPERATIVE_NT'to calculate visibility ceiling at low level' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- FindVisibilityLevels(); ' - RULE_NT'to decide which object is the touchability ceiling of ( o - ' {unit: 2} + IMPERATIVE_NT'to decide which object is the touchability ceiling of ( o - ' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- TouchabilityCeiling({O}) ' - RULE_NT'to decide which number is the visibility ceiling count calcu' {unit: 2} + IMPERATIVE_NT'to decide which number is the visibility ceiling count calcu' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- visibility_levels ' - RULE_NT'to decide which object is the visibility ceiling calculated' {unit: 2} + IMPERATIVE_NT'to decide which object is the visibility ceiling calculated' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- visibility_ceiling ' HEADING_NT'section 2 - room descriptions - unindexed' {heading 5} {under: H5'section 2 - room descriptions - unindexed'} {unit: 2} - RULE_NT'to produce a room description with going spacing conventions' {unit: 2} + IMPERATIVE_NT'to produce a room description with going spacing conventions' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- LookAfterGoing(); ' - RULE_NT'to print the location's description' {unit: 2} + IMPERATIVE_NT'to print the location's description' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- PrintOrRun(location, description); ' - RULE_NT'to decide if set to sometimes abbreviated room descriptions' {unit: 2} + IMPERATIVE_NT'to decide if set to sometimes abbreviated room descriptions' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (lookmode == 1) ' - RULE_NT'to decide if set to unabbreviated room descriptions' {unit: 2} + IMPERATIVE_NT'to decide if set to unabbreviated room descriptions' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (lookmode == 2) ' - RULE_NT'to decide if set to abbreviated room descriptions' {unit: 2} + IMPERATIVE_NT'to decide if set to abbreviated room descriptions' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (lookmode == 3) ' HEADING_NT'section 3 - action conversion - unindexed' {heading 5} {under: H5'section 3 - action conversion - unindexed'} {unit: 2} - RULE_NT'to convert to ( an - an action name ) on ( o - an object )' {unit: 2} + IMPERATIVE_NT'to convert to ( an - an action name ) on ( o - an object )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- return GVS_Convert({AN},{O},0); - in to only' - RULE_NT'to convert to request of ( x - object ) to perform ( an - ac' {unit: 2} + IMPERATIVE_NT'to convert to request of ( x - object ) to perform ( an - ac' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- return ConvertToRequest({X}, {AN}, {Y}, {Z}); ' - RULE_NT'to convert to special going-with-push action' {unit: 2} + IMPERATIVE_NT'to convert to special going-with-push action' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- return ConvertToGoingWithPush(); ' HEADING_NT'section 4 - surreptitious violation of invariants - unindexe' {heading 5} {under: H5'section 4 - surreptitious violation of invariants - unindexed'} {unit: 2} - RULE_NT'to surreptitiously move ( something - object ) to ( somethin' {unit: 2} + IMPERATIVE_NT'to surreptitiously move ( something - object ) to ( somethin' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- move {something} to {something else}; ' - RULE_NT'to surreptitiously move ( something - object ) to ( somethin' {unit: 2} + IMPERATIVE_NT'to surreptitiously move ( something - object ) to ( somethin' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- MoveDuringGoing({something}, {something else}); ' - RULE_NT'to surreptitiously reckon darkness' {unit: 2} + IMPERATIVE_NT'to surreptitiously reckon darkness' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- SilentlyConsiderLight(); ' HEADING_NT'section 5 - capitalised list-writing - unindexed' {heading 5} {under: H5'section 5 - capitalised list-writing - unindexed'} {unit: 2} - RULE_NT'to say list-writer list of marked objects' {unit: 2} + IMPERATIVE_NT'to say list-writer list of marked objects' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- WriteListOfMarkedObjects(ENGLISH_BIT); ' - RULE_NT'to say list-writer articled list of marked objects' {unit: 2} + IMPERATIVE_NT'to say list-writer articled list of marked objects' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- WriteListOfMarkedObjects(ENGLISH_BIT+DEFART_BIT+CFIRS' HEADING_NT'section 6 - printing names - unindexed' {heading 5} {under: H5'section 6 - printing names - unindexed'} {unit: 2} - RULE_NT'to decide if expanding text for comparison purposes' {unit: 2} + IMPERATIVE_NT'to decide if expanding text for comparison purposes' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- say__comp ' HEADING_NT'section 7 - command parsing - unindexed' {heading 5} {under: H5'section 7 - command parsing - unindexed'} {unit: 2} - RULE_NT'to decide whether the i6 parser is running multiple actions' {unit: 2} + IMPERATIVE_NT'to decide whether the i6 parser is running multiple actions' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- (multiflag==1) ' HEADING_NT'section 8 - deprecated inform - unindexed' {heading 5} {under: H5'section 8 - deprecated inform - unindexed'} {unit: 2} - RULE_NT'to yes ( documented at ph_yes )' {unit: 2} + IMPERATIVE_NT'to yes ( documented at ph_yes )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rtrue; - in to decide if only' - RULE_NT'to no ( documented at ph_no )' {unit: 2} + IMPERATIVE_NT'to no ( documented at ph_no )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- rfalse; - in to decide if only' HEADING_NT'section 9 - debugging inform - unindexed' {heading 5} {under: H5'section 9 - debugging inform - unindexed'} {unit: 2} - RULE_NT'to ***' {unit: 2} + IMPERATIVE_NT'to ***' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:verbose-checking} ' - RULE_NT'to *** ( t - text )' {unit: 2} + IMPERATIVE_NT'to *** ( t - text )' {unit: 2} CODE_BLOCK_NT INVOCATION_LIST_NT'(- {-primitive-definition:verbose-checking} ' ENDHERE_NT'the standard rules' {unit: 2} @@ -16342,14 +16342,14 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'asking for information' UNPARSED_NOUN_NT'out of world' - RULE_NT'carry out asking for information' {unit: 4} + IMPERATIVE_NT'carry out asking for information' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "An implementation of the following creative brief:Peo' {control structure: SAY} INVOCATION_LIST_SAY_NT'"An implementation of the following creative brief:People ' INVOCATION_NT'"An implementation of the following creative brief:People ' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"An implementation of the following creative brief:People ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"An implementation of the following creative brief:People ' {kind: text} - RULE_NT'when play begins' {unit: 4} + IMPERATIVE_NT'when play begins' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "Gelato's Syndrome. It's struck, and it's struck hard. I' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Gelato's Syndrome. It's struck, and it's struck hard. In th' @@ -16367,7 +16367,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'current owner' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'current owner' {nonlocal: 'current owner'(var)person}} {created here} COMMON_NOUN_NT'person which varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=people variable-pointer(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'every turn' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if player is active' {colon_block_command} @@ -16379,7 +16379,7 @@ ROOT_NT INVOCATION_NT'follow the character movement rules' {phrase invoked: call} RVALUE_CONTEXT_NT'character movement rules' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'character movement rules' {kind: rulebook} {rulebook: character movement}{meaning: {character movement rules = RULEBOOK_MC}} - RULE_NT'every turn' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the last person named is the player' {control structure: NOW} CONDITION_CONTEXT_NT'the last person named is the player' @@ -16402,7 +16402,7 @@ ROOT_NT VERB_NT'are' {verb 'be' 3p p act IS_TENSE +ve} PROPER_NOUN_NT'character movement rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: character movement}} {created here} COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'the first character movement rule' {unit: 4} + IMPERATIVE_NT'the first character movement rule' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now group size is 1' {control structure: NOW} CONDITION_CONTEXT_NT'group size is 1' @@ -16412,7 +16412,7 @@ ROOT_NT CONDITION_CONTEXT_NT'the last thing named is the player' INVOCATION_LIST_NT'now the player is passive' {control structure: NOW} CONDITION_CONTEXT_NT'the player is passive' - RULE_NT'a character movement rule' {unit: 4} + IMPERATIVE_NT'a character movement rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with mover running through innocent people' {colon_block_command} {indent: 1} @@ -16434,7 +16434,7 @@ ROOT_NT INVOCATION_NT'follow the movement reporting rule' {phrase invoked: call} RVALUE_CONTEXT_NT'movement reporting rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'movement reporting rule' {kind: rule} {rule: movement reporting rule}{meaning: {movement reporting rule = MISCELLANEOUS_MC}} - RULE_NT'a character movement rule' {unit: 4} + IMPERATIVE_NT'a character movement rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with next mover running through mercantile people' {colon_block_command} {indent: 1} @@ -16456,7 +16456,7 @@ ROOT_NT INVOCATION_NT'follow the infection rule' {phrase invoked: call} RVALUE_CONTEXT_NT'infection rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'infection rule' {kind: rule} {rule: infection rule}{meaning: {infection rule = MISCELLANEOUS_MC}} - RULE_NT'to decide whether movement has not yet occurred' {unit: 4} + IMPERATIVE_NT'to decide whether movement has not yet occurred' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is passive' {colon_block_command} @@ -16468,13 +16468,13 @@ ROOT_NT INVOCATION_NT'no' {phrase invoked: call} INVOCATION_LIST_NT'yes' INVOCATION_NT'yes' {phrase invoked: call} - RULE_NT'definition' {unit: 4} - RULE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} SENTENCE_NT'the shopowner rules is a rulebook' {unit: 4} {classified} {clears pronouns} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'shopowner rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: shopowner}} {created here} COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'a shopowner rule' {unit: 4} + IMPERATIVE_NT'a shopowner rule' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let the shop be a random room owned by the current owner' INVOCATION_NT'let the shop be a random room owned by the current owner' {phrase invoked: call} @@ -16499,7 +16499,7 @@ ROOT_NT RVALUE_CONTEXT_NT'current owner closing the escape' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'current owner closing the escape' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'report someone closing a door when the person asked owns the' {unit: 4} + IMPERATIVE_NT'report someone closing a door when the person asked owns the' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked], muttering darkly about air-conditio' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' @@ -16519,7 +16519,7 @@ ROOT_NT RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'report vanessa closing the metal door when the metal door is' {unit: 4} + IMPERATIVE_NT'report vanessa closing the metal door when the metal door is' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if vanessa is visible' {colon_block_command} @@ -16540,7 +16540,7 @@ ROOT_NT RVALUE_CONTEXT_NT'"The metal door slides heavily back into place."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"The metal door slides heavily back into place."' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'a shopowner rule' {unit: 4} + IMPERATIVE_NT'a shopowner rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the location of the current owner encloses a submitted ar' {colon_block_command} {indent: 1} @@ -16556,14 +16556,14 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'filing' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'before someone filing something which is not carried by the ' {unit: 4} + IMPERATIVE_NT'before someone filing something which is not carried by the ' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked taking the noun' INVOCATION_NT'try the person asked taking the noun' {phrase invoked: call} RVALUE_CONTEXT_NT'person asked taking the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'person asked taking the noun' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out someone filing' {unit: 4} + IMPERATIVE_NT'carry out someone filing' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked does not carry the noun and the person a' {colon_block_command} @@ -16593,7 +16593,7 @@ ROOT_NT CODE_BLOCK_NT {control structure: INS} INVOCATION_LIST_NT'now the noun is nowhere' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is nowhere' - RULE_NT'report someone filing' {unit: 4} + IMPERATIVE_NT'report someone filing' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] registers [the noun] and files it aw' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' @@ -16616,7 +16616,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'shopper rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: shopper}} {created here} COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'a shopper rule' {unit: 4} + IMPERATIVE_NT'a shopper rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the current actor carries something ( called the problem ' {colon_block_command} @@ -16629,7 +16629,7 @@ ROOT_NT RVALUE_CONTEXT_NT'current actor resolving the problem' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'current actor resolving the problem' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'a shopper rule' {unit: 4} + IMPERATIVE_NT'a shopper rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the current actor is not in the pool hall and the air con' {colon_block_command} {indent: 1} @@ -16658,7 +16658,7 @@ ROOT_NT INVOCATION_NT'try the current actor going the way' {phrase invoked: call} RVALUE_CONTEXT_NT'current actor going the way' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'current actor going the way' {kind: action} {explicit action: direction}>} - RULE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if it is outdoors' {colon_block_command} @@ -16715,12 +16715,12 @@ ROOT_NT COMMON_NOUN_NT'artwork' {indefinite 'an' n/m/f nom/acc s} {refined} {creation: << kind=artwork(x) >>} {refers: infs'artwork'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of thing' {refined} {refers: infs'thing'} COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before printing the name of an artwork' {unit: 4} + IMPERATIVE_NT'before printing the name of an artwork' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say italic type' {control structure: SAY} INVOCATION_LIST_SAY_NT'italic type' INVOCATION_NT'italic type' {phrase invoked: call} - RULE_NT'after printing the name of an artwork' {unit: 4} + IMPERATIVE_NT'after printing the name of an artwork' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say roman type' {control structure: SAY} INVOCATION_LIST_SAY_NT'roman type' @@ -16737,14 +16737,14 @@ ROOT_NT COMMON_NOUN_NT'book' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=book(x) >>} {refers: infs'book'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of artwork' {refined} {refers: infs'artwork'} COMMON_NOUN_NT'artwork' {refined} {refers: infs'artwork'} {creation: << kind=artwork(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before someone resolving a book when the person asked is not' {unit: 4} + IMPERATIVE_NT'before someone resolving a book when the person asked is not' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked approaching the public library' INVOCATION_NT'try the person asked approaching the public library' {phrase invoked: call} RVALUE_CONTEXT_NT'person asked approaching the public library' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'person asked approaching the public library' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out someone resolving a book' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a book' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'move the noun to the public library' INVOCATION_NT'move the noun to the public library' {phrase invoked: call} @@ -16754,7 +16754,7 @@ ROOT_NT CONSTANT_NT'public library' {kind: room} {instance: I110'public library'} {enumeration: 0} INVOCATION_LIST_NT'now the noun is submitted' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is submitted' - RULE_NT'report someone resolving a book' {unit: 4} + IMPERATIVE_NT'report someone resolving a book' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] turns in [the noun]."' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' @@ -16773,13 +16773,13 @@ ROOT_NT INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} - RULE_NT'before listing contents' {unit: 4} + IMPERATIVE_NT'before listing contents' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'group books together' INVOCATION_NT'group books together' {phrase invoked: call} RVALUE_CONTEXT_NT'books' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'books' {kind: description of books} {proposition: << kind=book(x) >>} - RULE_NT'before grouping together books' {unit: 4} + IMPERATIVE_NT'before grouping together books' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "books entitled "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"books entitled "' @@ -16791,18 +16791,18 @@ ROOT_NT COMMON_NOUN_NT'stamped envelope' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=stamped envelope(x) >>} {refers: infs'stamped envelope'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of thing' {refined} {refers: infs'thing'} COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before someone resolving a stamped envelope when the person ' {unit: 4} + IMPERATIVE_NT'before someone resolving a stamped envelope when the person ' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked approaching the post office' INVOCATION_NT'try the person asked approaching the post office' {phrase invoked: call} RVALUE_CONTEXT_NT'person asked approaching the post office' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'person asked approaching the post office' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out someone resolving a stamped envelope' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a stamped envelope' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is nowhere' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is nowhere' - RULE_NT'report someone resolving a stamped envelope' {unit: 4} + IMPERATIVE_NT'report someone resolving a stamped envelope' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] slips [a noun] into the outgoing mai' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' @@ -16821,7 +16821,7 @@ ROOT_NT INVOCATION_NT'" into the outgoing mail slot."' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'" into the outgoing mail slot."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" into the outgoing mail slot."' {kind: text} - RULE_NT'instead of someone resolving a stamped envelope when the per' {unit: 4} + IMPERATIVE_NT'instead of someone resolving a stamped envelope when the per' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is visible' {indent: 1} {colon_block_command} @@ -16861,14 +16861,14 @@ ROOT_NT COMMON_NOUN_NT'dvd' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=dvd(x) >>} {refers: infs'dvd'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of artwork' {refined} {refers: infs'artwork'} COMMON_NOUN_NT'artwork' {refined} {refers: infs'artwork'} {creation: << kind=artwork(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before someone resolving a dvd when the person asked is not ' {unit: 4} + IMPERATIVE_NT'before someone resolving a dvd when the person asked is not ' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked approaching the rental store' INVOCATION_NT'try the person asked approaching the rental store' {phrase invoked: call} RVALUE_CONTEXT_NT'person asked approaching the rental store' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'person asked approaching the rental store' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out someone resolving a dvd' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a dvd' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is submitted' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is submitted' @@ -16878,7 +16878,7 @@ ROOT_NT NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} RVALUE_CONTEXT_NT'movie rental store' {token check to do: } {token to be parsed against: TEST_VALUE_NT'object'} {required: object} CONSTANT_NT'movie rental store' {kind: room} {instance: I104'movie rental store'} {enumeration: 0} - RULE_NT'report someone resolving a dvd' {unit: 4} + IMPERATIVE_NT'report someone resolving a dvd' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] returns [the noun]."' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' @@ -16897,7 +16897,7 @@ ROOT_NT INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} - RULE_NT'instead of someone resolving a dvd when the person asked car' {unit: 4} + IMPERATIVE_NT'instead of someone resolving a dvd when the person asked car' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is visible' {colon_block_command} @@ -16926,13 +16926,13 @@ ROOT_NT CONDITION_CONTEXT_NT'every dvd carried by the person asked is submitted' INVOCATION_LIST_NT'now every dvd carried by the person asked is in the location' {control structure: NOW} CONDITION_CONTEXT_NT'every dvd carried by the person asked is in the location of ' - RULE_NT'before listing contents' {unit: 4} + IMPERATIVE_NT'before listing contents' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'group dvds together' INVOCATION_NT'group dvds together' {phrase invoked: call} RVALUE_CONTEXT_NT'dvds' {token check to do: } {token to be parsed against: TEST_VALUE_NT'description of objects'} {required: description of objects} CONSTANT_NT'dvds' {kind: description of dvds} {proposition: << kind=dvd(x) >>} - RULE_NT'before grouping together dvds' {unit: 4} + IMPERATIVE_NT'before grouping together dvds' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "DVDs of "' {control structure: SAY} INVOCATION_LIST_SAY_NT'"DVDs of "' @@ -16943,7 +16943,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'approaching' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'carry out someone approaching' {unit: 4} + IMPERATIVE_NT'carry out someone approaching' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let the way be the best route from the location of the perso' INVOCATION_NT'let the way be the best route from the location of the perso' {phrase invoked: call} @@ -16979,7 +16979,7 @@ ROOT_NT COMMON_NOUN_NT'coupon' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=coupon(x) >>} {refers: infs'coupon'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of thing' {refined} {refers: infs'thing'} COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'carry out someone resolving a coupon' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a coupon' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked giving the noun to vanessa' INVOCATION_NT'try the person asked giving the noun to vanessa' {phrase invoked: call} @@ -16989,20 +16989,20 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: negative} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the block giving rule' UNPARSED_NOUN_NT'in any rulebook' - RULE_NT'check giving something to someone ( this is the block player' {unit: 4} + IMPERATIVE_NT'check giving something to someone ( this is the block player' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the block giving rule' INVOCATION_NT'abide by the block giving rule' {phrase invoked: call} RVALUE_CONTEXT_NT'block giving rule' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a rule'} {required: rule} CONSTANT_NT'block giving rule' {kind: rule} {rule: block giving rule}{meaning: {block giving rule = MISCELLANEOUS_MC}} - RULE_NT'before someone resolving a coupon when the person asked is n' {unit: 4} + IMPERATIVE_NT'before someone resolving a coupon when the person asked is n' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked approaching cold comfort' INVOCATION_NT'try the person asked approaching cold comfort' {phrase invoked: call} RVALUE_CONTEXT_NT'person asked approaching cold comfort' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'person asked approaching cold comfort' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'after someone giving a coupon to vanessa' {unit: 4} + IMPERATIVE_NT'after someone giving a coupon to vanessa' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let the reward be a random ice cream cone' INVOCATION_NT'let the reward be a random ice cream cone' {phrase invoked: call} @@ -17124,7 +17124,7 @@ ROOT_NT AND_NT',' {refined} PROPER_NOUN_NT'saffron silk' {refined} {refers: infs'saffron silk'} {eval: CONSTANT_NT'saffron silk' {kind: infection color} {instance: I86'saffron silk'[infection color]} {enumeration: 25}} {created here} PROPER_NOUN_NT'cookie dough cream' {refined} {refers: infs'cookie dough cream'} {eval: CONSTANT_NT'cookie dough cream' {kind: infection color} {instance: I87'cookie dough cream'[infection color]} {enumeration: 26}} {created here} - RULE_NT'to say list of flavors' {unit: 4} + IMPERATIVE_NT'to say list of flavors' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let current color be french vanilla' {indent: 1} INVOCATION_NT'let current color be french vanilla' {phrase invoked: call} @@ -17170,7 +17170,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'buying the flavor' UNPARSED_NOUN_NT'applying to one infection color' - RULE_NT'check buying the flavor' {unit: 4} + IMPERATIVE_NT'check buying the flavor' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'unless the player can see vanessa' {colon_block_command} {indent: 1} @@ -17184,7 +17184,7 @@ ROOT_NT RVALUE_CONTEXT_NT'"It would help if you were in the presence of an ice cream s' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"It would help if you were in the presence of an ice cream s' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out buying the flavor' {unit: 4} + IMPERATIVE_NT'carry out buying the flavor' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "'Do you have a coupon?' Vanessa demands. You admit you ' {control structure: SAY} INVOCATION_LIST_SAY_NT'"'Do you have a coupon?' Vanessa demands. You admit you do n' @@ -17232,14 +17232,14 @@ ROOT_NT VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'the infection color property' UNPARSED_NOUN_NT'referring to an ice cream cone' - RULE_NT'carry out someone resolving an ice cream cone' {unit: 4} + IMPERATIVE_NT'carry out someone resolving an ice cream cone' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked eating the noun' INVOCATION_NT'try the person asked eating the noun' {phrase invoked: call} RVALUE_CONTEXT_NT'person asked eating the noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT'action'} {required: action} CONSTANT_NT'person asked eating the noun' {kind: action} {explicit action: } CODE_BLOCK_NT {control structure: INS} - RULE_NT'instead of someone eating a fresh ice cream cone' {unit: 4} + IMPERATIVE_NT'instead of someone eating a fresh ice cream cone' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is half-eaten' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is half-eaten' @@ -17266,7 +17266,7 @@ ROOT_NT INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} - RULE_NT'report someone eating an ice cream cone' {unit: 4} + IMPERATIVE_NT'report someone eating an ice cream cone' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] pops the end of [the noun] into [if ' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' @@ -17306,7 +17306,7 @@ ROOT_NT RVALUE_CONTEXT_NT'" mouth and swallows."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" mouth and swallows."' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'before printing the name of an ice cream cone' {unit: 4} + IMPERATIVE_NT'before printing the name of an ice cream cone' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[if half-eaten]half-eaten [end if][infection color] "' {control structure: SAY} INVOCATION_LIST_SAY_NT'if half-eaten' @@ -17330,7 +17330,7 @@ ROOT_NT RVALUE_CONTEXT_NT'" "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" "' {kind: text} HEADING_NT'section 2 - infection rules' {heading 5} {under: H5'section 2 - infection rules'} {unit: 4} - RULE_NT'this is the infection rule' {unit: 4} + IMPERATIVE_NT'this is the infection rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if an infected person ( called typhoid mary ) can see a clea' {colon_block_command} {indent: 1} @@ -17363,7 +17363,7 @@ ROOT_NT COMMON_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT} ALLOWED_NT'has' {refined} UNPARSED_NOUN_NT'infection color' {indefinite 'an' n/m/f nom/acc s} {refined} - RULE_NT'every turn' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is infected' {colon_block_command} @@ -17376,13 +17376,13 @@ ROOT_NT INVOCATION_NT'"You feel itchy."' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"You feel itchy."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You feel itchy."' {kind: text} - RULE_NT'definition' {unit: 4} - RULE_NT'definition' {unit: 4} - RULE_NT'when play begins' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} + IMPERATIVE_NT'when play begins' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now right hand status line is "Sick: [number of infected peo' {control structure: NOW} CONDITION_CONTEXT_NT'right hand status line is "Sick: [number of infected people]' - RULE_NT'every turn' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if every person is infected' {colon_block_command} @@ -17412,7 +17412,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'sneezing on' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'check sneezing on' {unit: 4} + IMPERATIVE_NT'check sneezing on' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player is clean' {colon_block_command} @@ -17454,19 +17454,19 @@ ROOT_NT RVALUE_CONTEXT_NT'" cannot be infected."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" cannot be infected."' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out sneezing on' {unit: 4} + IMPERATIVE_NT'carry out sneezing on' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is infected' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is infected' INVOCATION_LIST_NT'now the infection color of the noun is a random infection co' {control structure: NOW} CONDITION_CONTEXT_NT'the infection color of the noun is a random infection color' - RULE_NT'carry out someone sneezing on' {unit: 4} + IMPERATIVE_NT'carry out someone sneezing on' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is infected' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is infected' INVOCATION_LIST_NT'now the infection color of the noun is a random infection co' {control structure: NOW} CONDITION_CONTEXT_NT'the infection color of the noun is a random infection color' - RULE_NT'report sneezing on' {unit: 4} + IMPERATIVE_NT'report sneezing on' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "Unable to control yourself, you sneeze on [noun]."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"Unable to control yourself, you sneeze on "' @@ -17481,7 +17481,7 @@ ROOT_NT INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} - RULE_NT'report someone sneezing on' {unit: 4} + IMPERATIVE_NT'report someone sneezing on' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The person asked] sneezes on [if the noun is the playe' {control structure: SAY} INVOCATION_LIST_SAY_NT'the person asked' @@ -17532,7 +17532,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'injecting it with' UNPARSED_NOUN_NT'applying to two things' - RULE_NT'check injecting it with' {unit: 4} + IMPERATIVE_NT'check injecting it with' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not the syringe' {indent: 1} {colon_block_command} @@ -17578,18 +17578,18 @@ ROOT_NT RVALUE_CONTEXT_NT'" is not infected, and the syringe contains a cure, not a va' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" is not infected, and the syringe contains a cure, not a va' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out injecting it with' {unit: 4} + IMPERATIVE_NT'carry out injecting it with' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is clean' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is clean' - RULE_NT'after injecting the player with something' {unit: 4} + IMPERATIVE_NT'after injecting the player with something' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You inject yourself, wincing at the sting. But the itch' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You inject yourself, wincing at the sting. But the itching ' INVOCATION_NT'"You inject yourself, wincing at the sting. But the itching ' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"You inject yourself, wincing at the sting. But the itching ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You inject yourself, wincing at the sting. But the itching ' {kind: text} - RULE_NT'report injecting it with' {unit: 4} + IMPERATIVE_NT'report injecting it with' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You inject [the noun], who is now cured (but could easi' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You inject "' @@ -17632,7 +17632,7 @@ ROOT_NT VERB_NT'translates as' {verb 'translate' 3p s act IS_TENSE +ve} {prep1: as} {special meaning: use-translates} UNPARSED_NOUN_NT'sequential action' UNPARSED_NOUN_NT'(- Constant SEQUENTIAL_ACTION; ' - RULE_NT'before going through a closed door ( called the blocking doo' {unit: 4} + IMPERATIVE_NT'before going through a closed door ( called the blocking doo' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} @@ -17662,7 +17662,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before locking an open thing ( called the door ajar ) with s' {unit: 4} + IMPERATIVE_NT'before locking an open thing ( called the door ajar ) with s' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} @@ -17692,7 +17692,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before locking keylessly an open thing ( called the door aja' {unit: 4} + IMPERATIVE_NT'before locking keylessly an open thing ( called the door aja' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} @@ -17722,7 +17722,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before opening a locked thing ( called the sealed chest ) ( ' {unit: 4} + IMPERATIVE_NT'before opening a locked thing ( called the sealed chest ) ( ' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} @@ -17752,7 +17752,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before someone trying going through a closed door ( called t' {unit: 4} + IMPERATIVE_NT'before someone trying going through a closed door ( called t' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked trying opening the blocking door' INVOCATION_NT'try the person asked trying opening the blocking door' {phrase invoked: call} @@ -17766,7 +17766,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before someone trying locking an open thing ( called the doo' {unit: 4} + IMPERATIVE_NT'before someone trying locking an open thing ( called the doo' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked trying closing the door ajar' INVOCATION_NT'try the person asked trying closing the door ajar' {phrase invoked: call} @@ -17780,7 +17780,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before someone trying locking keylessly an open thing ( call' {unit: 4} + IMPERATIVE_NT'before someone trying locking keylessly an open thing ( call' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked trying closing the door ajar' INVOCATION_NT'try the person asked trying closing the door ajar' {phrase invoked: call} @@ -17794,7 +17794,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'stop the action' {results_from_splitting} {indent: 1} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'before someone trying opening a locked thing ( called the se' {unit: 4} + IMPERATIVE_NT'before someone trying opening a locked thing ( called the se' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try the person asked trying unlocking keylessly the sealed c' INVOCATION_NT'try the person asked trying unlocking keylessly the sealed c' {phrase invoked: call} @@ -17810,7 +17810,7 @@ ROOT_NT INVOCATION_NT'stop the action' {phrase invoked: call} HEADING_NT'volume 2 - default locking and unlocking' {heading 1} {under: H1'volume 2 - default locking and unlocking'} {unit: 4} HEADING_NT'part 1 - the matching key rule' {heading 3} {under: H3'part 1 - the matching key rule'} {unit: 4} - RULE_NT'this is the need a matching key rule' {unit: 4} + IMPERATIVE_NT'this is the need a matching key rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked encloses something ( called item ) which' {colon_block_command} {indent: 1} @@ -17851,7 +17851,7 @@ ROOT_NT NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} INVOCATION_LIST_NT'stop the action' {indent: 2} INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'to say key-refusal for ( locked-thing - an object )' {unit: 4} + IMPERATIVE_NT'to say key-refusal for ( locked-thing - an object )' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'carry out the refusing keys activity with the locked-thing' INVOCATION_NT'carry out the refusing keys activity with the locked-thing' {phrase invoked: call} {kind variable declarations: K=object} @@ -17863,14 +17863,14 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-activity} UNPARSED_NOUN_NT'refusing keys of something' UNPARSED_NOUN_NT'an activity' - RULE_NT'rule for refusing keys of something ( called locked-thing ) ' {unit: 4} + IMPERATIVE_NT'rule for refusing keys of something ( called locked-thing ) ' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[We] [lack] a key that fits [the locked-thing]." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[We] [lack] a key that fits [the locked-thing]." ( a )' INVOCATION_NT'"[We] [lack] a key that fits [the locked-thing]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"[We] [lack] a key that fits [the locked-thing]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[We] [lack] a key that fits [the locked-thing]." ( a )' {kind: text} - RULE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked carries it' {colon_block_command} @@ -17932,7 +17932,7 @@ ROOT_NT VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"open [a lockable thing] with [something]"' UNPARSED_NOUN_NT'unlocking it with' - RULE_NT'check unlocking it with ( this is the must be able to reach ' {unit: 4} + IMPERATIVE_NT'check unlocking it with ( this is the must be able to reach ' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the must have accessible the second noun rule' INVOCATION_NT'abide by the must have accessible the second noun rule' {phrase invoked: call} @@ -17942,7 +17942,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the right second rule' UNPARSED_NOUN_NT'instead of the can't unlock without the correct key rule in ' - RULE_NT'this is the right second rule' {unit: 4} + IMPERATIVE_NT'this is the right second rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun does not unlock the noun' {colon_block_command} {indent: 1} @@ -17984,7 +17984,7 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'object' {indefinite 'an' n/m/f nom/acc s} UNPARSED_NOUN_NT'key unlocked with' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'check an actor unlocking keylessly ( this is the check keyle' {unit: 4} + IMPERATIVE_NT'check an actor unlocking keylessly ( this is the check keyle' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the can't unlock without a lock rule' INVOCATION_NT'abide by the can't unlock without a lock rule' {phrase invoked: call} @@ -18000,7 +18000,7 @@ ROOT_NT CONSTANT_NT'need a matching key rule' {kind: rule} {rule: need a matching key rule}{meaning: {need a matching key rule = MISCELLANEOUS_MC}} INVOCATION_LIST_NT'now the key unlocked with is the second noun' {control structure: NOW} CONDITION_CONTEXT_NT'the key unlocked with is the second noun' - RULE_NT'carry out an actor unlocking keylessly ( this is the standar' {unit: 4} + IMPERATIVE_NT'carry out an actor unlocking keylessly ( this is the standar' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} @@ -18050,7 +18050,7 @@ ROOT_NT UNPARSED_NOUN_NT'"lock [a lockable thing] with [something]"' UNPARSED_NOUN_NT'locking it with' - RULE_NT'check locking it with' {unit: 4} + IMPERATIVE_NT'check locking it with' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the must have accessible the second noun rule' INVOCATION_NT'abide by the must have accessible the second noun rule' {phrase invoked: call} @@ -18088,7 +18088,7 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'object' {indefinite 'an' n/m/f nom/acc s} UNPARSED_NOUN_NT'key locked with' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'check an actor locking keylessly ( this is the check keyless' {unit: 4} + IMPERATIVE_NT'check an actor locking keylessly ( this is the check keyless' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'abide by the can't lock without a lock rule' INVOCATION_NT'abide by the can't lock without a lock rule' {phrase invoked: call} @@ -18108,7 +18108,7 @@ ROOT_NT CONSTANT_NT'need a matching key rule' {kind: rule} {rule: need a matching key rule}{meaning: {need a matching key rule = MISCELLANEOUS_MC}} INVOCATION_LIST_NT'now the key locked with is the second noun' {control structure: NOW} CONDITION_CONTEXT_NT'the key locked with is the second noun' - RULE_NT'carry out an actor locking keylessly ( this is the standard ' {unit: 4} + IMPERATIVE_NT'carry out an actor locking keylessly ( this is the standard ' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} @@ -18149,7 +18149,7 @@ ROOT_NT PROPER_NOUN_NT'A kind of key whose inventory listing changes to reflect the' {refined} {eval: CONSTANT_NT'A kind of key whose inventory listing changes to reflect the' {kind: text}} - RULE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} SENTENCE_NT'unbolting relates one passkey to various things' {unit: 4} {classified} VERB_NT'relates' {verb 'relate' 3p s act IS_TENSE +ve} {special meaning: new-relation} UNPARSED_NOUN_NT'unbolting' {new relation: unbolting} @@ -18159,7 +18159,7 @@ ROOT_NT VERB_NT'means' {verb 'mean' 3p s act IS_TENSE +ve} {special meaning: verb-means} UNPARSED_NOUN_NT'to unbolt' UNPARSED_NOUN_NT'unbolting relation' {definite 'the' n/m/f s/p nom/acc} - RULE_NT'after printing the name of an identified passkey ( called th' {unit: 4} + IMPERATIVE_NT'after printing the name of an identified passkey ( called th' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the prior named object is the item' {control structure: NOW} CONDITION_CONTEXT_NT'the prior named object is the item' @@ -18168,14 +18168,14 @@ ROOT_NT INVOCATION_NT'" (which [open] [the list of things unbolted by the item])" ' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'" (which [open] [the list of things unbolted by the item])" ' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" (which [open] [the list of things unbolted by the item])" ' {kind: text} - RULE_NT'after examining an identified passkey ( this is the passkey ' {unit: 4} + IMPERATIVE_NT'after examining an identified passkey ( this is the passkey ' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [unlock] [the list of things unbolted by the' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [unlock] [the list of things unbolted by the nou' INVOCATION_NT'"[The noun] [unlock] [the list of things unbolted by the nou' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"[The noun] [unlock] [the list of things unbolted by the nou' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"[The noun] [unlock] [the list of things unbolted by the nou' {kind: text} - RULE_NT'carry out unlocking something with a passkey ( this is the s' {unit: 4} + IMPERATIVE_NT'carry out unlocking something with a passkey ( this is the s' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun unlocks the noun' {colon_block_command} @@ -18185,11 +18185,11 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'now the second noun unbolts the noun' {results_from_splitting} {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the second noun unbolts the noun' - RULE_NT'report someone trying unlocking something with a passkey ( t' {unit: 4} + IMPERATIVE_NT'report someone trying unlocking something with a passkey ( t' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the second noun unbolts the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the second noun unbolts the noun' - RULE_NT'carry out locking something with a passkey ( this is the sta' {unit: 4} + IMPERATIVE_NT'carry out locking something with a passkey ( this is the sta' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun unlocks the noun' {colon_block_command} @@ -18199,7 +18199,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'now the second noun unbolts the noun' {results_from_splitting} {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the second noun unbolts the noun' - RULE_NT'report someone trying locking something with a passkey ( thi' {unit: 4} + IMPERATIVE_NT'report someone trying locking something with a passkey ( thi' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the second noun unbolts the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the second noun unbolts the noun' @@ -18217,7 +18217,7 @@ ROOT_NT COMMON_NOUN_NT'keychain' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'keychain'} {creation: << kind=keychain(x) >>} {eval: TEST_VALUE_NT} PROPER_NOUN_NT'specification' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'specification'=text}} PROPER_NOUN_NT'A keychain which can hold the player's keys without forcing ' {refined} {eval: CONSTANT_NT'A keychain which can hold the player's keys without forcing ' {kind: text}} - RULE_NT'instead of putting something which is not a passkey on a key' {unit: 4} + IMPERATIVE_NT'instead of putting something which is not a passkey on a key' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] [are] not a key." ( a )' {control structure: SAY} INVOCATION_LIST_SAY_NT'"[The noun] [are] not a key." ( a )' @@ -18228,7 +18228,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: positive} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the keychain-aware carrying requirements rule' UNPARSED_NOUN_NT'instead of the carrying requirements rule in the action-proc' - RULE_NT'this is the keychain-aware carrying requirements rule' {unit: 4} + IMPERATIVE_NT'this is the keychain-aware carrying requirements rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if locking or unlocking something with something which is on' {colon_block_command} {indent: 1} @@ -18250,7 +18250,7 @@ ROOT_NT VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"put [passkey] on [keychain]"' UNPARSED_NOUN_NT'putting it on' - RULE_NT'rule for deciding whether all includes passkeys which are on' {unit: 4} + IMPERATIVE_NT'rule for deciding whether all includes passkeys which are on' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not a keychain' {colon_block_command} @@ -18260,7 +18260,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'it does not' {results_from_splitting} {indent: 1} HEADING_NT'volume 5 - support materials' {heading 1} {under: H1'volume 5 - support materials'} {unit: 4} - RULE_NT'this is the noun autotaking rule' {unit: 4} + IMPERATIVE_NT'this is the noun autotaking rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} @@ -18290,7 +18290,7 @@ ROOT_NT CONSTANT_NT'implicitly taking' {kind: activity on objects} {activity: implicitly taking}{meaning: {implicitly taking = ACTIVITY_MC}} RVALUE_CONTEXT_NT'noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} NONLOCAL_VARIABLE_NT'noun' {nonlocal: 'noun'(var)object}{meaning: {noun = VARIABLE_MC}} - RULE_NT'this is the second noun autotaking rule' {unit: 4} + IMPERATIVE_NT'this is the second noun autotaking rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if sequential action option is active' {colon_block_command} {indent: 1} @@ -18320,7 +18320,7 @@ ROOT_NT CONSTANT_NT'implicitly taking' {kind: activity on objects} {activity: implicitly taking}{meaning: {implicitly taking = ACTIVITY_MC}} RVALUE_CONTEXT_NT'second noun' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: value} NONLOCAL_VARIABLE_NT'second noun' {nonlocal: 'second noun'(var)object}{meaning: {second noun = VARIABLE_MC}} - RULE_NT'this is the must hold the noun rule' {unit: 4} + IMPERATIVE_NT'this is the must hold the noun rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked does not have the noun' {colon_block_command} @@ -18342,7 +18342,7 @@ ROOT_NT INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'make no decision' INVOCATION_NT'make no decision' {phrase invoked: call} - RULE_NT'this is the must hold the second noun rule' {unit: 4} + IMPERATIVE_NT'this is the must hold the second noun rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked does not have the second noun' {colon_block_command} @@ -18364,7 +18364,7 @@ ROOT_NT INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'make no decision' INVOCATION_NT'make no decision' {phrase invoked: call} - RULE_NT'this is the must have accessible the noun rule' {unit: 4} + IMPERATIVE_NT'this is the must have accessible the noun rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is not key-accessible' {colon_block_command} {indent: 1} @@ -18405,7 +18405,7 @@ ROOT_NT INVOCATION_NT'stop the action' {phrase invoked: call} INVOCATION_LIST_NT'make no decision' {indent: 1} INVOCATION_NT'make no decision' {phrase invoked: call} - RULE_NT'this is the must have accessible the second noun rule' {unit: 4} + IMPERATIVE_NT'this is the must have accessible the second noun rule' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the second noun is not key-accessible' {colon_block_command} {indent: 1} @@ -18463,7 +18463,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'universal unlocking' UNPARSED_NOUN_NT'applying to nothing' - RULE_NT'carry out universal unlocking ( this is the lock debugging r' {unit: 4} + IMPERATIVE_NT'carry out universal unlocking ( this is the lock debugging r' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with item running through locked things' {colon_block_command} {indent: 1} @@ -18480,7 +18480,7 @@ ROOT_NT INVOCATION_NT'"Unlocking [the item]." ( a )' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"Unlocking [the item]." ( a )' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"Unlocking [the item]." ( a )' {kind: text} - RULE_NT'report universal unlocking ( this is the report universal un' {unit: 4} + IMPERATIVE_NT'report universal unlocking ( this is the report universal un' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "A loud stereophonic click assures you that everything i' {control structure: SAY} INVOCATION_LIST_SAY_NT'"A loud stereophonic click assures you that everything in th' @@ -18507,7 +18507,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'going toward' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'check going toward' {unit: 4} + IMPERATIVE_NT'check going toward' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the noun is the location' {colon_block_command} @@ -18529,7 +18529,7 @@ ROOT_NT RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} CODE_BLOCK_NT {control structure: INS} - RULE_NT'carry out going toward' {unit: 4} + IMPERATIVE_NT'carry out going toward' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the destination of the player is the noun' {control structure: NOW} CONDITION_CONTEXT_NT'the destination of the player is the noun' @@ -18569,7 +18569,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'now the destination of the player is blank' {results_from_splitting} {indent: 1} {control structure: NOW} CONDITION_CONTEXT_NT'the destination of the player is blank' - RULE_NT'instead of waiting when the destination of the player is not' {unit: 4} + IMPERATIVE_NT'instead of waiting when the destination of the player is not' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the destination of the player is the location' {colon_block_command} {indent: 1} @@ -18600,18 +18600,18 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'stopping' UNPARSED_NOUN_NT'applying to nothing' - RULE_NT'carry out stopping' {unit: 4} + IMPERATIVE_NT'carry out stopping' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the destination of the player is blank' {control structure: NOW} CONDITION_CONTEXT_NT'the destination of the player is blank' - RULE_NT'report stopping' {unit: 4} + IMPERATIVE_NT'report stopping' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You stop in your tracks."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You stop in your tracks."' INVOCATION_NT'"You stop in your tracks."' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"You stop in your tracks."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"You stop in your tracks."' {kind: text} - RULE_NT'after going to an air-conditioned room' {unit: 4} + IMPERATIVE_NT'after going to an air-conditioned room' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You step into the mercifully air-conditioned surroundin' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You step into the mercifully air-conditioned surroundings o' @@ -18620,7 +18620,7 @@ ROOT_NT CONSTANT_NT'"You step into the mercifully air-conditioned surroundings o' {kind: text} INVOCATION_LIST_NT'continue the action' INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'after going from an air-conditioned room' {unit: 4} + IMPERATIVE_NT'after going from an air-conditioned room' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You emerge from the air-conditioning into heat like a w' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You emerge from the air-conditioning into heat like a wall.' @@ -18629,7 +18629,7 @@ ROOT_NT CONSTANT_NT'"You emerge from the air-conditioning into heat like a wall.' {kind: text} INVOCATION_LIST_NT'continue the action' INVOCATION_NT'continue the action' {phrase invoked: call} - RULE_NT'instead of listening to an air-conditioned room' {unit: 4} + IMPERATIVE_NT'instead of listening to an air-conditioned room' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "The air-conditioning hums softly."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"The air-conditioning hums softly."' @@ -18677,7 +18677,7 @@ ROOT_NT PROPER_NOUN_NT'felt door' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'felt door'} {eval: CONSTANT_NT'felt door' {kind: door} {instance: I90'felt door'} {enumeration: 0}} PROPER_NOUN_NT'description' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'description'=text}} PROPER_NOUN_NT'"It has a prominent lock, designed for an old-fashioned key.' {refined} {eval: CONSTANT_NT'"It has a prominent lock, designed for an old-fashioned key.' {kind: text}} - RULE_NT'after locking a door with something in the presence of an ot' {unit: 4} + IMPERATIVE_NT'after locking a door with something in the presence of an ot' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The audience] looks a little non-plussed when you lock' {control structure: SAY} INVOCATION_LIST_SAY_NT'the audience' @@ -18757,11 +18757,11 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'slot' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'slot'} {eval: CONSTANT_NT'slot' {kind: object} {instance: I97'slot'} {enumeration: 0}} COMMON_NOUN_NT'container' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'container'} {creation: << kind=container(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'carry out inserting something into the slot' {unit: 4} + IMPERATIVE_NT'carry out inserting something into the slot' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the noun is nowhere' {control structure: NOW} CONDITION_CONTEXT_NT'the noun is nowhere' - RULE_NT'report inserting something into the slot' {unit: 4} + IMPERATIVE_NT'report inserting something into the slot' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[The noun] falls out of sight, and you know you will ne' {control structure: SAY} INVOCATION_LIST_SAY_NT'the noun' @@ -18795,7 +18795,7 @@ ROOT_NT AND_NT'and' {refined} ADJECTIVE_NT'lockable' {refined} {predicate: lockable} {creation: << lockable(x) ^ lockable(x) >>} ADJECTIVE_NT'unlocked' {refined} {predicate: unlocked} {creation: << unlocked(x) ^ unlocked(x) >>} - RULE_NT'before printing the name of the iron gate while not opening ' {unit: 4} + IMPERATIVE_NT'before printing the name of the iron gate while not opening ' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is the player' {colon_block_command} {indent: 1} @@ -18943,7 +18943,7 @@ ROOT_NT VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"glass"' UNPARSED_NOUN_NT'the box' - RULE_NT'instead of attacking the closed emergency box' {unit: 4} + IMPERATIVE_NT'instead of attacking the closed emergency box' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "You hit the emergency box, which shatters open."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"You hit the emergency box, which shatters open."' @@ -18952,7 +18952,7 @@ ROOT_NT CONSTANT_NT'"You hit the emergency box, which shatters open."' {kind: text} INVOCATION_LIST_NT'now the emergency box is open' {control structure: NOW} CONDITION_CONTEXT_NT'the emergency box is open' - RULE_NT'instead of attacking the open emergency box' {unit: 4} + IMPERATIVE_NT'instead of attacking the open emergency box' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "The glass has already been thoroughly broken."' {control structure: SAY} INVOCATION_LIST_SAY_NT'"The glass has already been thoroughly broken."' @@ -19061,7 +19061,7 @@ ROOT_NT SENTENCE_NT'use full-length room descriptions' {unit: 4} {classified} VERB_NT'use' {verb 'use' 3p p act IS_TENSE +ve} {special meaning: use} UNPARSED_NOUN_NT'full-length room descriptions' - RULE_NT'after looking in an outdoors room' {unit: 4} + IMPERATIVE_NT'after looking in an outdoors room' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let started printing be false' {indent: 1} INVOCATION_NT'let started printing be false' {phrase invoked: call} @@ -19247,7 +19247,7 @@ ROOT_NT CODE_BLOCK_NT'say paragraph break' {control structure: SAY} INVOCATION_LIST_SAY_NT'paragraph break' INVOCATION_NT'paragraph break' {phrase invoked: call} - RULE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the front side of it is the location' {colon_block_command} @@ -19267,7 +19267,7 @@ ROOT_NT INVOCATION_NT'yes' {phrase invoked: call} INVOCATION_LIST_NT'no' INVOCATION_NT'no' {phrase invoked: call} - RULE_NT'before exiting when the player is in an indoors room' {unit: 4} + IMPERATIVE_NT'before exiting when the player is in an indoors room' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the player can see a door ( called nearest exit )' {indent: 1} {colon_block_command} @@ -19536,7 +19536,7 @@ ROOT_NT PROPER_NOUN_NT'ned' {refined} {refers: infs'ned'} {eval: CONSTANT_NT'ned' {kind: man} {instance: I166'ned'} {enumeration: 0}} RELATIONSHIP_NT'owns' {meaning: ownership-r} {refined} PROPER_NOUN_NT'movie rental' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'movie rental store'} {eval: CONSTANT_NT'movie rental store' {kind: object} {instance: I104'movie rental store'} {enumeration: 0}} - RULE_NT'after printing the name of someone ( called target ) while l' {unit: 4} + IMPERATIVE_NT'after printing the name of someone ( called target ) while l' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the target owns the location of the target' {colon_block_command} @@ -19555,7 +19555,7 @@ ROOT_NT COMMON_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT} PROPER_NOUN_NT'description' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'description'=text}} PROPER_NOUN_NT'"[The noun] [if the noun is clean]looks healthy[otherwise]is' {refined} {eval: CONSTANT_NT'"[The noun] [if the noun is clean]looks healthy[otherwise]is' {kind: text}} - RULE_NT'after examining another person who is carrying something' {unit: 4} + IMPERATIVE_NT'after examining another person who is carrying something' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT'say "[if the noun is female]She[otherwise]He[end if] is carr' {control structure: SAY} INVOCATION_LIST_SAY_NT'if the noun is female' @@ -19586,7 +19586,7 @@ ROOT_NT INVOCATION_NT'"."' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"."' {kind: text} - RULE_NT'when play begins' {unit: 4} + IMPERATIVE_NT'when play begins' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let patient zero be a random other person' INVOCATION_NT'let patient zero be a random other person' {phrase invoked: call} @@ -19608,7 +19608,7 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'table name' {indefinite 'a' n/m/f nom/acc s} UNPARSED_NOUN_NT'conversation' - RULE_NT'instead of asking someone about something' {unit: 4} + IMPERATIVE_NT'instead of asking someone about something' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let the source be the conversation of the noun' {indent: 1} INVOCATION_NT'let the source be the conversation of the noun' {phrase invoked: call} @@ -19673,7 +19673,7 @@ ROOT_NT INVOCATION_NT'" stares at you blankly."' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'" stares at you blankly."' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'" stares at you blankly."' {kind: text} - RULE_NT'instead of telling someone about something' {unit: 4} + IMPERATIVE_NT'instead of telling someone about something' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'try asking the noun about it' INVOCATION_NT'try asking the noun about it' {phrase invoked: call} @@ -19687,7 +19687,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'recalling conversations' UNPARSED_NOUN_NT'applying to nothing' - RULE_NT'carry out recalling conversations' {unit: 4} + IMPERATIVE_NT'carry out recalling conversations' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with speaker running through other people' {colon_block_command} {indent: 1} @@ -19796,7 +19796,7 @@ ROOT_NT PROPER_NOUN_NT'conversation' {refined} {eval: CONSTANT_NT {kind: table names valued property} {property: 'conversation'=table name}} PROPER_NOUN_NT'table of vanessa chatter' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'table of vanessa chatter' {kind: table name} {table: table_data}{meaning: {table of vanessa chatter = TABLE_MC}}} TABLE_NT'table of vanessa chatter topic reply summary turn stamp char' {unit: 4} - RULE_NT'after reading a command' {unit: 4} + IMPERATIVE_NT'after reading a command' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: WHI} INVOCATION_LIST_NT'while player's command includes "the"' {colon_block_command} {indent: 1} @@ -19861,7 +19861,7 @@ ROOT_NT PROPER_NOUN_NT'"sashay"' {refined} {eval: CONSTANT_NT'"sashay"' {kind: text}} TABLE_NT'table of visible exits character second third heading chosen' {unit: 4} TABLE_NT'table of visible entrances character second third heading ch' {unit: 4} - RULE_NT'to clear ( current table - a table name )' {unit: 4} + IMPERATIVE_NT'to clear ( current table - a table name )' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat through current table' {colon_block_command} {indent: 1} @@ -19871,7 +19871,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'blank out the whole row' {indent: 2} INVOCATION_NT'blank out the whole row' {phrase invoked: call} - RULE_NT'to tidy departures of ( current table - a table name )' {unit: 4} + IMPERATIVE_NT'to tidy departures of ( current table - a table name )' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let next direction be up' {indent: 1} INVOCATION_NT'let next direction be up' {phrase invoked: call} @@ -19957,7 +19957,7 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s} UNPARSED_NOUN_NT'last opener' - RULE_NT'report someone opening a door' {unit: 4} + IMPERATIVE_NT'report someone opening a door' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now group size is 1' {control structure: NOW} CONDITION_CONTEXT_NT'group size is 1' @@ -20002,7 +20002,7 @@ ROOT_NT INVOCATION_LIST_SAY_NT'run paragraph on' INVOCATION_NT'run paragraph on' {phrase invoked: call} CODE_BLOCK_NT {control structure: INS} - RULE_NT'report someone going through a door ( called route )' {unit: 4} + IMPERATIVE_NT'report someone going through a door ( called route )' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is not the last opener of the route' {colon_block_command} @@ -20080,11 +20080,11 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'last thing named' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'last thing named' {nonlocal: 'last thing named'(var)thing}} {created here} COMMON_NOUN_NT'thing that varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=things variable-pointer(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before printing the name of something ( called target ) whic' {unit: 4} + IMPERATIVE_NT'before printing the name of something ( called target ) whic' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the last thing named is the target' {control structure: NOW} CONDITION_CONTEXT_NT'the last thing named is the target' - RULE_NT'report someone going a direction' {unit: 4} + IMPERATIVE_NT'report someone going a direction' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the person asked is in the location' {colon_block_command} @@ -20118,7 +20118,7 @@ ROOT_NT CONDITION_CONTEXT_NT'heading chosen entry is the noun' INVOCATION_LIST_NT'stop the action' INVOCATION_NT'stop the action' {phrase invoked: call} - RULE_NT'this is the movement reporting rule' {unit: 4} + IMPERATIVE_NT'this is the movement reporting rule' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'sort the table of visible entrances in heading chosen order' INVOCATION_NT'sort the table of visible entrances in heading chosen order' {phrase invoked: call} @@ -20184,7 +20184,7 @@ ROOT_NT INVOCATION_NT'clear the table of visible exits' {phrase invoked: call} RVALUE_CONTEXT_NT'table of visible exits' {token check to do: } {token to be parsed against: TEST_VALUE_NT'a table name'} {required: table name} CONSTANT_NT'table of visible exits' {kind: table name} {table: table_data}{meaning: {table of visible exits = TABLE_MC}} - RULE_NT'to generate descriptions from ( current table - a table name' {unit: 4} + IMPERATIVE_NT'to generate descriptions from ( current table - a table name' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let count be the number of filled rows in the current table' {indent: 1} INVOCATION_NT'let count be the number of filled rows in the current table' {phrase invoked: call} @@ -20623,7 +20623,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'last person named' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'last person named' {nonlocal: 'last person named'(var)person}} {created here} COMMON_NOUN_NT'person that varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=people variable-pointer(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before printing the name of a person ( called target )' {unit: 4} + IMPERATIVE_NT'before printing the name of a person ( called target )' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'now the last person named is the target' {control structure: NOW} CONDITION_CONTEXT_NT'the last person named is the target' @@ -20635,7 +20635,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'group size' {refined} {eval: NONLOCAL_VARIABLE_NT'group size' {nonlocal: 'group size'(var)number}{meaning: {group size = VARIABLE_MC}}} PROPER_NOUN_NT'1' {refined} {eval: CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1}} - RULE_NT'to clear marked people' {unit: 4} + IMPERATIVE_NT'to clear marked people' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: RPT} INVOCATION_LIST_NT'repeat with named party running through people' {colon_block_command} {indent: 1} @@ -20647,7 +20647,7 @@ ROOT_NT CODE_BLOCK_NT INVOCATION_LIST_NT'now the named party is not marked for listing' {indent: 2} {control structure: NOW} CONDITION_CONTEXT_NT'the named party is not marked for listing' - RULE_NT'before listing nondescript items' {unit: 4} + IMPERATIVE_NT'before listing nondescript items' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the number of people who are marked for listing is 0' {colon_block_command} @@ -20676,7 +20676,7 @@ ROOT_NT INVOCATION_NT'describe patients' {phrase invoked: call} INVOCATION_LIST_NT'now every marked for listing person is not marked for listin' {control structure: NOW} CONDITION_CONTEXT_NT'every marked for listing person is not marked for listing' - RULE_NT'to describe patients' {unit: 4} + IMPERATIVE_NT'to describe patients' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if every marked for listing person is infected and at least ' {colon_block_command} {indent: 1} @@ -20835,7 +20835,7 @@ ROOT_NT LOCAL_VARIABLE_NT'count' {local: LV"count"-number number} INVOCATION_LIST_NT'clear marked people' {indent: 1} INVOCATION_NT'clear marked people' {phrase invoked: call} - RULE_NT'to say ( named character - a man ) as pronoun' {unit: 4} + IMPERATIVE_NT'to say ( named character - a man ) as pronoun' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if group size is 1' {colon_block_command} @@ -20870,7 +20870,7 @@ ROOT_NT INVOCATION_NT'"The last"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"The last"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"The last"' {kind: text} - RULE_NT'to say ( named character - a woman ) as pronoun' {unit: 4} + IMPERATIVE_NT'to say ( named character - a woman ) as pronoun' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if group size is 1' {colon_block_command} @@ -20905,7 +20905,7 @@ ROOT_NT INVOCATION_NT'"The last"' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'"The last"' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'"The last"' {kind: text} - RULE_NT'to say looks as though dipped in for ( index - a number )' {unit: 4} + IMPERATIVE_NT'to say looks as though dipped in for ( index - a number )' {unit: 4} CODE_BLOCK_NT INVOCATION_LIST_NT'let divider be the number of filled rows in the table of dip' INVOCATION_NT'let divider be the number of filled rows in the table of dip' {phrase invoked: call} @@ -20952,7 +20952,7 @@ ROOT_NT VERB_NT'is usually' {certainty:likely} {verb 'be' 3p s act IS_TENSE +ve} COMMON_NOUN_NT'door' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'door'} {creation: << kind=door(x) >>} {eval: TEST_VALUE_NT} ADJECTIVE_NT'scenery' {refined} {predicate: scenery} {creation: << scenery(x) ^ scenery(x) >>} - RULE_NT'to make delimiter ( index - a number ) of ( count - a number' {unit: 4} + IMPERATIVE_NT'to make delimiter ( index - a number ) of ( count - a number' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if index is 0' {colon_block_command} {indent: 1} @@ -21011,7 +21011,7 @@ ROOT_NT INVOCATION_NT'", "' {phrase invoked: call} {kind variable declarations: K=text} RVALUE_CONTEXT_NT'", "' {token check to do: } {token to be parsed against: TEST_VALUE_NT} {required: sayable value} CONSTANT_NT'", "' {kind: text} - RULE_NT'to say optional comma' {unit: 4} + IMPERATIVE_NT'to say optional comma' {unit: 4} CODE_BLOCK_NT CODE_BLOCK_NT {control structure: IF} INVOCATION_LIST_NT'if the serial comma option is active' {colon_block_command} {indent: 1} diff --git a/inform7/Figures/memory-diagnostics.txt b/inform7/Figures/memory-diagnostics.txt index a271441ef..0d98e4912 100644 --- a/inform7/Figures/memory-diagnostics.txt +++ b/inform7/Figures/memory-diagnostics.txt @@ -1,12 +1,12 @@ Total memory consumption was 259996K = 254 MB -62.7% was used for 1336660 objects, in 279893 frames in 204 x 800K = 163200K = 159 MB: +62.7% was used for 1336652 objects, in 279885 frames in 204 x 800K = 163200K = 159 MB: 9.7% inter_tree_node_array 36 x 8192 = 294912 objects, 25953408 bytes 5.4% text_stream_array 2583 x 100 = 258300 objects, 14547456 bytes 3.8% parse_node 129371 objects, 10349680 bytes 2.7% verb_conjugation 160 objects, 7425280 bytes - 2.6% linked_list 12669 objects, 7094640 bytes + 2.6% linked_list 12665 objects, 7092400 bytes 2.5% parse_node_annotation_array 429 x 500 = 214500 objects, 6877728 bytes 2.3% inter_symbol_array 69 x 1024 = 70656 objects, 6219936 bytes 1.2% pcalc_prop_array 24 x 1000 = 24000 objects, 3264768 bytes @@ -101,7 +101,7 @@ Total memory consumption was 259996K = 254 MB ---- booking_list 407 objects, 13024 bytes ---- literal_text 147 objects, 12936 bytes ---- adjective_iname_holder 320 objects, 12800 bytes - ---- stopwatch_timer 145 objects, 11600 bytes + ---- stopwatch_timer 141 objects, 11280 bytes ---- pathname 262 objects, 10480 bytes ---- filename 208 objects, 8320 bytes ---- equation_node 68 objects, 7616 bytes @@ -233,9 +233,9 @@ Total memory consumption was 259996K = 254 MB 37.2% was used for memory not allocated for objects: - 15.7% text stream storage 42064528 bytes in 264521 claims + 15.7% text stream storage 42063780 bytes in 264517 claims 3.4% dictionary storage 9278976 bytes in 16372 claims - ---- sorting 1024 bytes in 3 claims + ---- sorting 992 bytes in 3 claims 2.7% source text 7200000 bytes in 3 claims 4.0% source text details 10800000 bytes in 2 claims ---- linguistic stock array 81920 bytes in 2 claims @@ -249,5 +249,5 @@ Total memory consumption was 259996K = 254 MB ---- emitter array storage 12320 bytes in 8 claims ---- code generation workspace for objects 9200 bytes in 9 claims -20.4% was overhead - 54480472 bytes = 53203K = 51 MB +20.4% was overhead - 54483032 bytes = 53206K = 51 MB diff --git a/inform7/Figures/preform-summary.txt b/inform7/Figures/preform-summary.txt index 1f7d2647c..e9daec27b 100644 --- a/inform7/Figures/preform-summary.txt +++ b/inform7/Figures/preform-summary.txt @@ -1,11 +1,11 @@ - hits 2097/23838 nti 11 constraint (none) extremes [1, infinity) + hits 2097/23838 nti 12 constraint (none) extremes [1, infinity) English: (@1)=1 (hits 171/171) (matched: '100') constraint CS = {r0} extremes [1, 1] (@1)minus (@2)=1 - (hits 0/658) constraint DS = {11} extremes [2, 2] + (hits 0/2126) constraint DS = {12} extremes [2, 2] (@1)=1 (@2)( (@3)=2 (@4)) - (hits 273/671) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint DS = {11} extremes [4, 4] + (hits 273/850) (matched: '"[current item from the multiple object list]: [run paragraph on]" ( a )') constraint DS = {12} extremes [4, 4] (@1)=1 (hits 1564/5543) (matched: 'Represents geographical locations, both indoor and outdoor, which are not necessarily areas in a building. A player in one @@ -14,12 +14,12 @@ =1 (hits 11/9911) (matched: 'plus infinity') constraint (none) extremes [1, infinity) (@1)=1 - (hits 78/205) (matched: 'false') constraint CS = {31} extremes [1, 1] + (hits 78/827) (matched: 'false') constraint CS = {6} extremes [1, 1] =1 - (hits 0/3682) constraint DS = {7} extremes [2, infinity) + (hits 0/3162) constraint DS = {8} extremes [2, infinity) (@1)unicode =1 - (hits 0/2438) constraint DS = {11} extremes [2, infinity) + (hits 0/4633) constraint DS = {12} extremes [2, infinity) =1 - (hits 0/1974) constraint DW = {8, 9, 10} extremes [2, 5] + (hits 0/2167) constraint DW = {9, 10, 11} extremes [2, 5] =1 (hits 0/9822) constraint (none) extremes [1, infinity) diff --git a/inform7/Figures/syntax-summary.txt b/inform7/Figures/syntax-summary.txt index cf7280e2f..7fd5c7832 100644 --- a/inform7/Figures/syntax-summary.txt +++ b/inform7/Figures/syntax-summary.txt @@ -28,8 +28,8 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'asking for information' UNPARSED_NOUN_NT'out of world' - RULE_NT'carry out asking for information' {unit: 4} - RULE_NT'when play begins' {unit: 4} + IMPERATIVE_NT'carry out asking for information' {unit: 4} + IMPERATIVE_NT'when play begins' {unit: 4} HEADING_NT'section 1 - errands' {heading 5} {under: H5'section 1 - errands'} {unit: 4} SENTENCE_NT'the current actor is a person which varies' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} @@ -39,8 +39,8 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'current owner' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'current owner' {nonlocal: 'current owner'(var)person}} {created here} COMMON_NOUN_NT'person which varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=people variable-pointer(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'every turn' {unit: 4} - RULE_NT'every turn' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} SENTENCE_NT'a person can be active or passive' {unit: 4} {classified} VERB_NT'can be' {verb 'be able to be' s/p 3p act IS_TENSE +ve} {special meaning: can-be} COMMON_NOUN_NT'a person' {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT} @@ -56,34 +56,34 @@ ROOT_NT VERB_NT'are' {verb 'be' 3p p act IS_TENSE +ve} PROPER_NOUN_NT'character movement rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: character movement}} {created here} COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'the first character movement rule' {unit: 4} - RULE_NT'a character movement rule' {unit: 4} - RULE_NT'a character movement rule' {unit: 4} - RULE_NT'to decide whether movement has not yet occurred' {unit: 4} - RULE_NT'definition' {unit: 4} - RULE_NT'definition' {unit: 4} + IMPERATIVE_NT'the first character movement rule' {unit: 4} + IMPERATIVE_NT'a character movement rule' {unit: 4} + IMPERATIVE_NT'a character movement rule' {unit: 4} + IMPERATIVE_NT'to decide whether movement has not yet occurred' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} SENTENCE_NT'the shopowner rules is a rulebook' {unit: 4} {classified} {clears pronouns} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'shopowner rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: shopowner}} {created here} COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'a shopowner rule' {unit: 4} - RULE_NT'report someone closing a door when the person asked owns the' {unit: 4} - RULE_NT'report vanessa closing the metal door when the metal door is' {unit: 4} - RULE_NT'a shopowner rule' {unit: 4} + IMPERATIVE_NT'a shopowner rule' {unit: 4} + IMPERATIVE_NT'report someone closing a door when the person asked owns the' {unit: 4} + IMPERATIVE_NT'report vanessa closing the metal door when the metal door is' {unit: 4} + IMPERATIVE_NT'a shopowner rule' {unit: 4} SENTENCE_NT'filing is an action applying to one thing' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'filing' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'before someone filing something which is not carried by the ' {unit: 4} - RULE_NT'carry out someone filing' {unit: 4} - RULE_NT'report someone filing' {unit: 4} + IMPERATIVE_NT'before someone filing something which is not carried by the ' {unit: 4} + IMPERATIVE_NT'carry out someone filing' {unit: 4} + IMPERATIVE_NT'report someone filing' {unit: 4} SENTENCE_NT'the shopper rules is a rulebook' {unit: 4} {classified} {clears pronouns} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'shopper rules' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT {kind: rulebook} {rulebook: shopper}} {created here} COMMON_NOUN_NT'rulebook' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values based rulebook producing values'-k} {creation: << kind=rulebook(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'a shopper rule' {unit: 4} - RULE_NT'a shopper rule' {unit: 4} - RULE_NT'definition' {unit: 4} + IMPERATIVE_NT'a shopper rule' {unit: 4} + IMPERATIVE_NT'a shopper rule' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} SENTENCE_NT'protection relates a door ( called x ) to a room ( called y ' {unit: 4} {classified} VERB_NT'relates' {verb 'relate' 3p s act IS_TENSE +ve} {special meaning: new-relation} UNPARSED_NOUN_NT'protection' {new relation: protection} @@ -111,8 +111,8 @@ ROOT_NT COMMON_NOUN_NT'artwork' {indefinite 'an' n/m/f nom/acc s} {refined} {creation: << kind=artwork(x) >>} {refers: infs'artwork'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of thing' {refined} {refers: infs'thing'} COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before printing the name of an artwork' {unit: 4} - RULE_NT'after printing the name of an artwork' {unit: 4} + IMPERATIVE_NT'before printing the name of an artwork' {unit: 4} + IMPERATIVE_NT'after printing the name of an artwork' {unit: 4} SENTENCE_NT'an artwork can be submitted or reserved' {unit: 4} {classified} VERB_NT'can be' {verb 'be able to be' s/p 3p act IS_TENSE +ve} {special meaning: can-be} COMMON_NOUN_NT'an artwork' {refined} {refers: infs'artwork'} {creation: << kind=artwork(x) >>} {eval: TEST_VALUE_NT} @@ -125,49 +125,49 @@ ROOT_NT COMMON_NOUN_NT'book' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=book(x) >>} {refers: infs'book'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of artwork' {refined} {refers: infs'artwork'} COMMON_NOUN_NT'artwork' {refined} {refers: infs'artwork'} {creation: << kind=artwork(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before someone resolving a book when the person asked is not' {unit: 4} - RULE_NT'carry out someone resolving a book' {unit: 4} - RULE_NT'report someone resolving a book' {unit: 4} - RULE_NT'before listing contents' {unit: 4} - RULE_NT'before grouping together books' {unit: 4} + IMPERATIVE_NT'before someone resolving a book when the person asked is not' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a book' {unit: 4} + IMPERATIVE_NT'report someone resolving a book' {unit: 4} + IMPERATIVE_NT'before listing contents' {unit: 4} + IMPERATIVE_NT'before grouping together books' {unit: 4} SENTENCE_NT'a stamped envelope is a kind of thing' {unit: 4} {classified} {interpretation of subject: infs'book'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} COMMON_NOUN_NT'stamped envelope' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=stamped envelope(x) >>} {refers: infs'stamped envelope'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of thing' {refined} {refers: infs'thing'} COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before someone resolving a stamped envelope when the person ' {unit: 4} - RULE_NT'carry out someone resolving a stamped envelope' {unit: 4} - RULE_NT'report someone resolving a stamped envelope' {unit: 4} - RULE_NT'instead of someone resolving a stamped envelope when the per' {unit: 4} + IMPERATIVE_NT'before someone resolving a stamped envelope when the person ' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a stamped envelope' {unit: 4} + IMPERATIVE_NT'report someone resolving a stamped envelope' {unit: 4} + IMPERATIVE_NT'instead of someone resolving a stamped envelope when the per' {unit: 4} SENTENCE_NT'a dvd is a kind of artwork' {unit: 4} {classified} {interpretation of subject: infs'stamped envelope'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} COMMON_NOUN_NT'dvd' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=dvd(x) >>} {refers: infs'dvd'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of artwork' {refined} {refers: infs'artwork'} COMMON_NOUN_NT'artwork' {refined} {refers: infs'artwork'} {creation: << kind=artwork(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before someone resolving a dvd when the person asked is not ' {unit: 4} - RULE_NT'carry out someone resolving a dvd' {unit: 4} - RULE_NT'report someone resolving a dvd' {unit: 4} - RULE_NT'instead of someone resolving a dvd when the person asked car' {unit: 4} - RULE_NT'before listing contents' {unit: 4} - RULE_NT'before grouping together dvds' {unit: 4} + IMPERATIVE_NT'before someone resolving a dvd when the person asked is not ' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a dvd' {unit: 4} + IMPERATIVE_NT'report someone resolving a dvd' {unit: 4} + IMPERATIVE_NT'instead of someone resolving a dvd when the person asked car' {unit: 4} + IMPERATIVE_NT'before listing contents' {unit: 4} + IMPERATIVE_NT'before grouping together dvds' {unit: 4} SENTENCE_NT'approaching is an action applying to one thing' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'approaching' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'carry out someone approaching' {unit: 4} + IMPERATIVE_NT'carry out someone approaching' {unit: 4} SENTENCE_NT'a coupon is a kind of thing' {unit: 4} {classified} {interpretation of subject: infs'dvd'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} COMMON_NOUN_NT'coupon' {indefinite 'a' n/m/f nom/acc s} {refined} {creation: << kind=coupon(x) >>} {refers: infs'coupon'} {eval: TEST_VALUE_NT} {created here} KIND_NT'kind of thing' {refined} {refers: infs'thing'} COMMON_NOUN_NT'thing' {refined} {refers: infs'thing'} {creation: << kind=thing(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'carry out someone resolving a coupon' {unit: 4} + IMPERATIVE_NT'carry out someone resolving a coupon' {unit: 4} SENTENCE_NT'the block giving rule is not listed in any rulebook' {unit: 4} {classified} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {rule placement sense: negative} {special meaning: rule-listed-in} UNPARSED_NOUN_NT'the block giving rule' UNPARSED_NOUN_NT'in any rulebook' - RULE_NT'check giving something to someone ( this is the block player' {unit: 4} - RULE_NT'before someone resolving a coupon when the person asked is n' {unit: 4} - RULE_NT'after someone giving a coupon to vanessa' {unit: 4} + IMPERATIVE_NT'check giving something to someone ( this is the block player' {unit: 4} + IMPERATIVE_NT'before someone resolving a coupon when the person asked is n' {unit: 4} + IMPERATIVE_NT'after someone giving a coupon to vanessa' {unit: 4} SENTENCE_NT'infection color is a kind of value' {unit: 4} {classified} {interpretation of subject: infs'coupon'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} COMMON_NOUN_NT'infection color' {refined} {creation: << kind=infection color(x) >>} {refers: infs'object'-k} {eval: TEST_VALUE_NT} {created here} @@ -227,7 +227,7 @@ ROOT_NT AND_NT',' {refined} PROPER_NOUN_NT'saffron silk' {refined} {refers: infs'saffron silk'} {eval: CONSTANT_NT'saffron silk' {kind: infection color} {instance: I86'saffron silk'[infection color]} {enumeration: 25}} {created here} PROPER_NOUN_NT'cookie dough cream' {refined} {refers: infs'cookie dough cream'} {eval: CONSTANT_NT'cookie dough cream' {kind: infection color} {instance: I87'cookie dough cream'[infection color]} {enumeration: 26}} {created here} - RULE_NT'to say list of flavors' {unit: 4} + IMPERATIVE_NT'to say list of flavors' {unit: 4} SENTENCE_NT'understand "ask vanessa for [flavored ice cream]" as buying ' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"ask vanessa for [flavored ice cream]"' @@ -240,8 +240,8 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'buying the flavor' UNPARSED_NOUN_NT'applying to one infection color' - RULE_NT'check buying the flavor' {unit: 4} - RULE_NT'carry out buying the flavor' {unit: 4} + IMPERATIVE_NT'check buying the flavor' {unit: 4} + IMPERATIVE_NT'carry out buying the flavor' {unit: 4} SENTENCE_NT'understand "ice cream" or "cream" or "ice" or "sherbet" or "' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"ice cream" or "cream" or "ice" or "sherbet" or "sorbet"' @@ -275,12 +275,12 @@ ROOT_NT VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'the infection color property' UNPARSED_NOUN_NT'referring to an ice cream cone' - RULE_NT'carry out someone resolving an ice cream cone' {unit: 4} - RULE_NT'instead of someone eating a fresh ice cream cone' {unit: 4} - RULE_NT'report someone eating an ice cream cone' {unit: 4} - RULE_NT'before printing the name of an ice cream cone' {unit: 4} + IMPERATIVE_NT'carry out someone resolving an ice cream cone' {unit: 4} + IMPERATIVE_NT'instead of someone eating a fresh ice cream cone' {unit: 4} + IMPERATIVE_NT'report someone eating an ice cream cone' {unit: 4} + IMPERATIVE_NT'before printing the name of an ice cream cone' {unit: 4} HEADING_NT'section 2 - infection rules' {heading 5} {under: H5'section 2 - infection rules'} {unit: 4} - RULE_NT'this is the infection rule' {unit: 4} + IMPERATIVE_NT'this is the infection rule' {unit: 4} SENTENCE_NT'a person can be infected or clean' {unit: 4} {classified} VERB_NT'can be' {verb 'be able to be' s/p 3p act IS_TENSE +ve} {special meaning: can-be} COMMON_NOUN_NT'a person' {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT} @@ -293,11 +293,11 @@ ROOT_NT COMMON_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT} ALLOWED_NT'has' {refined} UNPARSED_NOUN_NT'infection color' {indefinite 'an' n/m/f nom/acc s} {refined} - RULE_NT'every turn' {unit: 4} - RULE_NT'definition' {unit: 4} - RULE_NT'definition' {unit: 4} - RULE_NT'when play begins' {unit: 4} - RULE_NT'every turn' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} + IMPERATIVE_NT'when play begins' {unit: 4} + IMPERATIVE_NT'every turn' {unit: 4} SENTENCE_NT'understand "sneeze on [something]" as sneezing on' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"sneeze on [something]"' @@ -306,11 +306,11 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'sneezing on' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'check sneezing on' {unit: 4} - RULE_NT'carry out sneezing on' {unit: 4} - RULE_NT'carry out someone sneezing on' {unit: 4} - RULE_NT'report sneezing on' {unit: 4} - RULE_NT'report someone sneezing on' {unit: 4} + IMPERATIVE_NT'check sneezing on' {unit: 4} + IMPERATIVE_NT'carry out sneezing on' {unit: 4} + IMPERATIVE_NT'carry out someone sneezing on' {unit: 4} + IMPERATIVE_NT'report sneezing on' {unit: 4} + IMPERATIVE_NT'report someone sneezing on' {unit: 4} SENTENCE_NT'understand "inject [someone] with [something]" as injecting ' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"inject [someone] with [something]"' @@ -331,10 +331,10 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'injecting it with' UNPARSED_NOUN_NT'applying to two things' - RULE_NT'check injecting it with' {unit: 4} - RULE_NT'carry out injecting it with' {unit: 4} - RULE_NT'after injecting the player with something' {unit: 4} - RULE_NT'report injecting it with' {unit: 4} + IMPERATIVE_NT'check injecting it with' {unit: 4} + IMPERATIVE_NT'carry out injecting it with' {unit: 4} + IMPERATIVE_NT'after injecting the player with something' {unit: 4} + IMPERATIVE_NT'report injecting it with' {unit: 4} HEADING_NT'section 3 - geography' {heading 5} {under: H5'section 3 - geography'} {unit: 4} INCLUSION_NT'include locksmith by emily short' {unit: 4} HEADING_NT'version 12 of locksmith by emily short begins here' {heading 0} {under: H0'version 12 of locksmith by emily short begins here'} {includes: Locksmith by Emily Short v12 } {unit: 4} @@ -359,9 +359,9 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'going toward' UNPARSED_NOUN_NT'applying to one thing' - RULE_NT'check going toward' {unit: 4} - RULE_NT'carry out going toward' {unit: 4} - RULE_NT'instead of waiting when the destination of the player is not' {unit: 4} + IMPERATIVE_NT'check going toward' {unit: 4} + IMPERATIVE_NT'carry out going toward' {unit: 4} + IMPERATIVE_NT'instead of waiting when the destination of the player is not' {unit: 4} SENTENCE_NT'understand "stop" or "cease" as stopping' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"stop" or "cease"' @@ -370,11 +370,11 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'stopping' UNPARSED_NOUN_NT'applying to nothing' - RULE_NT'carry out stopping' {unit: 4} - RULE_NT'report stopping' {unit: 4} - RULE_NT'after going to an air-conditioned room' {unit: 4} - RULE_NT'after going from an air-conditioned room' {unit: 4} - RULE_NT'instead of listening to an air-conditioned room' {unit: 4} + IMPERATIVE_NT'carry out stopping' {unit: 4} + IMPERATIVE_NT'report stopping' {unit: 4} + IMPERATIVE_NT'after going to an air-conditioned room' {unit: 4} + IMPERATIVE_NT'after going from an air-conditioned room' {unit: 4} + IMPERATIVE_NT'instead of listening to an air-conditioned room' {unit: 4} SENTENCE_NT'the alfred cralle pool hall is a room' {unit: 4} {classified} {interpretation of subject: infs'person'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'alfred cralle pool hall' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'alfred cralle pool hall'} {eval: CONSTANT_NT'alfred cralle pool hall' {kind: object} {instance: I88'alfred cralle pool hall'} {enumeration: 0}} {created here} @@ -416,7 +416,7 @@ ROOT_NT PROPER_NOUN_NT'felt door' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'felt door'} {eval: CONSTANT_NT'felt door' {kind: door} {instance: I90'felt door'} {enumeration: 0}} PROPER_NOUN_NT'description' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'description'=text}} PROPER_NOUN_NT'"It has a prominent lock, designed for an old-fashioned key.' {refined} {eval: CONSTANT_NT'"It has a prominent lock, designed for an old-fashioned key.' {kind: text}} - RULE_NT'after locking a door with something in the presence of an ot' {unit: 4} + IMPERATIVE_NT'after locking a door with something in the presence of an ot' {unit: 4} SENTENCE_NT'nancy johnson memorial square is west of the felt door' {unit: 4} {classified} {interpretation of subject: infs'key to the city'} VERB_NT'is west of' {verb 'be' 3p s act IS_TENSE +ve} {prep1: west of} PROPER_NOUN_NT'nancy johnson memorial square' {refined} {refers: infs'nancy johnson memorial square'} {eval: CONSTANT_NT'nancy johnson memorial square' {kind: object} {instance: I92'nancy johnson memorial square'} {enumeration: 0}} {created here} @@ -478,8 +478,8 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'slot' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'slot'} {eval: CONSTANT_NT'slot' {kind: object} {instance: I97'slot'} {enumeration: 0}} COMMON_NOUN_NT'container' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'container'} {creation: << kind=container(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'carry out inserting something into the slot' {unit: 4} - RULE_NT'report inserting something into the slot' {unit: 4} + IMPERATIVE_NT'carry out inserting something into the slot' {unit: 4} + IMPERATIVE_NT'report inserting something into the slot' {unit: 4} SENTENCE_NT'hamwi street is northeast of an iron gate' {unit: 4} {classified} {interpretation of subject: infs'slot'} VERB_NT'is northeast of' {verb 'be' 3p s act IS_TENSE +ve} {prep1: northeast of} PROPER_NOUN_NT'hamwi street' {refined} {refers: infs'hamwi street'} {eval: CONSTANT_NT'hamwi street' {kind: object} {instance: I98'hamwi street'} {enumeration: 0}} {created here} @@ -503,7 +503,7 @@ ROOT_NT AND_NT'and' {refined} ADJECTIVE_NT'lockable' {refined} {predicate: lockable} {creation: << lockable(x) ^ lockable(x) >>} ADJECTIVE_NT'unlocked' {refined} {predicate: unlocked} {creation: << unlocked(x) ^ unlocked(x) >>} - RULE_NT'before printing the name of the iron gate while not opening ' {unit: 4} + IMPERATIVE_NT'before printing the name of the iron gate while not opening ' {unit: 4} SENTENCE_NT'cold comfort ice cream is north of a metal door' {unit: 4} {classified} {interpretation of subject: infs'iron gate'} VERB_NT'is north of' {verb 'be' 3p s act IS_TENSE +ve} {prep1: north of} PROPER_NOUN_NT'cold comfort ice cream' {refined} {refers: infs'cold comfort ice cream'} {eval: CONSTANT_NT'cold comfort ice cream' {kind: object} {instance: I100'cold comfort ice cream'} {enumeration: 0}} {created here} @@ -609,8 +609,8 @@ ROOT_NT VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"glass"' UNPARSED_NOUN_NT'the box' - RULE_NT'instead of attacking the closed emergency box' {unit: 4} - RULE_NT'instead of attacking the open emergency box' {unit: 4} + IMPERATIVE_NT'instead of attacking the closed emergency box' {unit: 4} + IMPERATIVE_NT'instead of attacking the open emergency box' {unit: 4} SENTENCE_NT'the syringe is in the emergency box' {unit: 4} {classified} {interpretation of subject: infs'emergency box'} VERB_NT'is in' {verb 'be' 3p s act IS_TENSE +ve} {prep1: in} PROPER_NOUN_NT'syringe' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'syringe'} {eval: CONSTANT_NT'syringe' {kind: object} {instance: I109'syringe'} {enumeration: 0}} {created here} @@ -713,9 +713,9 @@ ROOT_NT SENTENCE_NT'use full-length room descriptions' {unit: 4} {classified} VERB_NT'use' {verb 'use' 3p p act IS_TENSE +ve} {special meaning: use} UNPARSED_NOUN_NT'full-length room descriptions' - RULE_NT'after looking in an outdoors room' {unit: 4} - RULE_NT'definition' {unit: 4} - RULE_NT'before exiting when the player is in an indoors room' {unit: 4} + IMPERATIVE_NT'after looking in an outdoors room' {unit: 4} + IMPERATIVE_NT'definition' {unit: 4} + IMPERATIVE_NT'before exiting when the player is in an indoors room' {unit: 4} SENTENCE_NT'blank is a room' {unit: 4} {classified} {interpretation of subject: infs'key to the city'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'blank' {refined} {refers: infs'blank'} {eval: CONSTANT_NT'blank' {kind: object} {instance: I113'blank'} {enumeration: 0}} {created here} @@ -941,15 +941,15 @@ ROOT_NT PROPER_NOUN_NT'ned' {refined} {refers: infs'ned'} {eval: CONSTANT_NT'ned' {kind: man} {instance: I166'ned'} {enumeration: 0}} RELATIONSHIP_NT'owns' {meaning: ownership-r} {refined} PROPER_NOUN_NT'movie rental' {definite 'the' n/m/f s/p nom/acc} {refined} {refers: infs'movie rental store'} {eval: CONSTANT_NT'movie rental store' {kind: object} {instance: I104'movie rental store'} {enumeration: 0}} - RULE_NT'after printing the name of someone ( called target ) while l' {unit: 4} + IMPERATIVE_NT'after printing the name of someone ( called target ) while l' {unit: 4} SENTENCE_NT'the description of a person is usually "[The noun] [if the n' {unit: 4} {classified} {interpretation of subject: infs'ned'} VERB_NT'is usually' {certainty:likely} {verb 'be' 3p s act IS_TENSE +ve} X_OF_Y_NT'description of a person' {definite 'the' n/m/f s/p nom/acc} {refined} COMMON_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'person'} {creation: << kind=person(x) >>} {eval: TEST_VALUE_NT} PROPER_NOUN_NT'description' {refined} {eval: CONSTANT_NT {kind: texts valued property} {property: 'description'=text}} PROPER_NOUN_NT'"[The noun] [if the noun is clean]looks healthy[otherwise]is' {refined} {eval: CONSTANT_NT'"[The noun] [if the noun is clean]looks healthy[otherwise]is' {kind: text}} - RULE_NT'after examining another person who is carrying something' {unit: 4} - RULE_NT'when play begins' {unit: 4} + IMPERATIVE_NT'after examining another person who is carrying something' {unit: 4} + IMPERATIVE_NT'when play begins' {unit: 4} HEADING_NT'section 5 - conversation' {heading 5} {under: H5'section 5 - conversation'} {unit: 4} SENTENCE_NT'a person has a table name called conversation' {unit: 4} {classified} VERB_NT'has' {verb 'have' 3p s act IS_TENSE +ve} @@ -958,8 +958,8 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'table name' {indefinite 'a' n/m/f nom/acc s} UNPARSED_NOUN_NT'conversation' - RULE_NT'instead of asking someone about something' {unit: 4} - RULE_NT'instead of telling someone about something' {unit: 4} + IMPERATIVE_NT'instead of asking someone about something' {unit: 4} + IMPERATIVE_NT'instead of telling someone about something' {unit: 4} SENTENCE_NT'understand "recap" or "recall" or "review" as recalling conv' {unit: 4} {classified} VERB_NT'understand' {verb 'understand' 3p p act IS_TENSE +ve} {prep2: as} {special meaning: understand-as} UNPARSED_NOUN_NT'"recap" or "recall" or "review"' @@ -968,7 +968,7 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} {special meaning: new-action} UNPARSED_NOUN_NT'recalling conversations' UNPARSED_NOUN_NT'applying to nothing' - RULE_NT'carry out recalling conversations' {unit: 4} + IMPERATIVE_NT'carry out recalling conversations' {unit: 4} SENTENCE_NT'the conversation of a person is usually table of general chi' {unit: 4} {classified} {interpretation of subject: infs'person'} VERB_NT'is usually' {certainty:likely} {verb 'be' 3p s act IS_TENSE +ve} X_OF_Y_NT'conversation of a person' {definite 'the' n/m/f s/p nom/acc} {refined} @@ -983,7 +983,7 @@ ROOT_NT PROPER_NOUN_NT'conversation' {refined} {eval: CONSTANT_NT {kind: table names valued property} {property: 'conversation'=table name}} PROPER_NOUN_NT'table of vanessa chatter' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: CONSTANT_NT'table of vanessa chatter' {kind: table name} {table: table_data}{meaning: {table of vanessa chatter = TABLE_MC}}} TABLE_NT'table of vanessa chatter topic reply summary turn stamp char' {unit: 4} - RULE_NT'after reading a command' {unit: 4} + IMPERATIVE_NT'after reading a command' {unit: 4} HEADING_NT'section 6 - movement description' {heading 5} {under: H5'section 6 - movement description'} {unit: 4} SENTENCE_NT'a person has some text called walk style' {unit: 4} {classified} VERB_NT'has' {verb 'have' 3p s act IS_TENSE +ve} @@ -1030,8 +1030,8 @@ ROOT_NT PROPER_NOUN_NT'"sashay"' {refined} {eval: CONSTANT_NT'"sashay"' {kind: text}} TABLE_NT'table of visible exits character second third heading chosen' {unit: 4} TABLE_NT'table of visible entrances character second third heading ch' {unit: 4} - RULE_NT'to clear ( current table - a table name )' {unit: 4} - RULE_NT'to tidy departures of ( current table - a table name )' {unit: 4} + IMPERATIVE_NT'to clear ( current table - a table name )' {unit: 4} + IMPERATIVE_NT'to tidy departures of ( current table - a table name )' {unit: 4} SENTENCE_NT'a door has a person called last opener' {unit: 4} {classified} {interpretation of subject: infs'person'} VERB_NT'has' {verb 'have' 3p s act IS_TENSE +ve} COMMON_NOUN_NT'door' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'door'} {creation: << kind=door(x) >>} {eval: TEST_VALUE_NT} @@ -1039,21 +1039,21 @@ ROOT_NT PROPERTYCALLED_NT'called' UNPARSED_NOUN_NT'person' {indefinite 'a' n/m/f nom/acc s} UNPARSED_NOUN_NT'last opener' - RULE_NT'report someone opening a door' {unit: 4} - RULE_NT'report someone going through a door ( called route )' {unit: 4} + IMPERATIVE_NT'report someone opening a door' {unit: 4} + IMPERATIVE_NT'report someone going through a door ( called route )' {unit: 4} SENTENCE_NT'the last thing named is a thing that varies' {unit: 4} {classified} {interpretation of subject: infs'door'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'last thing named' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'last thing named' {nonlocal: 'last thing named'(var)thing}} {created here} COMMON_NOUN_NT'thing that varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=things variable-pointer(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before printing the name of something ( called target ) whic' {unit: 4} - RULE_NT'report someone going a direction' {unit: 4} - RULE_NT'this is the movement reporting rule' {unit: 4} - RULE_NT'to generate descriptions from ( current table - a table name' {unit: 4} + IMPERATIVE_NT'before printing the name of something ( called target ) whic' {unit: 4} + IMPERATIVE_NT'report someone going a direction' {unit: 4} + IMPERATIVE_NT'this is the movement reporting rule' {unit: 4} + IMPERATIVE_NT'to generate descriptions from ( current table - a table name' {unit: 4} SENTENCE_NT'the last person named is a person that varies' {unit: 4} {classified} {interpretation of subject: infs'door'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'last person named' {definite 'the' n/m/f s/p nom/acc} {refined} {eval: NONLOCAL_VARIABLE_NT'last person named' {nonlocal: 'last person named'(var)person}} {created here} COMMON_NOUN_NT'person that varies' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'values variable-pointer'-k} {creation: << kind=people variable-pointer(x) >>} {eval: TEST_VALUE_NT} - RULE_NT'before printing the name of a person ( called target )' {unit: 4} + IMPERATIVE_NT'before printing the name of a person ( called target )' {unit: 4} SENTENCE_NT'group size is a number that varies' {unit: 4} {classified} {interpretation of subject: infs'door'} VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'group size' {refined} {eval: NONLOCAL_VARIABLE_NT'group size' {nonlocal: 'group size'(var)number}} {created here} @@ -1062,19 +1062,19 @@ ROOT_NT VERB_NT'is' {verb 'be' 3p s act IS_TENSE +ve} PROPER_NOUN_NT'group size' {refined} {eval: NONLOCAL_VARIABLE_NT'group size' {nonlocal: 'group size'(var)number}{meaning: {group size = VARIABLE_MC}}} PROPER_NOUN_NT'1' {refined} {eval: CONSTANT_NT'1' {kind: number} {explicit literal} {number: 1}} - RULE_NT'to clear marked people' {unit: 4} - RULE_NT'before listing nondescript items' {unit: 4} - RULE_NT'to describe patients' {unit: 4} - RULE_NT'to say ( named character - a man ) as pronoun' {unit: 4} - RULE_NT'to say ( named character - a woman ) as pronoun' {unit: 4} - RULE_NT'to say looks as though dipped in for ( index - a number )' {unit: 4} + IMPERATIVE_NT'to clear marked people' {unit: 4} + IMPERATIVE_NT'before listing nondescript items' {unit: 4} + IMPERATIVE_NT'to describe patients' {unit: 4} + IMPERATIVE_NT'to say ( named character - a man ) as pronoun' {unit: 4} + IMPERATIVE_NT'to say ( named character - a woman ) as pronoun' {unit: 4} + IMPERATIVE_NT'to say looks as though dipped in for ( index - a number )' {unit: 4} TABLE_NT'table of dipping phrases dipping "looks as though dipped in"' {unit: 4} SENTENCE_NT'a door is usually scenery' {unit: 4} {classified} {interpretation of subject: infs'door'} VERB_NT'is usually' {certainty:likely} {verb 'be' 3p s act IS_TENSE +ve} COMMON_NOUN_NT'door' {indefinite 'a' n/m/f nom/acc s} {refined} {refers: infs'door'} {creation: << kind=door(x) >>} {eval: TEST_VALUE_NT} ADJECTIVE_NT'scenery' {refined} {predicate: scenery} {creation: << scenery(x) ^ scenery(x) >>} - RULE_NT'to make delimiter ( index - a number ) of ( count - a number' {unit: 4} - RULE_NT'to say optional comma' {unit: 4} + IMPERATIVE_NT'to make delimiter ( index - a number ) of ( count - a number' {unit: 4} + IMPERATIVE_NT'to say optional comma' {unit: 4} SENTENCE_NT'test me with go to cold comfort / z / z / z / z / ask vaness' {unit: 4} {classified} VERB_NT'test' {verb 'test' 3p p act IS_TENSE +ve} {prep2: with} {special meaning: test-with} UNPARSED_NOUN_NT'me' diff --git a/inform7/Figures/timings-diagnostics.txt b/inform7/Figures/timings-diagnostics.txt index 9d553e895..fd0806fd5 100644 --- a/inform7/Figures/timings-diagnostics.txt +++ b/inform7/Figures/timings-diagnostics.txt @@ -1,27 +1,26 @@ 100.0% in inform7 run - 66.9% in compilation to Inter - 25.4% in //Phrases::Manager::compile_first_block// - 8.9% in //Phrases::Manager::compile_as_needed// - 6.9% in //Strings::compile_responses// - 6.1% in //InferenceSubjects::emit_all// - 3.5% in //MajorNodes::pre_pass// + 66.2% in compilation to Inter + 25.6% in //ImperativeDefinitions::compile_first_block// + 8.4% in //ImperativeDefinitions::compile_as_needed// + 7.1% in //Strings::compile_responses// + 6.2% in //InferenceSubjects::emit_all// + 3.8% in //MajorNodes::pre_pass// 3.3% in //MajorNodes::pass_1// - 2.2% in //Phrases::Manager::RulePrintingRule_routine// - 1.8% in //Phrases::Manager::rulebooks_array// - 1.1% in //RTVerbs::ConjugateVerb// - 0.9% in //Phrases::Manager::traverse// - 0.5% in //World::stage_V// + 2.0% in //RTRules::RulePrintingRule_routine// + 1.8% in //RTRules::rulebooks_array_array// + 1.6% in //ImperativeDefinitions::find_phrases_and_rules// + 0.9% in //RTVerbs::ConjugateVerb// 0.3% in //MajorNodes::pass_2// - 0.3% in //Phrases::Manager::compile_rulebooks// - 0.3% in //Phrases::Manager::parse_rule_parameters// 0.3% in //RTRelations::compile_defined_relations// + 0.3% in //RTRules::compile_rulebooks// + 0.3% in //World::stage_V// + 0.1% in //RTCommandGrammars::compile_all// 0.1% in //RTKinds::compile_data_type_support_routines// - 0.1% in //Task::make_built_in_kind_constructors// - 4.0% not specifically accounted for - 30.6% in running Inter pipeline + 3.3% not specifically accounted for + 31.5% in running Inter pipeline + 10.4% in inter step 2/12: link 9.9% in step preparation - 9.7% in inter step 2/12: link - 7.1% in inter step 12/12: generate inform6 -> auto.inf + 7.3% in inter step 12/12: generate inform6 -> auto.inf 0.3% in inter step 9/12: make-identifiers-unique 0.1% in inter step 10/12: reconcile-verbs 0.1% in inter step 11/12: eliminate-redundant-labels @@ -30,5 +29,5 @@ 0.1% in inter step 7/12: resolve-external-symbols 0.1% in inter step 8/12: inspect-plugs 2.4% not specifically accounted for - 2.0% in supervisor + 1.8% in supervisor 0.4% not specifically accounted for diff --git a/inform7/Manual/Performance Metrics.w b/inform7/Manual/Performance Metrics.w index 0b0404043..8efee9e47 100644 --- a/inform7/Manual/Performance Metrics.w +++ b/inform7/Manual/Performance Metrics.w @@ -43,7 +43,7 @@ A full printout of the syntax tree (see //syntax: What This Module Does//) is a roughly 20,000-line text file, and again is too long to quote in full. This is a summary, showing just the portion of tree from the main source text, that is, with the content of extensions excluded, and with the content of -|RULE_NT| also cut. It still makes for a lengthy read: +|IMPERATIVE_NT| also cut. It still makes for a lengthy read: = (undisplayed text from Figures/syntax-summary.txt) diff --git a/inform7/imperative-module/Chapter 3/Rule Subtrees.w b/inform7/assertions-module/Chapter 2/Imperative Subtrees.w similarity index 76% rename from inform7/imperative-module/Chapter 3/Rule Subtrees.w rename to inform7/assertions-module/Chapter 2/Imperative Subtrees.w index 493f03386..aa1003cc0 100644 --- a/inform7/imperative-module/Chapter 3/Rule Subtrees.w +++ b/inform7/assertions-module/Chapter 2/Imperative Subtrees.w @@ -1,62 +1,75 @@ -[RuleSubtrees::] Rule Subtrees. +[ImperativeSubtrees::] Imperative Subtrees. -To tidy up invocation nodes into a list of children under the relevant rule -node, and so turn each rule definition into a single subtree. +To tidy up blocks of rule and phrase definition in the syntax tree. -@ Initially, the invocations (parsed as just |UNKNOWN_NT|) defining a -rule (|RULE_NT|) are simply listed after it in the parse tree, but we -want them to become its children, and we give them the node type -|INVOCATION_LIST_NT|. - -This function is used whenever new material is added. Whenever it finds a -childless |RULE_NT| followed by a sequence of |UNKNOWN_NT| nodes, it -joins these in sequence as children of the |RULE_NT|. Since it always -acts so as to leave a non-zero number of children, and since it acts only -on childless nodes, it cannot ever act on the same node twice. +@ Blocks of imperative code in Inform 7 source text enter the syntax tree +at |IMPERATIVE_NT| nodes: some define phrases, some define rules. Those nodes +are initially followed by a run of |UNKNOWN_NT| nodes for the actual code. +The process of "acceptance" turns such definitions into a subtree, as +follows: += (text) +IMPERATIVE_NT 'every turn' IMPERATIVE_NT 'every turn +UNKNOWN_NT 'say "Hello!"' --> INVOCATION_LIST_NT 'say "Hello!"' +UNKNOWN_NT 'now the guard is alert' INVOCATION_LIST_NT 'now the guard is alert' += +//ImperativeSubtrees::accept// needs to be called on every |IMPERATIVE_NT| node in order +for this to work; note that it does nothing further, but also causes no harm, +if called multiple times on the same node. //ImperativeSubtrees::accept_all// can +therefore safely be used to sweep up any |IMPERATIVE_NT| nodes not already processed. = -void RuleSubtrees::register_recently_lexed_phrases(void) { +void ImperativeSubtrees::accept_all(void) { if (problem_count > 0) return; /* for then the tree is perhaps broken anyway */ - SyntaxTree::traverse(Task::syntax_tree(), RuleSubtrees::demote_command_nodes); + SyntaxTree::traverse(Task::syntax_tree(), ImperativeSubtrees::accept); } -void RuleSubtrees::demote_command_nodes(parse_node *p) { - if ((Node::get_type(p) == RULE_NT) && (p->down == NULL)) { +void ImperativeSubtrees::accept(parse_node *p) { + if ((Node::get_type(p) == IMPERATIVE_NT) && (p->down == NULL)) { parse_node *end_def = p; while ((end_def->next) && (Node::get_type(end_def->next) == UNKNOWN_NT)) end_def = end_def->next; - if (p == end_def) return; /* |RULE_NT| not followed by any |UNKNOWN_NT|s */ + if (p == end_def) return; /* |IMPERATIVE_NT| not followed by any |UNKNOWN_NT|s */ /* splice so that |p->next| to |end_def| become the children of |p|: */ p->down = p->next; p->next = end_def->next; end_def->next = NULL; for (parse_node *inv_p = p->down; inv_p; inv_p = inv_p->next) Node::set_type(inv_p, INVOCATION_LIST_NT); - RuleSubtrees::parse_routine_structure(p); + @; } } -@h Parsing Routine Structure. -There are now two possible syntaxes to express the structural makeup of a -routine. Traditional I7 syntax for blocks is to place them within begin/end -markers: the "begin" occurring at the end of the conditional or loop header, -and the "end if", "end while", etc., as a phrase of its own at the end of -the block. Newer I7 syntax (March 2008) is to use Python-style colons and -indentation. Both are allowed, but not in the same routine. +@ After acceptance, and therefore exactly once, the structure of the code in +the definition is parsed and checked for sanity. -This routine opens with the routine's parse tree consisting of a simple -linked list of code-point nodes, one for each phrase. We must work out -which syntax is used, decipher it, and turn the list into a proper tree -structure in a single unified format. +Though it is now a historical relic, Inform has two different syntaxes for +blocks of code: "colon syntax", introduced in March 2008, which uses Python-like +colons and indentation to show structural subdivision; and "begin/end syntax", +which uses explicit marker phrases like "end if" and "end while". The compiler +continues to support both though they cannot be mixed in a single |IMPERATIVE_NT| +subtree. -How much simpler this would all be if we could abolish the old format, but -it's kept for the benefit of partially sighted users, who find tabbed -indentation difficult to manage with screen-readers. +The old syntax is retained not for compatibility with old code -- very little +remains from the pre-2008 era which has not been modernised -- but because +some partially sighted users find tabbed indentation difficult to manage +with screen-readers. + +Here, then, we must work out which syntax is used, decipher it, and turn the +list into a proper tree structure in a single unified format. We will also +try to find and report as many problems as we can which are due to code blocks +being improperly opened or closed, because punctuation errors in rules are +one of the biggest sources of beginners' difficulties with Inform, and we want +to catch and report these problems early. + +This means looking out for control structures such as "if" and "while": see +//supervisor: Control Structures// for where these are defined. = -void RuleSubtrees::parse_routine_structure(parse_node *routine_node) { +@ = int initial_problem_count = problem_count; + parse_node *imperative_node = p; + parse_node *uses_colon_syntax = NULL; parse_node *uses_begin_end_syntax = NULL; parse_node *mispunctuates_begin_end_syntax = NULL; @@ -93,11 +106,10 @@ void RuleSubtrees::parse_routine_structure(parse_node *routine_node) { @<(j) Insert code block nodes so that nodes needing to be parsed are childless@>; @<(k) Insert instead marker nodes@>; @<(l) Break up say phrases@>; -} @<(a.1) See which block syntax is used by conditionals and loops@> = parse_node *p; - for (p = routine_node->down; p; p = p->next) { + for (p = imperative_node->down; p; p = p->next) { control_structure_phrase *csp = ControlStructures::detect(Node::get_text(p)); if (csp) { @@ -136,53 +148,49 @@ void RuleSubtrees::parse_routine_structure(parse_node *routine_node) { @<(a.2) Report problems if the two syntaxes are mixed up with each other@> = if ((uses_colon_syntax) && (mispunctuates_begin_end_syntax)) { - current_sentence = routine_node; + current_sentence = imperative_node; Problems::quote_source(1, current_sentence); Problems::quote_source(2, mispunctuates_begin_end_syntax); StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_BadOldSyntax)); Problems::issue_problem_segment( - "The rule or phrase definition %1 seems to use indentation and " - "colons to group phrases together into 'if', 'repeat' or 'while' " - "blocks. That's fine, but then this phrase seems to be missing " - "some punctuation - %2. Perhaps a colon is missing?"); + "The rule or phrase definition %1 seems to use indentation and colons to group " + "phrases together into 'if', 'repeat' or 'while' blocks. That's fine, but then " + "this phrase seems to be missing some punctuation - %2. Perhaps a colon is missing?"); Problems::issue_problem_end(); return; } if ((uses_colon_syntax) && (uses_begin_end_syntax)) { - current_sentence = routine_node; + current_sentence = imperative_node; Problems::quote_source(1, current_sentence); Problems::quote_source(2, uses_colon_syntax); Problems::quote_source(3, uses_begin_end_syntax); StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_BothBlockSyntaxes)); Problems::issue_problem_segment( - "The rule or phrase definition %1 seems to use both ways of grouping " - "phrases together into 'if', 'repeat' and 'while' blocks at once. " - "Inform allows two alternative forms, but they cannot be mixed in " - "the same definition. %POne way is to end the 'if', 'repeat' or " - "'while' phrases with a 'begin', and then to match that with an " - "'end if' or similar. ('Otherwise' or 'otherwise if' clauses are " - "phrases like any other, and end with semicolons in this case.) " + "The rule or phrase definition %1 seems to use both ways of grouping phrases " + "together into 'if', 'repeat' and 'while' blocks at once. Inform allows two " + "alternative forms, but they cannot be mixed in the same definition. %P" + "One way is to end the 'if', 'repeat' or 'while' phrases with a 'begin', and " + "then to match that with an 'end if' or similar. ('Otherwise' or 'otherwise if' " + "clauses are phrases like any other, and end with semicolons in this case.) " "You use this begin/end form here, for instance - %3. %P" - "The other way is to end with a colon ':' and then indent the " - "subsequent phrases underneath, using tabs. (Note that any " - "'otherwise' or 'otherwise if' clauses also have to end with " - "colons in this case.) You use this indented form here - %2."); + "The other way is to end with a colon ':' and then indent the subsequent phrases " + "underneath, using tabs. (Note that any 'otherwise' or 'otherwise if' clauses " + "also have to end with colons in this case.) You use this indented form here - %2."); Problems::issue_problem_end(); return; } if ((requires_colon_syntax) && (uses_begin_end_syntax)) { - current_sentence = routine_node; + current_sentence = imperative_node; Problems::quote_source(1, current_sentence); Problems::quote_source(2, requires_colon_syntax); StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_NotInOldSyntax)); Problems::issue_problem_segment( - "The construction %2, in the rule or phrase definition %1, " - "is only allowed if the rule is written in the 'new' format, " - "that is, with the phrases written one to a line with " - "indentation showing how they are grouped together, and " - "with colons indicating the start of such a group."); + "The construction %2, in the rule or phrase definition %1, is only allowed if the " + "rule is written in the 'new' format, that is, with the phrases written one to a " + "line with indentation showing how they are grouped together, and with colons " + "indicating the start of such a group."); Problems::issue_problem_end(); return; } @@ -192,10 +200,10 @@ indentation of a phrase tells us where it belongs in the structure, so we mark up the tree with that information. @<(b.1) Annotate the parse tree with indentation levels@> = - Annotations::write_int(routine_node, indentation_level_ANNOT, - Lexer::indentation_level(Wordings::first_wn(Node::get_text(routine_node)))); + Annotations::write_int(imperative_node, indentation_level_ANNOT, + Lexer::indentation_level(Wordings::first_wn(Node::get_text(imperative_node)))); parse_node *p; - for (p = routine_node->down; p; p = p->next) { + for (p = imperative_node->down; p; p = p->next) { int I = Lexer::indentation_level(Wordings::first_wn(Node::get_text(p))); Annotations::write_int(p, indentation_level_ANNOT, I); } @@ -207,7 +215,7 @@ subordinate phrases (such as "otherwise") because we know their wonding more certainly, and similarly for "end X" phrases. @<(b.2) Annotate the parse tree with control structure usage@> = - for (parse_node *p = routine_node->down; p; p = p->next) { + for (parse_node *p = imperative_node->down; p; p = p->next) { control_structure_phrase *csp; csp = ControlStructures::detect(Node::get_text(p)); if (csp) { @@ -237,7 +245,7 @@ Such a line occupies a single node in its routine's parse tree, and we need to break this up. @<(c) Expand comma notation for blocks@> = - for (parse_node *p = routine_node->down; p; p = p->next) + for (parse_node *p = imperative_node->down; p; p = p->next) if (Node::get_control_structure_used(p) == NULL) { control_structure_phrase *csp; csp = ControlStructures::detect(Node::get_text(p)); @@ -261,7 +269,7 @@ to break this up. Annotations::read_int(p, indentation_level_ANNOT) + 1); Node::set_text(then_node, ACW); - parse_node *last_node_of_if_construction = then_node, *rest_of_routine = p->next; + parse_node *last_node_of_if_construction = then_node, *rest_of_defn = p->next; /* Attach the "then" node after the "if" node: */ p->next = then_node; @@ -269,29 +277,29 @@ to break this up. @; if (uses_colon_syntax == FALSE) { - last_node_of_if_construction->next = RuleSubtrees::end_node(p); - last_node_of_if_construction->next->next = rest_of_routine; + last_node_of_if_construction->next = ImperativeSubtrees::end_node(p); + last_node_of_if_construction->next->next = rest_of_defn; } else { - last_node_of_if_construction->next = rest_of_routine; + last_node_of_if_construction->next = rest_of_defn; } @ = - if (rest_of_routine) + if (rest_of_defn) if ((uses_colon_syntax == FALSE) || (Annotations::read_int(p, indentation_level_ANNOT) == - Annotations::read_int(rest_of_routine, indentation_level_ANNOT))) { - if (Node::get_control_structure_used(rest_of_routine) == otherwise_CSP) + Annotations::read_int(rest_of_defn, indentation_level_ANNOT))) { + if (Node::get_control_structure_used(rest_of_defn) == otherwise_CSP) @ - else if (ControlStructures::abbreviated_otherwise(Node::get_text(rest_of_routine))) + else if (ControlStructures::abbreviated_otherwise(Node::get_text(rest_of_defn))) @; } @ We string a plain "otherwise" node onto the "if" construction. @ = - then_node->next = rest_of_routine; + then_node->next = rest_of_defn; last_node_of_if_construction = last_node_of_if_construction->next; - rest_of_routine = rest_of_routine->next; + rest_of_defn = rest_of_defn->next; @ An abbreviated otherwise clause looks like this: @@ -305,20 +313,20 @@ and we want to split this, too, into distinct nodes. Annotations::write_int(otherwise_node, indentation_level_ANNOT, Annotations::read_int(p, indentation_level_ANNOT)); Node::set_text(otherwise_node, - Wordings::one_word(Wordings::first_wn(Node::get_text(rest_of_routine)))); /* extract just the word "otherwise" */ + Wordings::one_word(Wordings::first_wn(Node::get_text(rest_of_defn)))); /* extract just the word "otherwise" */ Node::set_control_structure_used(otherwise_node, otherwise_CSP); then_node->next = otherwise_node; - otherwise_node->next = rest_of_routine; + otherwise_node->next = rest_of_defn; - Node::set_text(rest_of_routine, - Wordings::trim_first_word(Node::get_text(rest_of_routine))); /* to remove the "otherwise" */ + Node::set_text(rest_of_defn, + Wordings::trim_first_word(Node::get_text(rest_of_defn))); /* to remove the "otherwise" */ - Annotations::write_int(rest_of_routine, indentation_level_ANNOT, - Annotations::read_int(rest_of_routine, indentation_level_ANNOT) + 1); + Annotations::write_int(rest_of_defn, indentation_level_ANNOT, + Annotations::read_int(rest_of_defn, indentation_level_ANNOT) + 1); - last_node_of_if_construction = rest_of_routine; - rest_of_routine = rest_of_routine->next; + last_node_of_if_construction = rest_of_defn; + rest_of_defn = rest_of_defn->next; @ If the old-style syntax is used, there are explicit "end if", "end repeat" and "end while" nodes in the list already. But if the Pythonesque syntax is @@ -339,10 +347,10 @@ report more or less helpfully. int blstack_stage[GROSS_AMOUNT_OF_INDENTATION+1]; int blo_sp = 0, suppress_further_problems = FALSE; - if (Annotations::read_int(routine_node, indentation_level_ANNOT) != 0) + if (Annotations::read_int(imperative_node, indentation_level_ANNOT) != 0) @; - for (prev = NULL, p = routine_node->down, k=1; p; prev = p, p = p->next, k++) { + for (prev = NULL, p = imperative_node->down, k=1; p; prev = p, p = p->next, k++) { control_structure_phrase *csp = Node::get_control_structure_used(p); @; @; @@ -359,7 +367,7 @@ report more or less helpfully. @ Controversially: @ = - current_sentence = routine_node; + current_sentence = imperative_node; Problems::quote_source_eliding_begin(1, current_sentence); StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_NonflushRule)); Problems::issue_problem_segment( @@ -458,7 +466,8 @@ colon syntax, then it is followed by a word which is the colon: thus if |p| reads "if x is 2" then the word following the "2" will be ":". @ = - if ((csp) && (csp->subordinate_to == NULL) && (Annotations::read_int(p, colon_block_command_ANNOT))) { + if ((csp) && (csp->subordinate_to == NULL) && + (Annotations::read_int(p, colon_block_command_ANNOT))) { expected_indent++; if (csp->indent_subblocks) expected_indent++; blstack_construct[blo_sp] = csp; @@ -508,7 +517,7 @@ above it: here we insert such a marker at a place where the source text indentation implicitly requires it. @ = - parse_node *implicit_end = RuleSubtrees::end_node(opening); + parse_node *implicit_end = ImperativeSubtrees::end_node(opening); implicit_end->next = prev->next; prev->next = implicit_end; prev = implicit_end; @@ -522,20 +531,20 @@ indentation implicitly requires it. @ = if (suppress_further_problems == FALSE) { - LOG("$T\n", routine_node); - current_sentence = routine_node; + LOG("$T\n", imperative_node); + current_sentence = imperative_node; Problems::quote_source_eliding_begin(1, current_sentence); Problems::quote_source_eliding_begin(2, first_misaligned_phrase); - StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_MisalignedIndentation)); + StandardProblems::handmade_problem(Task::syntax_tree(), + _p_(PM_MisalignedIndentation)); Problems::issue_problem_segment( - "The phrase or rule definition %1 is written using the 'colon " - "and indentation' syntax for its 'if's, 'repeat's and 'while's, " - "where blocks of phrases grouped together are indented one " - "tab step inward from the 'if ...:' or similar phrase to which " - "they belong. But the tabs here seem to be misaligned, and I can't " - "determine the structure. The first phrase going awry in the " - "definition seems to be %2, in case that helps. %PThis sometimes " - "happens even when the code looks about right, to the eye, if rows " + "The phrase or rule definition %1 is written using the 'colon and indentation' " + "syntax for its 'if's, 'repeat's and 'while's, where blocks of phrases grouped " + "together are indented one tab step inward from the 'if ...:' or similar phrase " + "to which they belong. But the tabs here seem to be misaligned, and I can't " + "determine the structure. The first phrase going awry in the definition seems " + "to be %2, in case that helps. %P" + "This sometimes happens even when the code looks about right, to the eye, if rows " "of spaces have been used to indent phrases instead of tabs."); Problems::Using::diagnose_further(); Problems::issue_problem_end(); @@ -551,29 +560,28 @@ indentation implicitly requires it. @ = if (suppress_further_problems == FALSE) { - current_sentence = routine_node; + current_sentence = imperative_node; Problems::quote_source_eliding_begin(1, current_sentence); Problems::quote_source_eliding_begin(2, first_overindented_phrase); StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_TooMuchIndentation)); Problems::issue_problem_segment( - "The phrase or rule definition %1 is written using tab indentations " - "to show how its phrases are to be grouped together. But the level " - "of indentation goes far too deep, reaching more than 25 tab stops " - "from the left margin."); + "The phrase or rule definition %1 is written using tab indentations to show how " + "its phrases are to be grouped together. But the level of indentation goes far " + "too deep, reaching more than 25 tab stops from the left margin."); Problems::issue_problem_end(); } @ = if (suppress_further_problems == FALSE) { - current_sentence = routine_node; + current_sentence = imperative_node; Problems::quote_source_eliding_begin(1, current_sentence); Problems::quote_source_eliding_begin(2, run_on_at); - StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_RunOnsInTabbedRoutine)); + StandardProblems::handmade_problem(Task::syntax_tree(), + _p_(PM_RunOnsInTabbedRoutine)); Problems::issue_problem_segment( - "The phrase or rule definition %1 is written using the 'colon " - "and indentation' syntax for its 'if's, 'repeat's and 'while's, " - "but that's only allowed if each phrase in the definition " - "occurs on its own line. So phrases like %2, which follow " + "The phrase or rule definition %1 is written using the 'colon and indentation' " + "syntax for its 'if's, 'repeat's and 'while's, but that's only allowed if each " + "phrase in the definition occurs on its own line. So phrases like %2, which follow " "directly on from the previous phrase, aren't allowed."); Problems::issue_problem_end(); } @@ -584,34 +592,33 @@ think of a sensible use. @ = if (suppress_further_problems == FALSE) { - LOG("$T\n", routine_node); - current_sentence = routine_node; + LOG("$T\n", imperative_node); + current_sentence = imperative_node; Problems::quote_source_eliding_begin(1, current_sentence); Problems::quote_source_eliding_begin(2, prev); Problems::quote_source_eliding_begin(3, p); StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_EmptyIndentedBlock)); Problems::issue_problem_segment( - "The phrase or rule definition %1 is written using the 'colon " - "and indentation' syntax for its 'if's, 'repeat's and 'while's, " - "where blocks of phrases grouped together are indented one " - "tab step inward from the 'if ...:' or similar phrase to which " - "they belong. But the phrase %2, which ought to begin a block, " - "is immediately followed by %3 at the same or a lower indentation, " - "so the block seems to be empty - this must mean there has been " - "a mistake in indenting the phrases."); + "The phrase or rule definition %1 is written using the 'colon and indentation' " + "syntax for its 'if's, 'repeat's and 'while's, where blocks of phrases grouped " + "together are indented one tab step inward from the 'if ...:' or similar phrase " + "to which they belong. But the phrase %2, which ought to begin a block, is " + "immediately followed by %3 at the same or a lower indentation, so the block " + "seems to be empty - this must mean there has been a mistake in indenting the " + "phrases."); Problems::issue_problem_end(); } @ = if (suppress_further_problems == FALSE) { - current_sentence = routine_node; + current_sentence = imperative_node; Problems::quote_source_eliding_begin(1, current_sentence); Problems::quote_source_eliding_begin(2, p); StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_NonCaseInIf)); Problems::issue_problem_segment( - "In the phrase or rule definition %1, the phrase %2 came as a " - "surprise since it was not a case in an 'if X is...' but was " - "instead some other miscellaneous instruction."); + "In the phrase or rule definition %1, the phrase %2 came as a surprise since " + "it was not a case in an 'if X is...' but was instead some other miscellaneous " + "instruction."); Problems::issue_problem_end(); } @@ -619,22 +626,19 @@ think of a sensible use. if ((indent_misalign == FALSE) && (suppress_further_problems == FALSE)) { current_sentence = p; if (csp->subordinate_to == if_CSP) { - LOG("$T\n", routine_node); + LOG("$T\n", imperative_node); StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_MisalignedOtherwise), "this doesn't match a corresponding 'if'", - "as it must. An 'otherwise' must be vertically underneath the " - "'if' to which it corresponds, at the same indentation, and " - "if the 'otherwise' uses a colon to begin a block then the " - "'if' must do the same."); + "as it must. An 'otherwise' must be vertically underneath the 'if' to which " + "it corresponds, at the same indentation, and if the 'otherwise' uses a colon " + "to begin a block then the 'if' must do the same."); } if (csp->subordinate_to == switch_CSP) StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_MisalignedCase), - "this seems to be misplaced since it is not a case within an " - "'if X is...'", - "as it must be. Each case must be placed one tab stop in from " - "the 'if X is...' to which it belongs, and the instructions " - "for what to do in that case should be one tab stop further in " - "still."); + "this seems to be misplaced since it is not a case within an 'if X is...'", + "as it must be. Each case must be placed one tab stop in from the 'if X " + "is...' to which it belongs, and the instructions for what to do in that " + "case should be one tab stop further in still."); } @ = @@ -643,15 +647,13 @@ think of a sensible use. if ((csp == default_case_CSP) || (csp == case_CSP)) StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_DefaultCaseNotLast), "'otherwise' must be the last clause if an 'if ... is:'", - "and in particular it has to come after all the '-- V:' " - "case values supplied."); + "and in particular it has to come after all the '-- V:' case values supplied."); else StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_MisarrangedOtherwise), "this seems to be misplaced since it is out of sequence within its 'if'", - "with an 'otherwise if...' coming after the more general 'otherwise' " - "rather than before. (Note that an 'otherwise' or 'otherwise if' must " - "be vertically underneath the 'if' to which it corresponds, at the " - "same indentation."); + "with an 'otherwise if...' coming after the more general 'otherwise' rather " + "than before. (Note that an 'otherwise' or 'otherwise if' must be vertically " + "underneath the 'if' to which it corresponds, at the same indentation."); } @ And after all that work, the routine's parse tree still consists only of a @@ -659,10 +661,10 @@ linked list of nodes; but at least it now contains the same pattern of nodes whichever syntax is used. We finally make a meaningful tree out of it. @<(e) Structure the parse tree to match the use of control structures@> = - parse_node *routine_list = routine_node->down; + parse_node *routine_list = imperative_node->down; parse_node *top_level = Node::new(CODE_BLOCK_NT); - routine_node->down = top_level; + imperative_node->down = top_level; parse_node *attach_owners[MAX_BLOCK_NESTING+1]; parse_node *attach_points[MAX_BLOCK_NESTING+1]; @@ -749,13 +751,13 @@ where we look for such mistakes. @<(f) Police the structure of the parse tree@> = int n = problem_count; - RuleSubtrees::police_code_block(routine_node->down, NULL); - if (problem_count > n) LOG("Local parse tree: $T\n", routine_node); + ImperativeSubtrees::police_code_block(imperative_node->down, NULL); + if (problem_count > n) LOG("Local parse tree: $T\n", imperative_node); @ Which recursively uses the following: = -void RuleSubtrees::police_code_block(parse_node *block, control_structure_phrase *context) { +void ImperativeSubtrees::police_code_block(parse_node *block, control_structure_phrase *context) { for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) { current_sentence = p; @@ -785,7 +787,7 @@ void RuleSubtrees::police_code_block(parse_node *block, control_structure_phrase } } - if (p->down) RuleSubtrees::police_code_block(p, csp); + if (p->down) ImperativeSubtrees::police_code_block(p, csp); } } @@ -798,12 +800,11 @@ of old-format source text, and for refuseniks. @ = StandardProblems::sentence_problem_with_note(Task::syntax_tree(), _p_(PM_EndWithoutBegin), "this is an 'end' with no matching 'begin'", - "which should not happen: every phrase like 'if ... begin;' " - "should eventually be followed by its bookend 'end if'. " - "It makes no sense to have an 'end ...' on its own.", - "Perhaps the problem is actually that you opened several " - "such begin... end 'blocks' and accidentally closed them " - "once too many? This is very easily done."); + "which should not happen: every phrase like 'if ... begin;' should eventually be " + "followed by its bookend 'end if'. It makes no sense to have an 'end ...' on its " + "own.", + "Perhaps the problem is actually that you opened several such begin... end " + "'blocks' and accidentally closed them once too many? This is very easily done."); @ = Problems::quote_source(1, current_sentence); @@ -817,11 +818,10 @@ of old-format source text, and for refuseniks. @ = StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_BeginWithoutEnd), - "the definition of the phrase ended with no matching 'end' for " - "this 'begin'", - "bearing in mind that every begin must have a matching end, and " - "that the one most recently begun must be the one first to end. For " - "instance, 'if ... begin' must have a matching 'end if'."); + "the definition of the phrase ended with no matching 'end' for this 'begin'", + "bearing in mind that every begin must have a matching end, and that the one " + "most recently begun must be the one first to end. For instance, 'if ... begin' " + "must have a matching 'end if'."); @ = if (csp == otherwise_CSP) @@ -830,12 +830,11 @@ of old-format source text, and for refuseniks. "which must be wrong."); else if (csp == otherwise_if_CSP) StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_OtherwiseIfMisplaced), - "the 'otherwise if' clause here seems not to be occurring inside " - "a large 'if'", - "and seems to be freestanding instead. (Though 'otherwise ...' can " - "usually be used after simple one-line 'if's to provide an alternative " - "course of action, 'otherwise if...' is a different matter, and is " - "used to divide up larger-scale instructions.)"); + "the 'otherwise if' clause here seems not to be occurring inside a large 'if'", + "and seems to be freestanding instead. (Though 'otherwise ...' can usually " + "be used after simple one-line 'if's to provide an alternative course of action, " + "'otherwise if...' is a different matter, and is used to divide up larger-scale " + "instructions.)"); else StandardProblems::sentence_problem(Task::syntax_tree(), _p_(BelievedImpossible), "this clause can't occur outside of a control phrase", @@ -847,8 +846,8 @@ of old-format source text, and for refuseniks. Problems::quote_wide_text(2, context->keyword); StandardProblems::handmade_problem(Task::syntax_tree(), _p_(PM_OtherwiseInNonIf)); Problems::issue_problem_segment( - "The %1 here did not make sense inside a " - "'%2' structure: it's provided for 'if' (or 'unless')."); + "The %1 here did not make sense inside a '%2' structure: it's provided for 'if' " + "(or 'unless')."); Problems::issue_problem_end(); } else StandardProblems::sentence_problem(Task::syntax_tree(), _p_(BelievedImpossible), @@ -867,16 +866,15 @@ of old-format source text, and for refuseniks. } if (doubled) StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_DoubleOtherwise), - "that makes two unconditional 'otherwise' or 'else' clauses " - "for this 'if'", - "which is forbidden since 'otherwise' is meant to be a single " - "(optional) catch-all clause at the end."); + "that makes two unconditional 'otherwise' or 'else' clauses for this 'if'", + "which is forbidden since 'otherwise' is meant to be a single (optional) " + "catch-all clause at the end."); else if (oi) StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_OtherwiseIfAfterOtherwise), "this seems to be misplaced since it is out of sequence within its 'if'", - "with an 'otherwise if...' coming after the more general 'otherwise' " - "rather than before. (If there's an 'otherwise' clause, it has to be " - "the last clause of the 'if'.)"); + "with an 'otherwise if...' coming after the more general 'otherwise' rather " + "than before. (If there's an 'otherwise' clause, it has to be the last clause " + "of the 'if'.)"); else StandardProblems::sentence_problem(Task::syntax_tree(), _p_(BelievedImpossible), "'otherwise' must be the last clause", @@ -897,8 +895,8 @@ can now become "otherwise: if whatever: ...". @<(g) Optimise out the otherwise if nodes@> = int n = problem_count; - RuleSubtrees::purge_otherwise_if(routine_node->down); - if (problem_count > n) LOG("Local parse tree: $T\n", routine_node); + ImperativeSubtrees::purge_otherwise_if(imperative_node->down); + if (problem_count > n) LOG("Local parse tree: $T\n", imperative_node); @ We made a similar manoeuvre above, but for one-line "otherwise do something" phrases following one-line "if", not for the wider case of "otherwise if". We @@ -906,7 +904,7 @@ didn't handle this back then because to do so would have made it impossible to issue good problem messages for failures to use "otherwise if" correctly. = -void RuleSubtrees::purge_otherwise_if(parse_node *block) { +void ImperativeSubtrees::purge_otherwise_if(parse_node *block) { for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) { if (Node::get_control_structure_used(p) == otherwise_if_CSP) { parse_node *former_contents = p->down; @@ -933,7 +931,7 @@ void RuleSubtrees::purge_otherwise_if(parse_node *block) { /* any further "otherwise if" or "otherwise" nodes after p follow */ p->down->next = former_successors; } - if (p->down) RuleSubtrees::purge_otherwise_if(p); + if (p->down) ImperativeSubtrees::purge_otherwise_if(p); } } @@ -943,15 +941,15 @@ but now that the structure is known to be correct they serve no further purpose. We remove them. @<(h) Remove any end markers as no longer necessary@> = - RuleSubtrees::purge_end_markers(routine_node->down); + ImperativeSubtrees::purge_end_markers(imperative_node->down); @ = -void RuleSubtrees::purge_end_markers(parse_node *block) { +void ImperativeSubtrees::purge_end_markers(parse_node *block) { for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) { if (Node::get_end_control_structure_used(p)) { if (prev_p) prev_p->next = p->next; else block->down = p->next; } - if (p->down) RuleSubtrees::purge_end_markers(p); + if (p->down) ImperativeSubtrees::purge_end_markers(p); } } @@ -959,15 +957,15 @@ void RuleSubtrees::purge_end_markers(parse_node *block) { can now be removed, too. @<(i) Remove any begin markers as no longer necessary@> = - RuleSubtrees::purge_begin_markers(routine_node->down); + ImperativeSubtrees::purge_begin_markers(imperative_node->down); @ = -void RuleSubtrees::purge_begin_markers(parse_node *block) { +void ImperativeSubtrees::purge_begin_markers(parse_node *block) { for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) { if (Node::get_control_structure_used(p)) if ((Node::get_text(p))) Node::set_text(p, GET_RW(, 1)); - if (p->down) RuleSubtrees::purge_begin_markers(p); + if (p->down) ImperativeSubtrees::purge_begin_markers(p); } } @@ -979,10 +977,10 @@ code block nodes to mark these phrases, and transfer the control structure annotations to them. @<(j) Insert code block nodes so that nodes needing to be parsed are childless@> = - RuleSubtrees::insert_cb_nodes(routine_node->down); + ImperativeSubtrees::insert_cb_nodes(imperative_node->down); @ = -void RuleSubtrees::insert_cb_nodes(parse_node *block) { +void ImperativeSubtrees::insert_cb_nodes(parse_node *block) { for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) { if (ControlStructures::opens_block(Node::get_control_structure_used(p))) { parse_node *blank_cb_node = Node::new(CODE_BLOCK_NT); @@ -996,17 +994,17 @@ void RuleSubtrees::insert_cb_nodes(parse_node *block) { if (prev_p) prev_p->next = blank_cb_node; else block->down = blank_cb_node; p = blank_cb_node; } - if (p->down) RuleSubtrees::insert_cb_nodes(p); + if (p->down) ImperativeSubtrees::insert_cb_nodes(p); } } @ Now: @<(k) Insert instead marker nodes@> = - RuleSubtrees::read_instead_markers(routine_node->down); + ImperativeSubtrees::read_instead_markers(imperative_node->down); @ = -void RuleSubtrees::read_instead_markers(parse_node *block) { +void ImperativeSubtrees::read_instead_markers(parse_node *block) { for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) { if ((Node::get_text(p))) { Node::set_text(p, GET_RW(, 1)); @@ -1015,17 +1013,17 @@ void RuleSubtrees::read_instead_markers(parse_node *block) { instead_node->next = p->next; p->next = instead_node; } - if (p->down) RuleSubtrees::read_instead_markers(p); + if (p->down) ImperativeSubtrees::read_instead_markers(p); } } @ Now: @<(l) Break up say phrases@> = - RuleSubtrees::break_up_says(routine_node->down); + ImperativeSubtrees::break_up_says(imperative_node->down); @ = -void RuleSubtrees::break_up_says(parse_node *block) { +void ImperativeSubtrees::break_up_says(parse_node *block) { for (parse_node *p = block->down, *prev_p = NULL; p; prev_p = p, p = p->next) { int sf = NO_SIGF; wording W = Node::get_text(p); @@ -1043,7 +1041,7 @@ void RuleSubtrees::break_up_says(parse_node *block) { if (prev_p) prev_p->next = blank_cb_node; else block->down = blank_cb_node; current_sentence = p; - RuleSubtrees::unroll_says(blank_cb_node, W, 0); + ImperativeSubtrees::unroll_says(blank_cb_node, W, 0); p = blank_cb_node; break; } @@ -1055,11 +1053,11 @@ void RuleSubtrees::break_up_says(parse_node *block) { break; } } - if (p->down) RuleSubtrees::break_up_says(p); + if (p->down) ImperativeSubtrees::break_up_says(p); } } -void RuleSubtrees::unroll_says(parse_node *cb_node, wording W, int depth) { +void ImperativeSubtrees::unroll_says(parse_node *cb_node, wording W, int depth) { while ((W)) { wording AW = GET_RW(, 1); wording BW = GET_RW(, 2); @@ -1071,13 +1069,15 @@ void RuleSubtrees::unroll_says(parse_node *cb_node, wording W, int depth) { } @ = - if ((Wordings::length(W) > 1) || (Wide::cmp(Lexer::word_text(Wordings::first_wn(W)), L"\"\"") != 0)) { - if ((Wordings::length(W) == 1) && (Vocabulary::test_flags(Wordings::first_wn(W), TEXTWITHSUBS_MC)) && (depth == 0)) { + if ((Wordings::length(W) > 1) || + (Wide::cmp(Lexer::word_text(Wordings::first_wn(W)), L"\"\"") != 0)) { + if ((Wordings::length(W) == 1) && + (Vocabulary::test_flags(Wordings::first_wn(W), TEXTWITHSUBS_MC)) && (depth == 0)) { wchar_t *p = Lexer::word_raw_text(Wordings::first_wn(W)); @; wording A = Feeds::feed_C_string_expanding_strings(p); if ((A)) - RuleSubtrees::unroll_says(cb_node, A, depth+1); + ImperativeSubtrees::unroll_says(cb_node, A, depth+1); } else { parse_node *say_term_node = Node::new(INVOCATION_LIST_SAY_NT); Node::set_text(say_term_node, W); @@ -1108,10 +1108,9 @@ void RuleSubtrees::unroll_says(parse_node *cb_node, wording W, int depth) { Strings::TextSubstitutions::it_is_not_worth_adding(); StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_TSWithComma), "a substitution contains a comma ','", - "which is against the rules, because 'say' is a special phrase in " - "which the comma divides items in a list of things to say, and so it " - "loses its ordinary meanings. Because of this, no text substitution " - "can contain a comma. " + "which is against the rules, because 'say' is a special phrase in which the comma " + "divides items in a list of things to say, and so it loses its ordinary meanings. " + "Because of this, no text substitution can contain a comma. " "(If you're trying to use a value produced by a phrase with a phrase " "option - say 'the best route from A to B, using even locked doors' - " "you'll need to put this in a 'let' variable first and then say that, " @@ -1125,16 +1124,15 @@ void RuleSubtrees::unroll_says(parse_node *cb_node, wording W, int depth) { (p[k+5] == 'o') && (p[k+6] == 'd') && (p[k+7] == 'e') && (p[k+8] == ' ')) { StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_NestedUSubstitution), "the text here contains one substitution '[...]' inside another", - "which is not allowed. Actually, it looks as if you might have got " - "into this by typing an exotic character as part of the name of a " - "text substitution - those get rewritten automatically as '[unicode N]' " - "for the appropriate Unicode character code number N. Either way - " - "this isn't allowed."); + "which is not allowed. Actually, it looks as if you might have got into this " + "by typing an exotic character as part of the name of a text substitution - " + "those get rewritten automatically as '[unicode N]' for the appropriate Unicode " + "character code number N. Either way - this isn't allowed."); } else { StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_NestedSubstitution), "the text here contains one substitution '[...]' inside another", - "which is not allowed. (If you just wanted a literal open and closed " - "square bracket, use '[bracket]' and '[close bracket]'.)"); + "which is not allowed. (If you just wanted a literal open and closed square " + "bracket, use '[bracket]' and '[close bracket]'.)"); } Strings::TextSubstitutions::it_is_worth_adding(); return; @@ -1144,43 +1142,42 @@ void RuleSubtrees::unroll_says(parse_node *cb_node, wording W, int depth) { StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_UnclosedSubstitution), "the text here uses an open square bracket '[', which opens a substitution " "in the text, but doesn't close it again", - "so that the result is malformed. (If you just wanted a literal open " - "square bracket, use '[bracket]'.)"); + "so that the result is malformed. (If you just wanted a literal open square " + "bracket, use '[bracket]'.)"); Strings::TextSubstitutions::it_is_worth_adding(); return; @ = Strings::TextSubstitutions::it_is_not_worth_adding(); StandardProblems::sentence_problem(Task::syntax_tree(), _p_(PM_UnopenedSubstitution), - "the text here uses a close square bracket ']', which closes a substitution " - "in the text, but never actually opened it", - "with a matching '['. (If you just wanted a literal close square bracket, " - "use '[close bracket]'.)"); + "the text here uses a close square bracket ']', which closes a substitution in the " + "text, but never actually opened it", + "with a matching '['. (If you just wanted a literal close square bracket, use " + "'[close bracket]'.)"); Strings::TextSubstitutions::it_is_worth_adding(); return; -@ Something devious happens when production (b) of is matched. -Double-quoted text is literal if it contains no square brackets, but is -expanded if it includes text substitutions in squares. When (b) matches, -Inform expands a text such as +@ Something devious happens when text following a "say" is found. Double-quoted text +is literal if it contains no square brackets, but is expanded if it includes text +substitutions in squares. Thus: >> "Look, [the noun] said." -into: +becomes: >> "Look, ", the noun, " said." -and then re-parses the result with the following nonterminal; note that we -make sure commas are used correctly before handing back to -to parse the list. +This is then re-parsed with the following nonterminal; note that we report any +problem with misuse of commas -- really, of square brackets -- before handing back +to to parse the list. = ::= - *** . *** | ==> @; ==> { fail } - , *** | ==> @; ==> { fail } - *** , | ==> @; ==> { fail } - *** , , *** | ==> @; ==> { fail } - ... + *** . *** | ==> @; ==> { fail }; + , *** | ==> @; ==> { fail }; + *** , | ==> @; ==> { fail }; + *** , , *** | ==> @; ==> { fail }; + ... ==> { -, - } @ So now just the problem messages: @@ -1200,11 +1197,10 @@ to parse the list. "which is not allowed. To say nothing - well, say nothing."); Strings::TextSubstitutions::it_is_worth_adding(); -@ That just leaves one utility routine, for manufacturing end nodes which -match a given begin node. +@ The following manufactures end nodes to match a given begin node. = -parse_node *RuleSubtrees::end_node(parse_node *opening) { +parse_node *ImperativeSubtrees::end_node(parse_node *opening) { parse_node *implicit_end = Node::new(INVOCATION_LIST_NT); Node::set_end_control_structure_used(implicit_end, Node::get_control_structure_used(opening)); diff --git a/inform7/assertions-module/Chapter 2/Passes through Major Nodes.w b/inform7/assertions-module/Chapter 2/Passes through Major Nodes.w index 20a84743e..d81f37f96 100644 --- a/inform7/assertions-module/Chapter 2/Passes through Major Nodes.w +++ b/inform7/assertions-module/Chapter 2/Passes through Major Nodes.w @@ -116,7 +116,7 @@ organisation, and are not directly functional in themselves. case ENDHERE_NT: Anaphora::new_discussion(); global_pass_state.near_start_of_extension = 0; break; - case RULE_NT: @; break; + case IMPERATIVE_NT: @; break; case SENTENCE_NT: @; break; case TRACE_NT: @; break; @@ -141,15 +141,15 @@ organisation, and are not directly functional in themselves. internal_error("passed through major node of unexpected type"); } -@ This is a little convoluted. The //linguistics// module turns sentences in -rule form into a |RULE_NT| node followed by subsequent |INVOCATION_NT| nodes, -and the first call here makes them into a neat subtree. After that, we look -out for adjectives defined by phrases, and for phrases with names, since -both will affect how we read sentences in passes 1 and 2. +@ This is a little convoluted: see //Imperative Subtrees// for how +"acceptance" tidies up the nodes in the syntax tree corresponding to a block +of imperative code. After that, we look out for adjectives defined by phrases, +and for phrases with names, since both will affect how we read sentences in +passes 1 and 2. -@ = +@ = if (global_pass_state.pass == 0) { - SyntaxTree::traverse_run(p, RuleSubtrees::demote_command_nodes, RULE_NT); + SyntaxTree::traverse_run(p, ImperativeSubtrees::accept, IMPERATIVE_NT); Phrases::Adjectives::look_for_headers(p); Phrases::Usage::predeclare_name_in(p); } diff --git a/inform7/assertions-module/Contents.w b/inform7/assertions-module/Contents.w index ecb445333..331cd6f63 100644 --- a/inform7/assertions-module/Contents.w +++ b/inform7/assertions-module/Contents.w @@ -17,6 +17,7 @@ Chapter 2: Declarations Anaphoric References Classifying Sentences Property Sentences + Imperative Subtrees Chapter 3: Requests "Sentences, often imperative, which have special meanings." diff --git a/inform7/core-module/Chapter 1/How To Compile.w b/inform7/core-module/Chapter 1/How To Compile.w index 48dbc45bb..8ae1eedea 100644 --- a/inform7/core-module/Chapter 1/How To Compile.w +++ b/inform7/core-module/Chapter 1/How To Compile.w @@ -166,11 +166,7 @@ so on. Those absolute basics are made here. Task::advance_stage_to(PHRASES_CSEQ, I"Phrases and rules", 3, debugging, sequence_timer); BENCH(LiteralPatterns::define_named_phrases) - BENCH(Phrases::Manager::traverse) - BENCH(Phrases::Manager::register_meanings) - BENCH(Phrases::Manager::parse_rule_parameters) - BENCH(Phrases::Manager::add_rules_to_rulebooks) - BENCH(Phrases::Manager::parse_rule_placements) + BENCH(ImperativeDefinitions::find_phrases_and_rules) BENCH(Equations::traverse_to_stock) BENCH(Tables::traverse_to_stock) BENCH(RTProperties::annotate_attributes) @@ -199,14 +195,14 @@ so on. Those absolute basics are made here. BENCH(Tables::complete) BENCH(RTTables::compile) BENCH(RTEquations::compile_identifiers) - BENCH(Phrases::Manager::compile_first_block) - BENCH(Phrases::Manager::compile_rulebooks) - BENCH(Phrases::Manager::rulebooks_array) + BENCH(ImperativeDefinitions::compile_first_block) + BENCH(RTRules::compile_rulebooks) + BENCH(RTRules::rulebooks_array_array) BENCH(RTRules::rulebook_var_creators) BENCH(RTActivities::activity_var_creators) BENCH(RTRelations::IterateRelations) - BENCH(Phrases::Manager::RulebookNames_array) - BENCH(Phrases::Manager::RulePrintingRule_routine) + BENCH(RTRules::RulebookNames_array) + BENCH(RTRules::RulePrintingRule_routine) BENCH(RTVerbs::ConjugateVerb) BENCH(RTAdjectives::agreements) if (debugging) { @@ -219,12 +215,12 @@ so on. Those absolute basics are made here. BENCH(Lists::check) BENCH(ConstantLists::compile) BENCH(Phrases::invoke_to_begin) - BENCH(Phrases::Manager::compile_as_needed) + BENCH(ImperativeDefinitions::compile_as_needed) BENCH(Strings::compile_responses) BENCH(Lists::check) BENCH(ConstantLists::compile) BENCH(RTRelations::compile_defined_relations) - BENCH(Phrases::Manager::compile_as_needed) + BENCH(ImperativeDefinitions::compile_as_needed) BENCH(Strings::TextSubstitutions::allow_no_further_text_subs) @ = diff --git a/inform7/core-module/Chapter 1/Inform-Only Nodes and Annotations.w b/inform7/core-module/Chapter 1/Inform-Only Nodes and Annotations.w index 1b0d99459..22e0a55ad 100644 --- a/inform7/core-module/Chapter 1/Inform-Only Nodes and Annotations.w +++ b/inform7/core-module/Chapter 1/Inform-Only Nodes and Annotations.w @@ -16,7 +16,7 @@ declarations and assertion sentences. //linguistics: Diagrams// and below. These are clauses in sentences. (*) Code nodes, category |CODE_NCAT|, are defined only below. They occur only inside imperative code (i.e. rules and phrase definitions), in subtrees headed -by a level-2 |RULE_NT| node, and they organise what is to be compiled. +by a level-2 |IMPERATIVE_NT| node, and they organise what is to be compiled. (*) Specification nodes represent values or descriptions of values, and are defined only below. These occur frequently in the parse tree as children of code nodes, but can also be used in detached form as a way to represent, say, @@ -154,7 +154,7 @@ also makes it easier for us to manipulate the results. NodeType::new(TEST_PHRASE_OPTION_NT, I"TEST_PHRASE_OPTION_NT", 0, 0, COND_NCAT, 0); NodeType::new(TEST_VALUE_NT, I"TEST_VALUE_NT", 1, 1, COND_NCAT, 0); -@ Level 4 structural nodes can only be children of |RULE_NT| nodes (level 2) +@ Level 4 structural nodes can only be children of |IMPERATIVE_NT| nodes (level 2) or of each other, and their children are otherwise specifications. Specification nodes can only have each other as children. @@ -344,7 +344,7 @@ void CoreSyntax::grant_L2_permissions(void) { Annotations::allow_for_category(L2_NCAT, clears_pronouns_ANNOT); Annotations::allow_for_category(L2_NCAT, interpretation_of_subject_ANNOT); Annotations::allow_for_category(L2_NCAT, verb_problem_issued_ANNOT); - Annotations::allow(RULE_NT, indentation_level_ANNOT); + Annotations::allow(IMPERATIVE_NT, indentation_level_ANNOT); Annotations::allow(SENTENCE_NT, implicit_in_creation_of_ANNOT); Annotations::allow(SENTENCE_NT, implicitness_count_ANNOT); Annotations::allow(SENTENCE_NT, you_can_ignore_ANNOT); diff --git a/inform7/if-module/Chapter 3/Scenes.w b/inform7/if-module/Chapter 3/Scenes.w index d75614dac..be20da580 100644 --- a/inform7/if-module/Chapter 3/Scenes.w +++ b/inform7/if-module/Chapter 3/Scenes.w @@ -311,7 +311,7 @@ ends merrily" and "when the Banquet Entertainment ends merrily". sc->allocation_id, end); Feeds::feed_text_expanding_strings(i6_code); Sentences::make_node(Task::syntax_tree(), Feeds::end(id), '.'); - RuleSubtrees::register_recently_lexed_phrases(); + ImperativeSubtrees::accept_all(); DISCARD_TEXT(i6_code) @h Anchors. diff --git a/inform7/imperative-module/Chapter 2/Rule Bookings.w b/inform7/imperative-module/Chapter 2/Rule Bookings.w index ab4502f64..248ca62f9 100644 --- a/inform7/imperative-module/Chapter 2/Rule Bookings.w +++ b/inform7/imperative-module/Chapter 2/Rule Bookings.w @@ -109,6 +109,7 @@ void RuleBookings::make_automatic_placements(void) { internal_error("Inter-defined rules cannot be automatically placed"); } } + RTRules::compile_NUMBER_RULEBOOKS_CREATED(); } @h Specificity of bookings. diff --git a/inform7/imperative-module/Chapter 3/Construction Sequence.w b/inform7/imperative-module/Chapter 3/Construction Sequence.w index de52e8861..02c45d0b3 100644 --- a/inform7/imperative-module/Chapter 3/Construction Sequence.w +++ b/inform7/imperative-module/Chapter 3/Construction Sequence.w @@ -1,179 +1,21 @@ -[Phrases::Manager::] Construction Sequence. +[ImperativeDefinitions::] Construction Sequence. -To deal with all the |.i6t| interpreted commands which bring -about the compilation of phrases, and to ensure that they are used in -the correct order. +Managing the timing of dealing with defined phrases and rules. -@h A day in the life. -Suppose we compare the run of Inform to a single day. At dawn the program -starts up. In the morning it finds out the names of all the constant values -defined in the source text: names like "Mrs Blenkinsop", "hatstand", and -so on. By noon it has also found out the wording used for phrases, such as -"award prize (N - a number) to (gardener - a woman)". This means that in -the afternoon it knows every name it ever will, and so it can work through -the definitions of phrases like "award prize...". In the evening, it does -some book-keeping, and at nightfall it shuts down. - -We will use the story of our single day throughout this section on timing, -because everything has to happen in just the right order. - -@d DAWN_PHT 0 -@d EARLY_MORNING_PHT 1 -@d LATE_MORNING_PHT 2 -@d PRE_NOON_PHT 3 -@d EARLY_AFTERNOON_PHT 4 -@d MID_AFTERNOON_PHT 5 -@d LATE_AFTERNOON_PHT 6 -@d EVENING_PHT 7 +@ = -int phrase_time_now = DAWN_PHT; - -void Phrases::Manager::advance_phrase_time_to(int advance_to) { - if (advance_to < phrase_time_now) { - LOG("Advance from %d to %d\n", phrase_time_now, advance_to); - internal_error( - "The necessary phrase construction events are out of sequence"); - } - phrase_time_now = advance_to; -} - -@h Early morning. -We run through the phrase preambles to look for named rules like this: - ->> Instead of pushing the red button (this is the fire alarm rule): ... - -This looking-for-names is done by parsing the preamble text to a PHUD in -what is called "coarse mode", which can only get an approximate idea at -best: at this stage the "Instead" rulebook and the "red button" don't -exist, so most of the words here are meaningless. The PHUD which coarse -mode parsing produces is far too sketchy to use, and is thrown away. -But at least it does pick out the name "fire alarm rule", and Inform -creates an empty "rule" structure called this, registering this as the -name of a new constant. - -@h Mid-morning. -This is when Inform is making its main traverses through assertions. -Something very useful is happening, but it's happening somewhere else. -Assertions such as - ->> Instead is a rulebook. - -are being read, and rulebooks are therefore being created. - -@h Late morning. -With the assertions read, all the values have their names, and that means -we can go back to phrases like: - ->> Instead of pushing the red button (this is the fire alarm rule): ... - -and read them properly. So Inform now runs through the preambles again and -parses them for a second time to PHUDs, but this time in "fine mode" rather -than "coarse mode", and this time the result is not thrown away. If the -phrase is a "To..." phrase declaration, then the PHUD is pretty sketchy and -we parse more substantial PHTD and PHOD structures to accompany it. But if -it is a rule, the PHUD contains a great deal of useful information, and we -accompany it with essentially blank PHTD and PHOD structures. Either way, we -end up with a triplet of PHUD, PHTD and PHOD, and these are combined into a -new |phrase| structure. The PHSF structure is initially created as a -function of the PHTD: for example, if the phrase reads - ->> To award (points - a number): ... - -then the PHTD notes that "points" is the name of a parameter whose kind is -to be "number". The stack frame, PHSF, deduces that "points" will be a -local variable of kind "number" within the phrase when it's running. -Lastly, a blank PHRCD structure is created, filling out the set of five -substructures. - -As they are created, the "To..." phrases are insertion-sorted into a list of -phrases in logical precedence order. This can be done now because it relies -only on the kinds listed in the PHTD, all of which have existed since -mid-morning. - -For reasons discussed below, rules are not yet sorted. But the names created -in mid-morning, such as "fire alarm rule", are associated with their -phrases, and they are marked for what's called "automatic placement". For -example, the fire alarm rule will automatically be placed into the Instead -rulebook, because its preamble begins "Instead". The reason rules are only -marked to be placed later is that placement has to occur in logical -precedence order, but rules are harder to sort than phrases. They have to be -sorted by their PHRCDs, not their PHTDs, and a PHRCD cannot even be parsed -until afternoon because the conditions for a rule often mention phrases -- -for instance, "Instead of waiting when in darkness", making use of an "in -darkness" phrase. So for now we just make a mental note to do automatic -placement later on. - -= -void Phrases::Manager::traverse(void) { - Phrases::Manager::advance_phrase_time_to(LATE_MORNING_PHT); - +void ImperativeDefinitions::find_phrases_and_rules(void) { + int initial_problem_count = problem_count; int progress_target = 0, progress_made = 0; - SyntaxTree::traverse_intp(Task::syntax_tree(), Phrases::Manager::visit_to_count, &progress_target); - SyntaxTree::traverse_intp_intp(Task::syntax_tree(), Phrases::Manager::visit_to_create, &progress_target, &progress_made); -} - -void Phrases::Manager::visit_to_count(parse_node *p, int *progress_target) { - (*progress_target)++; -} - -void Phrases::Manager::visit_to_create(parse_node *p, int *progress_target, int *progress_made) { - (*progress_made)++; - if ((*progress_made) % 10 == 0) - ProgressBar::update(3, - ((float) (*progress_made))/((float) (*progress_target))); - - if (Node::get_type(p) == RULE_NT) { - Phrases::create_from_preamble(p); - } -} - -@h Just before noon. -It is now nearly noon, and things appear to be a little untidy. Why -are the "To..." phrases not yet registered with the excerpt parser? -The answer is that we needed to wait until all of the "To..." phrases -had been created as structures before we could safely proceed. The first -phrase couldn't be registered until we knew the complete logical order -of them all. Well: at last, we do know that, and can make the registration. -Phrases are the very last things to get their names in Inform (well, not -counting local variables, whose names only exist fleetingly). - -= -void Phrases::Manager::register_meanings(void) { - Phrases::Manager::advance_phrase_time_to(PRE_NOON_PHT); + SyntaxTree::traverse_intp(Task::syntax_tree(), ImperativeDefinitions::visit_to_count, + &progress_target); + SyntaxTree::traverse_intp_intp(Task::syntax_tree(), ImperativeDefinitions::visit_to_create, + &progress_target, &progress_made); + if (initial_problem_count < problem_count) return; Routines::ToPhrases::register_all(); -} - -@h Noon. -When the final phrase is registered, the hour chimes. From this point -onwards, there's no longer any text which can't be parsed because some -of the names don't exist yet: everything exists. - -@h Early afternoon. -In the afternoon, we begin by binding up the rulebooks. First, we go through -the phrases destined to be rules, and for each we translate the PHUD (which -contains mainly textual representations of the usage information, e.g. -"taking something (called the thingummy) which is in a lighted room during -Scene Two when the marble slab is open") to a PHRCD (which contains fully -parsed Inform data structures, e.g., an action pattern and a pointer to a -|scene| structure). As noted above, this often means parsing conditions -which involve phrases, and that's why we're doing it in the afternoon. - -During this PHUD-to-PHRCD parsing process, we make sure that the relevant -phrase's PHSF is the current stack frame, because it's here that the names -of any callings (e.g. "thingummy") are created as local variables to be -valid throughout the phrase. - -Once we're done with this, the PHUD will never be used again. - -Note that the PHRCDs have to be parsed in source text appearance order (the -order which |LOOP_OVER| follows) so that the back reference "doing it" can -correctly refer to the most recently mentioned action. - -= -void Phrases::Manager::parse_rule_parameters(void) { - Phrases::Manager::advance_phrase_time_to(EARLY_AFTERNOON_PHT); + if (initial_problem_count < problem_count) return; phrase *ph; LOOP_OVER(ph, phrase) { @@ -183,34 +25,27 @@ void Phrases::Manager::parse_rule_parameters(void) { Phrases::Usage::to_runtime_context_data(&(ph->usage_data)); Frames::remove_current(); } -} + if (initial_problem_count < problem_count) return; -@ We can finally make the automatic placements of rules into rulebooks: so -our "fire alarm rule" will at last be placed in the "Instead" rulebook. The -PHRCDs are used to make sure it appears in the right position. - -= -void Phrases::Manager::add_rules_to_rulebooks(void) { - Phrases::Manager::advance_phrase_time_to(EARLY_AFTERNOON_PHT); RuleBookings::make_automatic_placements(); - inter_name *iname = Hierarchy::find(NUMBER_RULEBOOKS_CREATED_HL); - Emit::named_numeric_constant(iname, (inter_ti) NUMBER_CREATED(rulebook)); - Hierarchy::make_available(Emit::tree(), iname); + if (initial_problem_count < problem_count) return; + + SyntaxTree::traverse(Task::syntax_tree(), ImperativeDefinitions::visit_to_parse_placements); } -@ It might seem as if the rulebooks are now complete, but this is not true, -because we still have to take care of manual placements like: +void ImperativeDefinitions::visit_to_count(parse_node *p, int *progress_target) { + (*progress_target)++; +} ->> The fire alarm rule is listed in the safety procedures rulebook. +void ImperativeDefinitions::visit_to_create(parse_node *p, int *progress_target, int *progress_made) { + (*progress_made)++; + if ((*progress_made) % 10 == 0) + ProgressBar::update(3, + ((float) (*progress_made))/((float) (*progress_target))); -This is where we get on with that, traversing the parse tree for sentences -of this general sort. Rules can also be unlisted, or constrained to happen -only conditionally, or substituted by other rules. - -= -void Phrases::Manager::parse_rule_placements(void) { - Phrases::Manager::advance_phrase_time_to(EARLY_AFTERNOON_PHT); - SyntaxTree::traverse(Task::syntax_tree(), Phrases::Manager::visit_to_parse_placements); + if (Node::get_type(p) == IMPERATIVE_NT) { + Phrases::create_from_preamble(p); + } } @ @@ -218,29 +53,24 @@ void Phrases::Manager::parse_rule_placements(void) { @e TRAVERSE_FOR_RULE_FILING_SMFT = -void Phrases::Manager::visit_to_parse_placements(parse_node *p) { +void ImperativeDefinitions::visit_to_parse_placements(parse_node *p) { if ((Node::get_type(p) == SENTENCE_NT) && (p->down) && (Node::get_type(p->down) == VERB_NT)) { - prevailing_mood = - Annotations::read_int(p->down, verbal_certainty_ANNOT); + prevailing_mood = Annotations::read_int(p->down, verbal_certainty_ANNOT); MajorNodes::try_special_meaning(TRAVERSE_FOR_RULE_FILING_SMFT, p->down); } } -@h Mid-afternoon. -It is now mid-afternoon, and the rulebooks are complete. It is time to -compile the I6 routines which will provide the run-time definitions of all -these phrases. This will be a long task, and much of it will be left until -the evening. But we do get rid of some easy cases now: the rules and -adjective definitions. +@ The rulebooks are now complete and final. It is time to +compile the Inter code which will provide the run-time definitions of all +these phrases. This will be a long task, and we can only do most of it now, +because more phrases will appear later. = int total_phrases_to_compile = 0; int total_phrases_compiled = 0; -void Phrases::Manager::compile_first_block(void) { - Phrases::Manager::advance_phrase_time_to(MID_AFTERNOON_PHT); - +void ImperativeDefinitions::compile_first_block(void) { @; @; @; @@ -357,56 +187,7 @@ points", say). This is where we do it: Problems::issue_problem_end(); } -@h Late Afternoon. -Rules are pretty well sorted out now, but we still need to compile some I6 -to show how they fit together. These miscellaneous function calls can happen -in any order, so long as they all occur in the late afternoon. - -First, rules set to go off at a particular time need to have their timings -noted down: - -= -void Phrases::Manager::TimedEventsTable(void) { - Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT); - Phrases::Timed::TimedEventsTable(); -} - -void Phrases::Manager::TimedEventTimesTable(void) { - Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT); - Phrases::Timed::TimedEventTimesTable(); -} - -@ Second, the rulebooks need to be compiled into I6 arrays: - -= -void Phrases::Manager::rulebooks_array(void) { - Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT); - RTRules::rulebooks_array_array(); -} - -void Phrases::Manager::compile_rulebooks(void) { - Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT); - RTRules::compile_rulebooks(); -} - -void Phrases::Manager::RulebookNames_array(void) { - Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT); - RTRules::RulebookNames_array(); -} - -@ And finally, just as the sun slips below the horizon, we compile the code -which prints out values of the kind "rule" at run-time -- for example, taking -the address of the routine which our example rule was compiled to and then -printing out "fire alarm rule". - -= -void Phrases::Manager::RulePrintingRule_routine(void) { - Phrases::Manager::advance_phrase_time_to(LATE_AFTERNOON_PHT); - RTRules::RulePrintingRule_routine(); -} - -@h Evening. -The twilight gathers, but our work is far from done. Recall that we have +@ The twilight gathers, but our work is far from done. Recall that we have accumulated compilation requests for "To..." phrases, but haven't actually acted on them yet. @@ -435,12 +216,10 @@ phrases alone: we must compile phrases, then things arising from them, then phrases arising from those, then things arising from the phrases arising from those, and so on, until we're done. The process is therefore structured as a set of "coroutines" which each carry out as much as they can and then -hand over to the others to generate more work. (Indeed, the routine below -can be called multiple times in the course of the evening.) +hand over to the others to generate more work. = -void Phrases::Manager::compile_as_needed(void) { - Phrases::Manager::advance_phrase_time_to(EVENING_PHT); +void ImperativeDefinitions::compile_as_needed(void) { rule *R; LOOP_OVER(R, rule) RTRules::compile_definition(R, diff --git a/inform7/imperative-module/Chapter 3/Phrases.w b/inform7/imperative-module/Chapter 3/Phrases.w index 888870c19..6aea9d753 100644 --- a/inform7/imperative-module/Chapter 3/Phrases.w +++ b/inform7/imperative-module/Chapter 3/Phrases.w @@ -41,7 +41,7 @@ code below. = typedef struct phrase { - struct parse_node *declaration_node; /* |RULE_NT| node where declared */ + struct parse_node *declaration_node; /* |IMPERATIVE_NT| node where declared */ int inline_wn; /* word number of inline I6 definition, or |-1| if not inline */ struct inter_schema *inter_head_defn; /* inline definition translated to inter, if possible */ struct inter_schema *inter_tail_defn; /* inline definition translated to inter, if possible */ @@ -50,7 +50,6 @@ typedef struct phrase { struct wording ph_documentation_symbol; /* cross-reference with documentation */ struct compilation_unit *owning_module; struct package_request *requests_package; -// struct package_request *rule_package; struct ph_type_data type_data; struct ph_usage_data usage_data; @@ -83,8 +82,8 @@ invocation which is given as verbatim I6. = void Phrases::create_from_preamble(parse_node *p) { - if ((p == NULL) || (Node::get_type(p) != RULE_NT)) - internal_error("a phrase preamble should be at a RULE_NT node"); + if ((p == NULL) || (Node::get_type(p) != IMPERATIVE_NT)) + internal_error("a phrase preamble should be at a IMPERATIVE_NT node"); int inline_wn = -1; /* the word number of an inline I6 definition if any */ int mor = DONT_KNOW_MOR; /* and its manner of return */ wording OW = EMPTY_WORDING; /* the text of the phrase options, if any */ diff --git a/inform7/imperative-module/Chapter 6/Compile Phrases.w b/inform7/imperative-module/Chapter 6/Compile Phrases.w index 6d81af159..347e12f5c 100644 --- a/inform7/imperative-module/Chapter 6/Compile Phrases.w +++ b/inform7/imperative-module/Chapter 6/Compile Phrases.w @@ -28,7 +28,7 @@ void Routines::Compile::routine(phrase *ph, rule *R) { if ((ph->declaration_node == NULL) || - (Node::get_type(ph->declaration_node) != RULE_NT) || + (Node::get_type(ph->declaration_node) != IMPERATIVE_NT) || (Wordings::empty(Node::get_text(ph->declaration_node)))) internal_error("tried to compile phrase with bad ROUTINE node"); LOGIF(PHRASE_COMPILATION, "Compiling phrase:\n$T", ph->declaration_node); diff --git a/inform7/imperative-module/Contents.w b/inform7/imperative-module/Contents.w index 09e3d7b3f..01f4aa60a 100644 --- a/inform7/imperative-module/Contents.w +++ b/inform7/imperative-module/Contents.w @@ -26,7 +26,6 @@ with specific changes in the world) have their preambles parsed and their premisses worked out, and are then collected together into rulebooks, before being compiled as a great mass of Inform 6 routines and arrays." Introduction to Phrases - Rule Subtrees Construction Sequence Phrases Phrase Usage @@ -37,7 +36,6 @@ being compiled as a great mass of Inform 6 routines and arrays." Phrases as Values To Phrases Timed Phrases - Phrasebook Index Chapter 4: Compilation Context "Preparing a context at run-time in which code can be executed." diff --git a/inform7/imperative-module/Chapter 3/Phrasebook Index.w b/inform7/index-module/Chapter 2/Phrasebook Index.w similarity index 100% rename from inform7/imperative-module/Chapter 3/Phrasebook Index.w rename to inform7/index-module/Chapter 2/Phrasebook Index.w diff --git a/inform7/index-module/Contents.w b/inform7/index-module/Contents.w index 149d8adba..78b4b2ae3 100644 --- a/inform7/index-module/Contents.w +++ b/inform7/index-module/Contents.w @@ -23,6 +23,7 @@ Chapter 2: Indexing Inferences Rules Activities + Phrasebook Index Chapter 3: Indexing for Plugins Figures diff --git a/inform7/knowledge-module/Chapter 3/Measurement Adjectives.w b/inform7/knowledge-module/Chapter 3/Measurement Adjectives.w index 203492a9b..fd00145e7 100644 --- a/inform7/knowledge-module/Chapter 3/Measurement Adjectives.w +++ b/inform7/knowledge-module/Chapter 3/Measurement Adjectives.w @@ -138,7 +138,7 @@ can't normally be unravelled at compile time. Grading::make_superlative(mdef->headword, Task::language_of_syntax()); @; @; - RuleSubtrees::register_recently_lexed_phrases(); + ImperativeSubtrees::accept_all(); @ = TEMPORARY_TEXT(TEMP) diff --git a/inform7/runtime-module/Chapter 3/Adjectival Definitions.w b/inform7/runtime-module/Chapter 3/Adjectival Definitions.w index d4273d32b..52cd2ca4b 100644 --- a/inform7/runtime-module/Chapter 3/Adjectival Definitions.w +++ b/inform7/runtime-module/Chapter 3/Adjectival Definitions.w @@ -96,7 +96,7 @@ the doubled use of colons is unfortunate.) = void Phrases::Adjectives::look_for_headers(parse_node *p) { - if (Node::get_type(p) == RULE_NT) + if (Node::get_type(p) == IMPERATIVE_NT) if ((Node::get_text(p))) { compilation_unit *cm = CompilationUnits::current(); CompilationUnits::set_current(p); @@ -125,7 +125,7 @@ is defined by routine or not. @ = if ((p->next == NULL) || - (Node::get_type(p->next) != RULE_NT)) { + (Node::get_type(p->next) != IMPERATIVE_NT)) { StandardProblems::sentence_problem(Task::syntax_tree(), _p_(BelievedImpossible), "don't leave me in suspense", "write a definition after 'Definition:'!"); diff --git a/inform7/runtime-module/Chapter 4/Rules.w b/inform7/runtime-module/Chapter 4/Rules.w index 0278d31a5..5d7b9f5df 100644 --- a/inform7/runtime-module/Chapter 4/Rules.w +++ b/inform7/runtime-module/Chapter 4/Rules.w @@ -619,6 +619,15 @@ action_name *RTRules::br_required_action(booking *br) { @ += +void RTRules::compile_NUMBER_RULEBOOKS_CREATED(void) { + inter_name *iname = Hierarchy::find(NUMBER_RULEBOOKS_CREATED_HL); + Emit::named_numeric_constant(iname, (inter_ti) NUMBER_CREATED(rulebook)); + Hierarchy::make_available(Emit::tree(), iname); +} + +@ + = typedef struct rulebook_compilation_data { struct inter_name *stv_creator_iname; diff --git a/inform7/runtime-module/Chapter 4/Text Substitutions.w b/inform7/runtime-module/Chapter 4/Text Substitutions.w index 730bbf95c..50edca7df 100644 --- a/inform7/runtime-module/Chapter 4/Text Substitutions.w +++ b/inform7/runtime-module/Chapter 4/Text Substitutions.w @@ -326,14 +326,14 @@ a request for a new text substitution to be compiled later... Produce::up(Emit::tree()); } - parse_node *ts_code_block = Node::new(RULE_NT); + parse_node *ts_code_block = Node::new(IMPERATIVE_NT); Node::set_unit(ts_code_block, ts->belongs_to_module); compilation_unit *cm = CompilationUnits::current(); CompilationUnits::set_current_to(ts->belongs_to_module); - ts_code_block->down = Node::new(INVOCATION_LIST_NT); - Node::set_text(ts_code_block->down, ts->unsubstituted_text); - Annotations::write_int(ts_code_block->down, from_text_substitution_ANNOT, TRUE); - RuleSubtrees::parse_routine_structure(ts_code_block); + ts_code_block->next = Node::new(UNKNOWN_NT); + Node::set_text(ts_code_block->next, ts->unsubstituted_text); + Annotations::write_int(ts_code_block->next, from_text_substitution_ANNOT, TRUE); + ImperativeSubtrees::accept(ts_code_block); Routines::Compile::code_block_outer(0, ts_code_block->down); diff --git a/inform7/values-module/Chapter 3/Literal Patterns.w b/inform7/values-module/Chapter 3/Literal Patterns.w index f81cd7e8f..315866a5e 100644 --- a/inform7/values-module/Chapter 3/Literal Patterns.w +++ b/inform7/values-module/Chapter 3/Literal Patterns.w @@ -1280,7 +1280,7 @@ void LiteralPatterns::define_named_phrases(void) { @; } } - RuleSubtrees::register_recently_lexed_phrases(); + ImperativeSubtrees::accept_all(); } @ These text substitutions correspond exactly neither to the LPs nor to the @@ -1333,7 +1333,7 @@ void LiteralPatterns::define_packing_phrases(literal_pattern *lp, kind *K) { Kinds::Textual::write(TEMP, K); @; @; - RuleSubtrees::register_recently_lexed_phrases(); + ImperativeSubtrees::accept_all(); DISCARD_TEXT(TEMP) } diff --git a/services/syntax-module/Chapter 2/Parse Nodes.w b/services/syntax-module/Chapter 2/Parse Nodes.w index 458782b04..8accb72a1 100644 --- a/services/syntax-module/Chapter 2/Parse Nodes.w +++ b/services/syntax-module/Chapter 2/Parse Nodes.w @@ -292,8 +292,8 @@ void Node::log_subtree_recursively(OUTPUT_STREAM, parse_node *pn, int num, if (pn->down) { LOG_INDENT; int recurse = TRUE; - #ifdef RULE_NT - if ((summarise) && (Node::is(pn, RULE_NT))) recurse = FALSE; + #ifdef IMPERATIVE_NT + if ((summarise) && (Node::is(pn, IMPERATIVE_NT))) recurse = FALSE; #endif if (recurse) Node::log_subtree_recursively(OUT, diff --git a/services/syntax-module/Chapter 3/Sentences.w b/services/syntax-module/Chapter 3/Sentences.w index e37ee33f1..eb6ea85d8 100644 --- a/services/syntax-module/Chapter 3/Sentences.w +++ b/services/syntax-module/Chapter 3/Sentences.w @@ -459,7 +459,7 @@ Anything we cannot place into categories (b) or (c) below will go here. (b) "Sentences making up rules". These are sequences of sentences in which a preamble (ending with a colon, or in certain cases a comma) of node type -|RULE_NT| is followed by a sequence of phrases (ending with semicolons until +|IMPERATIVE_NT| is followed by a sequence of phrases (ending with semicolons until the last, which ends with a full stop or paragraph break), each of node type |INVOCATION_LIST_NT|. For instance, the following produces three nodes: @@ -549,7 +549,7 @@ The following is used to detect "or" in such lists. @; @ In such sentences a comma is read as if it were a colon. (The text up to the -comma will then be given a |RULE_NT| node and the text beyond the comma +comma will then be given a |IMPERATIVE_NT| node and the text beyond the comma will make a |INVOCATION_LIST_NT| node.) @ = @@ -588,7 +588,7 @@ its terminating colon. For instance: >> To look upwards: say "Look out!"; something else. (which arrives at this routine as three separate "sentences") will produce -nodes with type |RULE_NT|, |INVOCATION_LIST_NT| and |INVOCATION_LIST_NT| respectively. +nodes with type |IMPERATIVE_NT|, |INVOCATION_LIST_NT| and |INVOCATION_LIST_NT| respectively. This paragraph of code might look as if it should only be used in assertion mode, not in rule mode, because how can a rule preamble legally occur in @@ -597,7 +597,7 @@ officially sanctioned way to make a definition with a complex phrase: >> Definition: a supporter is wobbly: if the player is on it, decide yes; decide no. -This produces four nodes: |RULE_NT|, |RULE_NT|, |INVOCATION_LIST_NT| and +This produces four nodes: |IMPERATIVE_NT|, |IMPERATIVE_NT|, |INVOCATION_LIST_NT| and |INVOCATION_LIST_NT| respectively. The other arises somewhat less officially when people treat phrases as