anchor.diff:       {"kernel", "zlib"},
        {"kernel", "erlang"},
        {"kernel", "erl_prim_loader"}].
  +
  +-type map_fun(D, R) :: fun((D) -> R).
  +-type reduce_fun(T) :: fun((T, _) -> _).
  +
  +-spec pmapreduce(map_fun(T, R), reduce_fun(R), R, [T]) -> [R].
  +pmapreduce(Map, Reduce, Acc0, L) ->
  +    pmapreduce(Map, Reduce, Acc0, L, 4).
  +
  +-spec pmapreduce(map_fun(T, R), reduce_fun(R), R, [T], pos_integer()) -> [R].
  +pmapreduce(Map, Reduce, Acc0, L, N) ->
  +    Keys = [rpc:async_call(node(), ?MODULE, mapreduce,
  +                           [Map, Reduce, Acc0, Segment])
  +            || Segment <- segment(L, N)],
  +    mapreduce(fun rpc:yield/1, Reduce, Acc0, Keys).
  +
  +-spec mapreduce(map_fun(T, R), reduce_fun(R), R, [T]) -> [R].
  +mapreduce(Map, Reduce, Acc0, L) ->
  +    F = fun (Elem, Acc) ->
  +                Reduce(Map(Elem), Acc)
  +        end,
  +    lists:foldl(F, Acc0, lists:reverse(L)).
  +
  +-spec segment([T], pos_integer()) -> [[T]].
  +segment(List, Segments) ->
  +    segment(List, length(List) div Segments, Segments).
  +
  +-spec segment([T], non_neg_integer(), pos_integer()) -> [[T]].
  +segment(List, _N, 1) ->
  +    [List];
  +segment(List, N, Segments) ->
  +    {Front, Back} = lists:split(N, List),
  +    [Front | segment(Back, N, Segments - 1)].
  
positive.code:     Opts  = [{fetch_path, [kf(root, Conf) ++ "/priv/dtd/"]},
               {encoding,   "latin1"}],
  
      Fun = fun() ->
                    {ok, Bin} = file:read_file(XmlFile),
                    {Xml, _}  = xmerl_scan:string(binary_to_list(Bin), Opts),
                    xmerl_lib:simplify_element(Xml)
            end,
  
      tmp_cd(filename:dirname(XmlFile), Fun).
  
  %% Quick and dirty templating functions (replaces #KEY# in html with
  %% {key, "Some text"}
  
negative.code:             ok = render(Type, AppName, Module, Content, Conf, Tpl),
  
              case lists:member({AppName, Module}, ignore()) of
                  true -> [];
                  false -> [ ["mod", AppName, Module, Sum1] |  Funs]
              end
      end.
  
  