<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    On 07.07.2018 2:31, Guido van Rossum wrote:<br>
    <blockquote type="cite"
cite="mid:CAP7+vJJ79WnmMzpwD8zzM1qmkdiUue0nUviqTWBW8Z8v28yg5A@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=utf-8">
      <div dir="ltr">
        <div class="gmail_quote">
          <div dir="ltr">On Fri, Jul 6, 2018 at 4:19 PM Terry Reedy <<a
              href="mailto:tjreedy@udel.edu" moz-do-not-send="true">tjreedy@udel.edu</a>>
            wrote:<br>
          </div>
          <blockquote class="gmail_quote" style="margin:0px 0px 0px
            0.8ex;border-left:1px solid
            rgb(204,204,204);padding-left:1ex">
            Since Guido, the first respondent, did not immediately shoot
            the idea <br>
            down, I intend to flesh it out and make it more concrete.<br>
          </blockquote>
          <div><br>
          </div>
          <div>Maybe I should have shot it down. The term is entrenched
            in multiple languages by now (e.g. <a
              href="https://en.wikipedia.org/wiki/List_comprehension"
              moz-do-not-send="true">https://en.wikipedia.org/wiki/List_comprehension</a>).
            Regarding "list builder" one could argue that it would just
            add more confusion, since there's already an unrelated
            Builder Pattern (<a
              href="https://en.wikipedia.org/wiki/Builder_pattern"
              moz-do-not-send="true">https://en.wikipedia.org/wiki/Builder_pattern</a>)
            commonly used in Java. (Though I worry about the presence of
            a Python example in that Wikipedia page. :-)</div>
        </div>
      </div>
    </blockquote>
    <br>
    According to
    <a class="moz-txt-link-freetext" href="https://en.wikipedia.org/wiki/List_comprehension#History">https://en.wikipedia.org/wiki/List_comprehension#History</a>, the term's
    known from at least 1977 and comes from such influential languages
    as NPL, Miranda and Haskell. So it's not you to blame for it :-)<br>
    <br>
    <blockquote type="cite"
cite="mid:CAP7+vJJ79WnmMzpwD8zzM1qmkdiUue0nUviqTWBW8Z8v28yg5A@mail.gmail.com">
      <div dir="ltr">
        <div class="gmail_quote">
          <div><br>
          </div>
          <div>Also, "generator builder" is not much more expressive
            than "generator expression",</div>
        </div>
      </div>
    </blockquote>
    <br>
    "generator builder" is simply incorrect. The GE doesn't "build"
    generators, it's a generator itself. It's a generator _and_ an
    expression. What could be a more obvious name?<br>
    This suggestion looks like coming from someone who hasn't quite
    grasped generators yet.<br>
    <br>
    <blockquote type="cite"
cite="mid:CAP7+vJJ79WnmMzpwD8zzM1qmkdiUue0nUviqTWBW8Z8v28yg5A@mail.gmail.com">
      <div dir="ltr">
        <div class="gmail_quote">
          <div>and the key observation that led to this idea was that
            it's such a mouthful to say "comprehensions and generator
            expressions".</div>
        </div>
      </div>
    </blockquote>
    <br>
    Since "X comprehensions" are advertised as and intended to be
    functionally equivalent to `X(generator expression)', I use just
    "generator expressions" to refer to all.<br>
    That's accurate because the common part with the distinctive syntax
    -- which is the thing referred to when addressing them all --
    effectively _is_ a generator expression (the syntax differences in
    the leading term are insignificant), what wraps it is of no concern.<br>
    <br>
    So, no new terms are necessary, but someone who cares may add a note
    to the docs to this effect.<br>
    <br>
    <blockquote type="cite"
cite="mid:CAP7+vJJ79WnmMzpwD8zzM1qmkdiUue0nUviqTWBW8Z8v28yg5A@mail.gmail.com">
      <div dir="ltr">
        <div class="gmail_quote">
          <div>Maybe it's not too late to start calling the latter
            "generator comprehensions" so that maybe by the year 2025 we
            can say "comprehensions" and everyone will understand we
            mean all four types?</div>
          <div><br>
          </div>
          <div>FWIW more people should start using "list display" etc.
            for things like [a, b, c].<br>
          </div>
          <div> </div>
        </div>
        -- <br>
        <div dir="ltr" class="gmail_signature">--Guido van Rossum (<a
            href="http://python.org/%7Eguido" moz-do-not-send="true">python.org/~guido</a>)</div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
Python-Dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Python-Dev@python.org">Python-Dev@python.org</a>
<a class="moz-txt-link-freetext" href="https://mail.python.org/mailman/listinfo/python-dev">https://mail.python.org/mailman/listinfo/python-dev</a>
Unsubscribe: <a class="moz-txt-link-freetext" href="https://mail.python.org/mailman/options/python-dev/vano%40mail.mipt.ru">https://mail.python.org/mailman/options/python-dev/vano%40mail.mipt.ru</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>