anchor.diff:  %% Get the argument lists for a function in a module.
   %% Return: [Arglist]
   %% Arglist = [string()]
  -get_arglists(ModName, FunName) when is_list(ModName), is_list(FunName) ->
  +get_arglists(ModName, FunName) when list(ModName), list(FunName) ->
       arglists(to_atom(ModName), FunName).
   
   arglists(Mod, Fun) ->
  
positive.code: 
  fmt(X, A) -> to_bin(io_lib:format(X, A)).
  
  pad(X, A) when is_atom(A) ->
      pad(X, to_list(A));
  pad(X, S) when length(S) < X ->
      S ++ lists:duplicate(X - length(S), $\s);
  pad(_X, S) ->
      S.
  
  
negative.code: %% 'unknown' useless, type description is better, variable name is best.
  best_arg(unknown, A2)          -> A2;
  best_arg(A1, unknown)          -> A1;
  best_arg(A1, A2) when atom(A1),atom(A2) ->
      %% ... and the longer the variable name the better
      case length(to_list(A2)) > length(to_list(A1)) of
  	true -> A2;
  	false -> A1
      end;
  best_arg(A1, _A2) when atom(A1) -> A1;
  best_arg(_A1, A2)               -> A2.
  
  %% transpose([[1,2],[3,4],[5,6]]) -> [[1,3,5],[2,4,6]]
  