anchor.diff:    MapExpr = #{ op   => erl_map
                , env  => Env4
                , form => Map
  -             , tag  => 'clojerl.Map'
  +             , tag  => 'clojerl.erlang.Map'
                , keys => KeysExpr
                , vals => ValsExpr
                },
  
positive.code:                       ),
  
    ParamsList = clj_core:to_list(Params),
    clj_utils:error_when( not lists:all(fun is_valid_bind_symbol/1, ParamsList)
                        , [ <<"Params must be valid binding symbols, had: ">>
                          , Params
                          ]
                        , clj_env:location(Env0)
                        ),
  
    IsNotAmpersandFun = fun(X) -> clj_core:str(X) =/= <<"&">> end,
    ParamsNames       = lists:filter(IsNotAmpersandFun, ParamsList),
  
negative.code: 
  -spec parse_pattern(any(), clj_env:env()) -> clj_env:env().
  parse_pattern(Form, Env) ->
    IsSymbol = clj_core:'symbol?'(Form),
    if
      IsSymbol ->
        Ast = #{ op   => binding
               , env  => Env
               , name => Form
  