anchor.diff:          Errors1 -> throw(Errors1)
       end.
   
  +mod_to_ast(String, Path) ->
  +    string_to_file(String, Path),
  +    Ast = build_module(Path),
  +
  +    case file:delete(Path) of
  +        ok -> Ast;
  +        Error -> throw(Error)
  +    end.
  +
  +erlmod_to_ast(String, Path) ->
  +    string_to_file(String, Path),
  +    [_|T] = from_erlang(Path),
  +
  +    Ast = lists:reverse(tl(lists:reverse(T))),
  +
  +    case file:delete(Path) of
  +        ok -> Ast;
  +        Error -> throw(Error)
  +    end.
  +
   % to erlang functions
   
   get_erlang(file, String) ->
  
positive.code:     end,
  
      binary_to_list(Content).
  
  get_module_name(String) ->
      File = filename:basename(String),
  
negative.code: get_lex(file, Path) ->
      Program = file_to_string(Path),
  
      IsFn  = lists:suffix(".fn",  Path),
      IsIfn = lists:suffix(".ifn", Path),
  
      if
          IsFn  -> get_lex(string, Program);
          IsIfn -> get_lex(istring, Program);
          true  -> exit(io_lib:format("Invalid file extension in '~s' (.fn or .ifn expected)~n", [Path]))
      end.
  
  print_lex(From, String) ->
  