yep we&#39;ve already been through that problem in the past when list comprehensions, generators and with were added to name a few.&nbsp; since python 3 code is highly unlikely to even parse with a 2.x interpreter much of the time thats a reason to consider a .py3 extension if this precedent of not caring is to be broken.<br>
<br>-0 on using .py3 instead of .py for python 3.&nbsp; i think its slightly silly but i won&#39;t object.<br><br>+1 on devising a way (to appear starting in 2.6 and 3.0) of marking the minimum language version required by a file near the top so that the parser can bail with a useful error message instead of one confusing to the lay person.&nbsp; similar to a from future import type of thing perhaps?&nbsp; or should python parse a #! line and magically notice a required major version number in the python binary name (evil but it would work and magically annotate a bunch of existing code as 2 vs 3)?<br>
<br>also yes python 3 should build and install as &#39;python3&#39; as the short form of its name though realistically anyone sane will write their code with #! lines specifying the actual version in the executable name and have shell aliases setup if they want an even shorter name.<br>
<br><div><span class="gmail_quote">On 2/2/08, <b class="gmail_sendername"><a href="mailto:skip@pobox.com">skip@pobox.com</a></b> &lt;<a href="mailto:skip@pobox.com">skip@pobox.com</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>&nbsp;&nbsp;&nbsp;&nbsp;Leif&gt; There is already an idiom with other packages (pygtk etc.) that<br>&nbsp;&nbsp;&nbsp;&nbsp;Leif&gt; suggests syntax like<br><br>&nbsp;&nbsp;&nbsp;&nbsp;Leif&gt; try:<br>&nbsp;&nbsp;&nbsp;&nbsp;Leif&gt;&nbsp;&nbsp;&nbsp;&nbsp; python.require(&#39;3.1&#39;)<br>&nbsp;&nbsp;&nbsp;&nbsp;Leif&gt; except:<br>&nbsp;&nbsp;&nbsp;&nbsp;Leif&gt;&nbsp;&nbsp;&nbsp;&nbsp; print(&#39;Some warning about version incompatibility&#39;)<br>
&nbsp;&nbsp;&nbsp;&nbsp;Leif&gt;&nbsp;&nbsp;&nbsp;&nbsp; exit(1)<br><br>It won&#39;t work in this case.&nbsp;&nbsp;Compilation of the module might well fail<br>because of Python2/Python3 syntax differences.<br><br>Skip<br>_______________________________________________<br>
Python-3000 mailing list<br><a href="mailto:Python-3000@python.org">Python-3000@python.org</a><br><a href="http://mail.python.org/mailman/listinfo/python-3000">http://mail.python.org/mailman/listinfo/python-3000</a><br>Unsubscribe: <a href="http://mail.python.org/mailman/options/python-3000/greg%40krypto.org">http://mail.python.org/mailman/options/python-3000/greg%40krypto.org</a><br>
</blockquote></div><br>