anchor.diff:      :   INDENT statements DEDENT
       ;
   
  +match
  +    :   MATCH expression match_block
  +    ;
  +
  +match_block
  +    :   INDENT match_options DEDENT
  +    ;
  +
  +match_options
  +    :   PIPE match_option (NL PIPE match_option)* NL*
  +    ;
  +
  +match_option
  +    :   match_expression block
  +    ;
  +
  +match_expression
  +    :   literal
  +    |   match_expression (PIPE match_expression)+
  +    ;
  +
   inline_block
  -    :   expression
  -    |   '{' statement (';' statement)* '}'
  +    :   ARROW 
  +        (   expression
  +        |   LBRACE statement (SEMI statement)* RBRACE
  +        )
       ;
   
   namespace
  
positive.code:     ;
  
  expressions
      :   expression ( (NL | ',') expression)*
      ;
  
  expression
  
negative.code:     |   expression
      ;
  
  enumeration
      :   Identifier ASSIGN 
          (   elements
          |   INDENT elements DEDENT
          )
      ;
  
  elements
      :   PIPE element (NL? PIPE element)* NL*
      ;
  
  element
      :   Identifier (ASSIGN expression)?
      ;
  
  if_block
  