anchor.diff:      | PRIMITIVE_SHAPE function_call_args? (block | ';') -> ^(PRIMITIVE_SHAPE function_call_args? block?)
       | CSG_SHAPE function_call_args? (block | ';')       -> ^(CSG_SHAPE function_call_args? block?)
       | BBOX function_call_args? (block | ';')            -> ^(BBOX function_call_args? block?)
  +    | TRANSFORMATION expr ';'                           -> ^(TRANSFORMATION expr)
  +    | TRANSFORMATION2 function_call_args ';'            -> ^(TRANSFORMATION2 function_call_args)
       | LIGHT function_call_args? (block | ';')           -> ^(LIGHT function_call_args? block?)
       | expr ';'!
       ;
  
positive.code:     | variable_reference
      | vector
      | color
      | transformation
      | '('! expr ')'!
      ;
  
  
negative.code: 
  color
      : COLOR '[' expr ',' expr ',' expr ']' -> ^(COLOR expr*)
      ;
  
  DEF : 'def';
  