<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote">On Sat, May 11, 2013 at 3:19 PM, Ron Adam <span dir="ltr"><<a href="mailto:ron3200@gmail.com" target="_blank">ron3200@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Greg, I meant to send my reply earlier to the list.<div class="im"><br>
<br>
<br>
On 05/11/2013 12:39 AM, Greg Ewing wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Also, doesn't this imply that ... is now an operator in some contexts,<br>
</blockquote>
 > but a literal in others?<br>
</blockquote>
<br></div>
Could it's use as a literal be depreciated?  I haven't seen it used in that except in examples.<div class="im"><br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
It would have different meanings in different contexts, yes.<br>
<br>
But I wouldn't think of it as an operator, more as a token<br>
indicating string continuation, in the same way that the<br>
backslash indicates line continuation.<br>
</blockquote>
<br></div>
Yep, it would be a token that the tokenizer would handle.  So it would be handled before anything else just as the line continuation '\' is.   After the file is tokenized, it is removed and won't interfere with anything else.<br>


<br>
It could be limited to strings, or expanded to include numbers and possibly other literals.<br>
<br>
    a = "a long text line "...<br>
        "that is continued "...<br>
        "on several lines."<br>
<br>
    pi =  3.1415926535...<br>
            8979323846...<br>
            2643383279<br>
<br>
You can't do this with a line continuation '\'.<br>
<br>
<br>
Another option would be to have dedented multi-line string tokens |""" and |'''.   Not too different than r""" or b""".<br>
<br>
    s = |"""Multi line string<br>
        |<br>
        |paragraph 1<br>
        |<br>
        |paragraph 2<br>
        |"""<br>
<br>
    a = |"""\<br>
        |a long text line \<br>
        |that is continued \<br>
        |on several lines.\<br>
        |"""<br>
<br>
The rule for this is, for strings that start with |""" or |''', each following line needs to be proceeded with whitespace + '|', until the closing quote is reached.  The tokenizer would just find and remove them as it comes across them.  Any '|' on a line after the first '|' would be unaffected, so they don't need to be escaped.<br>


<br></blockquote><div><br></div><div style>+1 to adding something like that.  i loathe code that uses textwrap.dedent on constants.  poor memory and runtime overhead.</div><div style><br></div><div style>I was just writing up a response to suggest adding auto-detended multi-line strings to take care of one of the major use cases.  I went with a naive d""" approach but I also like your | idea here.  though it might cause too many people to want to line up the opening | and the following |s (which isn't necessary at all and is actively harmful for code style if it forces tedious reindentation when refactoring code that alters the length of the lhs before the opening |""")</div>

<div style><br></div><div style>-gps</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
IT's a very explicit syntax. It's very obvious what is part of the string and what isn't.  Something like this would end the endless debate on dedents.  That alone might be worth it.   ;-)<br>
<br>
I know the | is also a binary 'or' operator, but it's use for that is in a different contex, so I don't think it would be a problem.<br>
<br>
Both of these options would be implemented in the tokenizer and are really just tools to formatting source code rather than actual additions or changes to the language.<br>
<br>
Cheers,<br>
   Ron<div class="HOEnZb"><div class="h5"><br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
______________________________<u></u>_________________<br>
Python-ideas mailing list<br>
<a href="mailto:Python-ideas@python.org" target="_blank">Python-ideas@python.org</a><br>
<a href="http://mail.python.org/mailman/listinfo/python-ideas" target="_blank">http://mail.python.org/<u></u>mailman/listinfo/python-ideas</a><br>
</div></div></blockquote></div><br></div></div>