anchor.diff:  
   %% Handling types in LFE including functions for converting between
   %% Erlang and LFE type formats.
  +%% We can correctly do most types except for maps where we lose the
  +%% distinction between assoc and exact pairs.
   
   -module(lfe_types).
   
  
positive.code: to_type_def(Val, Line) when is_atom(Val) ->     %Variable
      {var,Line,Val}.
  
  to_lit(Val, Line) when is_atom(Val) -> {atom,Line,Val};
  to_lit(Val, Line) when is_integer(Val) -> {integer,Line,Val}.
  
  to_type_rec_fields(Fs, Line) ->
      Fun = fun ([F,Type]) ->
  
negative.code: 
  to_lambda_args(any, Line) -> {type,Line,any};
  to_lambda_args(Args, Line) -> to_func_prod(Args, Line).
  
  %% from_func_type_list([FuncType]) -> Type.
  
  