anchor.diff:  start([T]) ->
     Out = render(list_to_atom(T)),
     io:format(Out ++ "~n", []).
  -
  --ifdef(TEST).
  -
  -simple_test() ->
  -    Ctx = dict:from_list([{name, "world"}]),
  -    Result = render("Hello {{name}}!", Ctx),
  -    ?assertEqual("Hello world!", Result).
  -
  -integer_values_too_test() ->
  -    Ctx = dict:from_list([{name, "Chris"}, {value, 10000}]),
  -    Result = render("Hello {{name}}~nYou have just won ${{value}}!", Ctx),
  -    ?assertEqual("Hello Chris~nYou have just won $10000!", Result).
  -
  --endif.
  
positive.code:   Result = compiler(Content, State),
    "fun() -> " ++
      "case mustache:get(" ++ Name ++ ", Ctx, " ++ atom_to_list(Mod) ++ ") of " ++
        "true -> " ++
          Result ++ "; " ++
        "false -> " ++
          "[]; " ++
        "List when is_list(List) -> " ++
          "[fun(Ctx) -> " ++ Result ++ " end(dict:merge(CFun, SubCtx, Ctx)) || SubCtx <- List]; " ++
  
negative.code: compile_tag("!", _Content, _State) ->
    "[]".
  
  template_dir(Mod) ->
    DefaultDirPath = filename:dirname(code:which(Mod)),
    case application:get_env(mustache, templates_dir) of
      {ok, DirPath} when is_list(DirPath) ->
        case filelib:ensure_dir(DirPath) of
          ok -> DirPath;
          _  -> DefaultDirPath
        end;
      _ ->
        DefaultDirPath
    end.
  template_path(Mod) ->
    DirPath = template_dir(Mod),
    Basename = atom_to_list(Mod),
    filename:join(DirPath, Basename ++ ".mustache").
  
  get(Key, Ctx) when is_list(Key) ->
    {ok, Mod} = dict:find('__mod__', Ctx),
  