anchor.diff:          | action_statement
           | match_statement
           | return_statement
  +        #| rule_statement
  +        #| method_declaration
  +        #| attribute_statement
           | actionvalue_statement
  +        | interface_declaration
  +        | while_statement
           | variable_declaration_or_call
   
       rule statement_list:
           ( function_body_statement )+
  -        #( let_statement
  -        #| for_statement
  +
  +    rule module_item:
  +        ( function_body_statement
  +#match_statement
  +        #| return_statement
           #| function_statement
  -        #| case_statement
  -        | return_statement
  -        #| if_statement
  -        #| group_statement
  -        #| helper_statement
  -        #| seq_statement
  -        #| ifdef_statement
  -        #| variable_declaration_or_call
  -        #)+
  -
  -    rule module_item:
  -        ( module_instantiations
  -        #| interface_declaration
  -        | match_statement
  -        | return_statement
  -        | function_statement
           | rule_statement
           | method_declaration
  -        | for_statement
  -        | let_statement
  -        | if_statement
  +        #| for_statement
  +        #| let_statement
  +        #| if_statement
           | attribute_statement
  -        | variable_declaration_or_call
  +        #| variable_declaration_or_call
  +        )*
  +
  +    rule package_statement_list:
  +        ( typedef_statement
  +        | import_statement
  +        | define_statement
  +        | interface_declaration
  +        | module_declaration
  +        | variable_declaration
  +        | attribute_statement
  +        | function_statement
           )*
   
       rule group_statement:
  
positive.code:              [ QUESTION expr<<V>> COLON expr<<V>> ]
               {{return exprint}}
           | case_statement {{ return "0" }}
  
      # An expression is the sum and difference of factors
      rule exprint<<V>>:   factor<<V>>         {{ n = factor }}
                       ( "[+]" factor<<V>>  {{ n = n+factor }}
                       |  "-"  factor<<V>>  {{ n = n-factor }}
                       )*                   {{ return n }}
  
  
negative.code: 
      rule typedef_statement:
          "typedef" 
          Member
  
      rule Member:
          ( ( "type" | Type_item_or_name | NUM ) [Type_name]
              [ HASH LPAREN struct_arg (COMMA struct_arg)* RPAREN ] SEMICOLON
          | "enum" LBRACE Elements ( COMMA Elements )* RBRACE Type_name
  