anchor.diff:      gen_erl(Path, insert_hrl_forms(Spec, Forms)).
   
   gen_erl(Path, Forms) ->
  -    getr(debug) andalso write(Path ++ ".forms", Forms),
  +    getr(debug) andalso write_term(Path ++ ".forms", Forms),
       write(Path ++ ".erl",
             header() ++ erl_prettypr:format(erl_syntax:form_list(Forms))).
   
  
positive.code: get_value(Key, Plist) ->
      proplists:get_value(Key, Plist, []).
  
  write(Path, [C|_] = Spec)
    when is_integer(C) ->
      w(Path, Spec, "~s");
  write(Path, Spec) ->
      w(Path, Spec, "~p.").
  
  w(Path, Spec, Fmt) ->
      {ok, Fd} = file:open(Path, [write]),
      io:fwrite(Fd, Fmt ++ "~n", [Spec]),
      file:close(Fd).
  
  codegen(File, Spec, Outdir, Mode) ->
  
negative.code:     Mod.
  
  gen(spec, Spec, _Mod, Path) ->
      write_term(Path ++ ".spec", [?VERSION | Spec]);
  
  gen(hrl, Spec, Mod, Path) ->
      gen_hrl(Path ++ ".hrl", Mod, Spec);
  