anchor.diff:  analyze_let(Env, Form) ->
     validate_bindings(Form),
     Op = clj_core:first(Form),
  -  IsLoop = clj_core:symbol(<<"loop*">>) == Op,
  +  IsLoop = clj_core:equiv(clj_core:symbol(<<"loop*">>), Op),
   
     PairUp = fun
                PairUp([], Pairs) ->
  
positive.code:       throw(<<"Can't refer to qualified var that doesn't exist">>);
      {Var, Env1} ->
        VarNsSym = 'clojerl.Var':namespace(Var),
        clj_utils:throw_when( clj_core:namespace(VarSymbol) =/= undefined
                              andalso clj_env:current_ns(Env1) =/= VarNsSym
                            , <<"Can't create defs outside of current ns">>
                            ),
  
  
negative.code:     true ->
        NsSym = case clj_core:namespace(VarSymbol) of
                  undefined -> undefined;
                  NsStr     -> clj_core:symbol(NsStr)
                end,
  
        NameSym   = clj_core:symbol(clj_core:name(VarSymbol)),
        InternFun = fun(Ns) -> clj_namespace:intern(Ns, NameSym) end,
  
        CurrentNs = clj_env:current_ns(Env),
        case clj_core:equiv(CurrentNs, NsSym) of
          Equal when Equal; NsSym == undefined ->
            NewEnv = clj_env:update_ns(Env, CurrentNs, InternFun),
            lookup_var(VarSymbol, false, NewEnv);
          false ->
            lookup_var(VarSymbol, false, Env)
        end
    end;
  