anchor.diff:                  case xref:add_application(XrefServer, A, [{warnings, false}]) of
                     {ok, _} = R -> R;
                     {error, _, {application_clash, _}} ->
  -                    [App, Prefix | _] = lists:reverse(filename:split(A)),
  -                    N = list_to_atom(string:join([Prefix, App], "_")),
  +                    N = generate_new_name(A),
                       xref:add_application(XrefServer, A, [{warnings, false},
                                                            {name, N}])
                   end
  
positive.code: scan(Path) ->
    scan(Path, []).
  
  -spec scan(Path::directory(), Options::[{atom(), term()}]) ->
                [{module(), iota_info()}].
  scan(Path, Options) ->
    XrefServer = iota_utils:get(xref_server, Options, iota_xref),
    AbsPath = filename:absname(Path),
  
negative.code:           {false, _}    -> []
          end,
    [{is_api, IsApi}, {api, Api}].
  
  
  generate_new_name(AppPath) ->
    [App, Prefix | _] = lists:reverse(filename:split(AppPath)),
    list_to_atom(string:join([Prefix, App], "_")).
  