anchor.diff:              Matches ->
                   Accumulator ++ Matches
           end
  -    end, [], FileList).+    end, [], FileList).
  +
  +%% Checks whether a given type is a valid one, and if so, returns ok.
  +%% Otherwise throws an error.
  +is_valid_type(String) when is_list(String) ->
  +    is_valid_type(list_to_atom(String));
  +is_valid_type(String) when is_binary(String) ->
  +    is_valid_type(binary_to_list(String));
  +
  +is_valid_type(js) ->
  +    ok;
  +is_valid_type(js_ast) ->
  +    ok;
  +is_valid_type(core) ->
  +    ok;
  +is_valid_type(core_ast) ->
  +    ok;
  +is_valid_type(all) ->
  +    ok;
  +is_valid_type(Type) ->
  +    throw({invalid_type, Type}).
positive.code:     transpile(Files, Outdir, core_ast),
      transpile(Files, Outdir, js_ast),
      transpile(Files, Outdir, js);
  branch(_Help = false, _Vsn = false, Outdir, Type, Files) when (length(Files) > 0) and ( (Type==js) or (Type==js_ast) or (Type==core_ast) or (Type==core) )->
      transpile(Files, Outdir, Type);
  branch(_Help = true, _Vsn = false, _OutDir, _Type, _Files = []) ->
      throw(help);
  
negative.code: 
  %% Write results of codegen.js to a file
  write_js(Result, Filename, Outdir) ->
      write_file(Result, Filename, "js", Outdir).
  
  write_other(Data, File, core_ast, Outdir) ->
      Filename = filename:basename(filename:rootname(File)),
  