anchor.diff:  function_identifier -> class : {identifier, ?line('$1'), 'class'}.
   
   %% Function definitions
  -function -> def function_identifier eol function_body 'end' : 
  +function -> def function_identifier eol body 'end' : 
     #function{
       line = ?line('$1'), 
       name = element(3, '$2'), 
       body = '$4'
     }.
  -function -> def function_identifier pargs eol function_body 'end' :
  +function -> def function_identifier pargs eol body 'end' :
     #function{
       line  = ?line('$1'), 
       name  = element(3, '$2'), 
  
positive.code: clauses -> clause clauses : ['$1'|'$2'].
  clauses -> clause : ['$1'].
  
  clause -> when inline_exprs eol expr_list : 
    #clause{
      line=?line('$1'), 
      patterns='$2', 
  
negative.code:     body  = '$5'
    }.
  
  body -> '$empty'  : [#nil{}].
  body -> expr_list : '$1'.
  
  %% Class instantiations
  class_inst -> module_name pargs :
  