1. 30
  1.  

  2. 5

    It’s an interesting idea. It could even help with porting to 3. But I think doing this in the CPython codebase is probably a dead end. PyPy has a good chance of becoming the preferred runtime once their Python 3 and C API compatibility projects are finished. Its speed increases are enormous. It’s reminiscent of V8’s release and its impact on JavaScript. The features in this fork may be valuable to Python 2 users, but it’ll be hard to accept an 80% reduction in performance.

    1. 1

      actually the impact of jit in python is less important than in javascript as in javascript there is zero C runtime.

      1. 2

        zero C runtime

        Then what is your web browser written in?

        1. 2

          the web browser has no runtime which allow general purpose programming which is the main purpose of useful javascript programming. It has specialized runtime for html/dom model display, but the hard part of is to fight against html/dom model. At the opposite, cpython has a lot of C runtime, such has scipy.

          For python having heavy C runtime is a bless and a curse, a bless because what exist work blasting fast and a curse because pretty much the only way to do something low level is to use a really old language.

          1. 2

            Fair point, but I’m really not enamored with the “Python is fast because SciPy is fast” argument. Yes, your Python can be fast if you spend most of your time running not-Python code, but that only works so far as your code happens to be representable as a bunch of matrix transforms. By that metric, any language with an FFI is “fast”.

      2. [Comment from banned user removed]

        1. 11

          PyPy was thrown together by a bunch of hacks that thought it would be cool to invent a new Python-like language to write that huge code base in

          I’d appreciate it if you didn’t use ad hominem attacks on this site.

          1. [Comment from banned user removed]

            1. 5

              You’re being downvoted because of your tone. I think that the crowd here would be open to seeing things your way if you took the time to explain your perspective politely and constructively.

          2. 1

            Did they do something to upset you?

            1. 0

              PyPy

        2. 2

          Do you realize that your argument “Now, unlike a few "Python 3 skeptics”, I actually do believe that in a vacuum Python 3 would be a superior language to Python 2, including Python 2.8.“ can be more correctly applied in "in a vacuum Python 2.8 would be a superior language to Python 2.7 and Python 3 but it raises only doubtful benefits comparing to sticking to one each version.”

          A far better and profitable option would be to commit to maintain python 2.7 after PSF deadline because: - python 2.7 is a good enough language - the suffering to have 2 python standard is enough without creating a third one - one of the main reason why python 2.7 is not maintained is because of lack of willingness of benevolent core developers indefinitely in their free time.

          1. 2

            Yeah really cool! but you do need a new name. Here are my suggestions:

            Python 2or3

            Python 2and3

            Python over9000!

            1. 2

              Take a cue from the Zope community and call it “Snek Five”?

            2. 2

              On the surface, this seems like a worthwhile gift to the Python community. Without seeming too much like a debbie downer, I do wonder how much of an impact this is really going to have on the ecosystem. I’m not a participant of that ecosystem, but the divide between the Python 2 camp and the Python 3 camp is certainly no secret here in our tiny world. In theory that divide should have closed by now, but it’s been many years now and – judging by posts like these – it obviously still exists.

              1. 13

                To be quite honest, this feels a bit too late. Would have loved to see this a while ago.

                Python 3.0 was awful, in that it introduced a lot of breaking changes that had almost no benefit! The big one being “no u prefix support” on strings, making it harder to have a 2+3 codebase for no discernable benefit.

                But Guido is now at Dropbox doing Py3 migration. A lot of updates have happened. And it’s easier than ever to move over, because libraries are now able to support 2 and 3.

                The kicker: if your code doesn’t survive a 2 to 3 migration well, it’s likely your Python 2 code is actually wrong! Many changes are in fact inconsistency fixes that help to guarantee that your code will work 100% of the time, and not just 80% of the time.

                The “tricky” Python 2 to 3 changes usually end up with removing swathes of workarounds because Py2’s mechanisms are no good.

                Not to mention that if the argument for 2.7 is stability, why would you go for this branch? If there are any production bugs, it’ll probably be harder to get any real support.

                That said, if there’s Python 2.9 that just fixes strings, and Python 2.10 that just changed igdrator behavior, then this would offer a nice upgrade path for people (that we should have had in the first place)

              2. 2

                Brilliant! I’ll package this for Gentoo as soon as he renames it.

                Now we shall see if Python3 can compete with a Python2 that’s no longer sabotaged by the core devs.

                1. 5

                  Could you explain what you mean when you say that Python 2 has been sabotaged by the core developers?

                  1. [Comment from banned user removed]

                    1. 9

                      but was more than happy to block a door when people were fleeing in droves from a “women in tech” talk at a Europython conference (fortunately, there was another door available)

                      uhhhhhh… what? cough

                      Seriously?

                      1. 4

                        Seriously?

                        Do you mean: This doesn’t count as discourse on Lobsters? That’s how I’m reading your reply.

                        1. 7

                          I think he means it more as “That sounds ridiculous, can you provide a link or explain better?”

                          1. 3

                            oh no, sorry, that’s the incorrect read; I was expressing surprise because that sounds… well, bad. I would call out anything I felt doesn’t count as discourse on Lobsters, but this isn’t it. I was just honestly surprised at what stefantalpalaru had mentioned wrt the door blocking, that’s all.

                          2. 1

                            Yeah, seriously. If I remember correctly, it was before this talk, on July 4th 2012: https://www.youtube.com/watch?v=l2PnVKQJg0I

                            Main conference room, right-hand side door when facing the stage. There was no need for physical violence. He just crossed arms, stood in front of the door in his silly “Python is for girls” T-shirt and stared at people (who, of course, smiled and turned towards the other door).

                            It seems he went further at PyCon 2014 when he decided to only take questions from women. Sexism will continue until the morale improves ;-)

                            1. 11

                              Your way to think about lack of women in tech problems is close to totally ridiculous

                              How you can imagine that blocking a door could be anything more than symbolic when there is two doors ?

                              The morale will never improve without conscious effort to improve it and being satisfied with status quo will not change anything.

                              As much as I understand women in tech feel all but welcome and it’s hard to understand that letting live an hostile climate which de facto exclude half of the human pool will not lower the global success of the community for example by doing better technical results.

                              1. [Comment from banned user removed]

                                1. 4

                                  you must confuse between having an hostile climate towards men and not allowing men harass women as they usually do in everyday life. Are you really unable to understand that expressing sexuality (by a man toward a woman) in very crude terms (orgasm) are harassment toward woman and all but normal way to behave.

                                  good point for my grammar being bad. As French, I understand it is not perfect, but can you (or someone else) point me what was incorrect and propose ?

                          3. 10

                            the core developers defer to a moron who’s unable to grasp some basic concepts from functional programming, but was more than happy to block a door when people were fleeing in droves from a “women in tech” talk at a Europython conference (fortunately, there was another door available)

                            I want to reiterate that this point is disrespectful and poorly reasoned. This is not how I expect my fellow Lobsters to behave. If you want to act this way, please go somewhere else.

                            The rest of your points are valid criticism, though I prefer precise arguments instead of rants.

                            1. 6

                              … the backwards incompatibility failures of … Ruby 1.9

                              I acknowledge that this feels like a beside-the-point nit-pick, but:
                              Python 3.0 was released before Ruby 1.9.1, the actual “stable” release of Ruby 1.9 (although that versioning choice was definitely a questionable one). Also, I recall being surprised how quick the adoption for Ruby 1.9.1 came amongst users, so much so I would consider it an example of a successful embrace of a new, incompatible version by its community.

                              That’s not to say it didn’t feel like an eternity when a gem you used was still 1.8 only, or something new was released and your 1.8 project couldn’t use it, but I remember reflecting some time in 2012-ish that Python 3’s woes made the 2009-to-2011 stretch that was Ruby 1.9’s adoption feel like nothing by comparison.

                        2. 2

                          Standards:
                          “I hate Python 2.7 and 3, let’s make another one”

                          Soon:
                          “I hate Python 2.7, 3 and 2.8, let’s make another one”

                          1. 1

                            Not applicable, since all 2.7 code runs unmodified in this “2.8” fork.

                            1. 2

                              But unofficial 2.8 code doesn’t run in the official 2.7 interpreter, does it?

                              1. 1

                                There’s 2.7 code that doesn’t run in 2.6. Did you complain about that, at the time?

                                1. 2

                                  No, I did not.

                              2. 1

                                I know nothing about python, I’m just referencing the xkcd for standards. I’m just saying that if this gets popular then there will then be 3 popular ways to write python code, which IMHO and uninformed opinion means the official python developers should have foreseen that an unofficial fork might become popular after 3 didn’t take off as they hoped, and either fixed python 3 or killed it and updated 2.7 to avoid exactly this situation.

                                1. 2

                                  I know nothing about python, I’m just referencing the xkcd for standards.

                                  That’s your problem right there. Programming language implementation versions are not comparable with standards.

                                  1. 1

                                    I know about python and xkcd plenty apply here, you are just creating a new way to run a new code different of existent (either python 2.7 or python 3) which doubtful ROI.