[arch-general] Python 3 Rationale?
maxc at me.com
Wed Oct 20 14:05:01 EDT 2010
On Oct 20, 2010, at 01:10 PM, C Anthony Risinger <anthony at extof.me> wrote:
> On Wed, Oct 20, 2010 at 10:45 AM, maxc <maxc at me.com> wrote:
> > There is an excellent post by Guido here, Hilton:
> > http://mail.python.org/pipermail/python-3000/2008-February/011910.html
> > Guido seems to favor using /usr/bin/python3.0 or /usr/bin/python3 and
> > /usr/bin/python as symlinks to the respective versions of Python.
> > 'Perhaps we should only install "python3.0" and not "python".'
> > We're not here to discussion semantics ofc. :) There is a much broader
> > concern which I hope we can address through friendly discourse.
> I think you're agreeing with Arch's decision, but it's not clear to
> me, so disregard some of the following if that's the case :-)
> the link provided clearly demonstrates the symlink/ambiguity of the
> `python` name. I think he just means maybe they shouldn't
> create/include the symlink by default.
> so, my last attempt to reason with this circular discussion... :-)
> ultimately, py3k is here, and is the path forward, regardless of how
> long python2.x will be around (many years i'm certain, it works just
> fine [maybe some yummy pypy to come too]). They are both available
> simultaneously, and will be for a very long time. however, if you use
> the bare `python` name, expect to adapt/detect the version/etc at
> runtime, because you are leaving the environment up to the system.
> factor out the various compatibility bits, so they can be selectively
> imported based on the version, thus avoiding syntax errors, etc.
> the point is that it really, really, really... doesn't matter what
> `python` is symlinked to. developers need to have the competence to
> instruct the system appropriately, and construct the environment they
> need to function properly. if you rely on a particular behavior from
> a moving target, then your app is already broken
> C Anthony
Yes, I do support the decision. :)
My final concern has been the convention of how Python is linked.
I agree, devs can't rely on that. But is there anything to be gained by going against what the Python devs are suggesting? Couldn't we have python and python3 and still be bleeding edge? (Assuming that what I've suggested is still how Guido and others feel, that may have since changed.)
Lastly, your reply is refreshing! Thank you so much, I really appreciate being able to discuss things like this. :)
More information about the arch-general