anchor.diff:      print(Term, Max, []).
   
   %% @doc Returns {List, Length}
  --spec print(term(), pos_integer(), #print_options{}) -> {iolist(), pos_integer()}.
  +-spec print(term(), pos_integer(), options() | #print_options{}) -> {iolist(), pos_integer()}.
   print(Term, Max, Options) when is_list(Options) ->
       %% need to convert the proplist to a record
       print(Term, Max, prepare_options(Options, #print_options{}));
  
positive.code: atom_needs_quoting(_) ->
      true.
  
  prepare_options([], Options) ->
      Options;
  prepare_options([{depth, Depth}|T], Options) when is_integer(Depth) ->
  
negative.code: -include_lib("eunit/include/eunit.hrl").
  -endif.
  
  -type option() :: {'depth', integer()}
  		| {'lists_as_strings', boolean()}
  		| {'force_strings', boolean()}.
  -type options() :: [option()].
  
  -record(print_options, {
          %% negative depth means no depth limiting
          depth = -1 :: integer(),
  