anchor.diff:  
   from_lit_list(Es) -> [ from_lit(E) || E <- Es ].
   
  --record(tstate, {vc=0				%Variable counter
  -		}).
  +-record(to, {vc=0				%Variable counter
  +	    }).
   
   to_expr(E, L) ->
  -    {Le,_} = to_expr(E, L, [], #tstate{}),
  +    {Le,_} = to_expr(E, L, orddict:new(), #to{}),
       Le.
   
   %% to_expr(Expr, LineNumber, VarTable, State) -> {Expr,State}.
  
positive.code: 
  -import(lists, [map/2,foldl/3,mapfoldl/3,foldr/3,splitwith/2]).
  
  -import(ordsets, [add_element/2,is_element/2,intersection/2]).
  -import(orddict, [store/3,is_key/2,find/2]).
  
  -define(Q(E), [quote,E]).			%We do a lot of quoting
  
  -record(fstate, {vc=0				%Variable counter
  		}).
  
  %% from_expr(AST) -> Sexpr.
  %% from_expr(AST, Variables) -> {Sexpr,Variables}.
  
negative.code: %% Purpose : Lisp Flavoured Erlang translator.
  
  %%% Translate LFE code to/from vanilla Erlang AST.
  %%%
  %%% Note that we don't really check code here as such, we assume the
  %%% input is correct. If there is an error in the input we just fail.
  %%% This allows us to accept forms which are actually illegal but we
  %%% may special case, for example functions call in patterns which
  %%% will become macro expansions.
  
  -module(lfe_trans).
  
  