anchor.diff:  
   start_eval(St) ->
       Self = self(),
  -    spawn_link(fun () -> evaluator(Self, St) end).
  -
  -evaluator(Shell, St) ->
  +    spawn_link(fun () -> eval_init(Self, St) end).
  +
  +eval_init(Shell, St) ->
       eval_loop(Shell, St).
   
   eval_loop(Shell, St0) ->
       receive
  -	{eval_expr,Shell,Form} ->
  -	    St1 = eval_form(Form, Shell, St0),
  -	    eval_loop(Shell, St1)
  +        {eval_expr,Shell,Form} ->
  +            St1 = eval_form(Form, Shell, St0),
  +            eval_loop(Shell, St1)
       end.
   
   %% eval_form(Form, ShellPid, State) -> State.
  
positive.code: 
  -import(orddict, [store/3,find/2]).
  -import(ordsets, [add_element/2]).
  -import(lists, [reverse/1,map/2,foreach/2,foldl/3]).
  
  -include("lfe.hrl").
  
  %% -compile([export_all]).
  
  %% Shell state.
  -record(state, {curr,save,base,             %Current, save and base env
  
negative.code:         false -> "> "
      end.
  
  report_exception(Class, Reason, Stk) ->
      %% Use LFE's simplified version of erlang shell's error
      %% reporting but which LFE prettyprints data.
      Sf = fun ({M,_F,_A}) ->                     %Pre R15
                   %% Don't want to see these in stacktrace.
                   (M == lfe_eval) or (M == ?MODULE);
               ({M,_F,_A,_L}) ->                  %R15 and later
                   %% Don't want to see these in stacktrace.
                   (M == lfe_eval) or (M == ?MODULE)
           end,
      Ff = fun (T, I) -> lfe_io:prettyprint1(T, 15, I, 80) end,
      Cs = lfe_lib:format_exception(Class, Reason, Stk, Sf, Ff, 1),
      io:put_chars(Cs),
  