anchor.diff:  -include_lib("proper/include/proper.hrl").
   
   to_string({ident, Ident, _}) ->
  -    Ident;
  -to_string({symbol, Ident, _}) ->
  -    ":" ++ Ident;
  +    atom_to_list(Ident);
   to_string({quote, Value, _}) ->
      "'" ++ to_string(Value);
   to_string({fun_ref, {Module, Fun, Arity}, _}) ->
  
positive.code: jxa_list(Size) ->
      {list, resize(Size, list(value(Size div 4))), 0}.
  
  jxa_quote(0) ->
      {list, [], 0};
  jxa_quote(Size) ->
  
negative.code:           list([ident_character()])},
           [S1 | erlang:binary_to_list(unicode:characters_to_binary(S2))]).
  
  ident_atom() ->
      ?LET(S, ident_string(),
           list_to_atom(S)).
  
  defvar_style_ident() ->
      ?LET(S, ident_string(),
           list_to_atom("*" ++ S ++ "*")).
  
  split_ident() ->
      ?LET({S1, S2}, {ident_string(), ident_string()},
           list_to_atom(S1 ++ "-" ++ S2)).
  
  normal_ident() ->
      ident_atom().
  
  symbol() ->
     ?LET(I, normal_ident(),
          {quote, {ident, I, 0}, 0}).
  
  ident() ->
      {ident, union([normal_ident(),
  