<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hello,<br>
    <br>
    I've just read your PEP 585 draft and have some questions.<br>
    When you say<br>
    "<br>
    <p>Like the merge operator and list concatenation, the difference
      operator requires both operands to be dicts, while the augmented
      version allows any iterable of keys.</p>
    <blockquote>
      <pre class="doctest-block">>>> d - {'spam', 'parrot'}
Traceback (most recent call last):
  ...
TypeError: cannot take the difference of dict and set
</pre>
      <pre class="doctest-block">>>> d -= {'spam', 'parrot'}
>>> print(d)
{'eggs': 2, 'cheese': 'cheddar'}
</pre>
      <pre class="doctest-block">>>> d -= [('spam', 999)]
>>> print(d)
{'spam': 999, 'eggs': 2, 'cheese': 'cheddar', 'aardvark': 'Ethel'}
 
</pre>
    </blockquote>
    "<br>
    <br>
    The option d -= {'spam', 'parrot'} where parrot does not exist in
    the d dict, will raise an exception (eg. KeyNotFound) or be silent?<br>
    <br>
    The option d -= [('spam', 999)] should remove the pair from the
    dict, correct? But the print that follows still shows it there. It's
    a mistake or am I missing something?<br>
    <br>
    <br>
    Best regards,<br>
    <br>
    <pre class="moz-signature" cols="72">João Matos
</pre>
    <br>
  </body>
</html>