anchor.diff:  	 true -> io_lib:write_string(atom_to_list(X), $'); % stupid emacs '
   	 false -> flat_format("~tw", [X])
          end || X <- set_to_list(Set)],
  -  string:join(L, " | ").
  +  flat_join(L, " | ").
   
   set_min([H|_]) -> H.
   
  
positive.code: t_form_to_string({paren_type, _L, [Type]}) ->
    flat_format("(~ts)", [t_form_to_string(Type)]);
  t_form_to_string({remote_type, _L, [{atom, _, Mod}, {atom, _, Name}, Args]}) ->
    ArgString = "(" ++ string:join(t_form_to_string_list(Args), ",") ++ ")",
    flat_format("~w:~tw", [Mod, Name]) ++ ArgString;
  t_form_to_string({type, _L, arity, []}) -> "arity()";
  t_form_to_string({type, _L, binary, []}) -> "binary()";
  
negative.code: 
  record_to_string(Tag, [_|Fields], FieldNames, RecDict) ->
    FieldStrings = record_fields_to_string(Fields, FieldNames, RecDict, []),
    "#" ++ atom_to_string(Tag) ++ "{" ++ flat_join(FieldStrings, ",") ++ "}".
  
  record_fields_to_string([F|Fs], [{FName, _Abstr, DefType}|FDefs],
                          RecDict, Acc) ->
  