anchor.diff:  
   func_type_annotation returns [String code]
       : first=type_annotation {$code = $first.code;} (next=type_annotation {$code += " " + $next.code;})*
  +    ;
  +
  +
  +lambda returns [String code]
  +    : '#(' expression ')' {$code="#("+$expression.code+")";}
       ;
   
   val_assignment returns [String code]
  
positive.code:     | for_loop {$code = $for_loop.code; }
      | conditional {$code = $conditional.code; }
      | let_statement {$code = $let_statement.code; }
      | '(' expression ')' {$code = $expression.code; }
      ;
  
  
negative.code: CPEQ: '==';
  
  /* Names of variables and functions */
  ID
      : ('a'..'z' | 'A'..'Z')+('?')?
      | '%'
      ;
  
  SYMBOL: ':' ID;
  
  