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