4 ms·
Wow, I'm really surprised. Guido is usually incredibly nice, but he comes across as very condescending in that comment. I love Python, it's my favorite langua
by Fede_V 12y ago
Wow, I'm really surprised. Guido is usually incredibly nice, but he comes across as very condescending in that comment.
I love Python, it's my favorite language by far - but I love all those different tools (numba, pypy, hope, nuitka, cython etc) that make you sacrifice a small amount of dynamic magic in exchange for significant speed ups.
I don't have to use them - but when I need to write fast code, it's really nice to be able to do so in Python.
- nostrademons 12y agoAre the names on the comments verified? This seems very much out-of-character for Guido, he's generally been quite supportive of efforts to improve Python's speed (eg. Unladen Swallow, PyPy) or add static typing as a library. It occurs to me that with this blog interface, I could post as "Ken Thompson" and nobody would be the wiser.
- fmoralesc 12y agoThat is a very good point, and it would be a shame if Nuitka's developer (and people in this thread) would have gotten a wrong impression on GvR from something like that.
- dalke 12y agoI can verify that van Rossum's comments are by him. I saw him walk out of the aforementioned Nuitka presentation at EuroPython a few years back, and clearly out of annoyance with it. See also https://groups.google.com/forum/#!topic/python-static-type-checking/UqJdOg4i2j0 https://groups.google.com/forum/#!topic/python-static-type-c... if you wish additional evidence. That Google Groups thread shows that he's irritated because he thinks that the Nuitka author doesn't understand the issues: "... he is incredibly naive about what kind of optimizations he'd like to apply. (He basically doesn't seem aware of the difficulties arising with static analysis of Python.)" While the Unladen Swallow and PyPy developers do understand the issues. I think it's in character. I gave a talk at another EuroPython on measuring performance. Partway through he asked "isn't this just a repeat of the timeit module"? My response was "yes, I'm explaining why it works the way it does." I think that was sufficient to mollify his irritation.
- syllogism 12y agoStefan Behnel (one of the Cython leads) posted a more detailed critique of the project after the EuroPython talk too: http://blog.behnel.de/posts/indexp241.html http://blog.behnel.de/posts/indexp241.html Nuitka's author's reply here: https://webcache.googleusercontent.com/search?q=cache:fB1tgJ8a_bEJ:nuitka.net/posts/static-compilation-that-is-the-point.html+&cd=2&hl=en&ct=clnk&gl=au https://webcache.googleusercontent.com/search?q=cache:fB1tgJ... I sympathise with the developer because I think the tone of the criticism he's been getting is very far short of nice. ...But...On a purely technical level...I see a lot of problems with his response. I think there's real merit in this project on the distribution side of things --- not the optimisation side. I hope he pivots the project in that direction.
- dalke 12y agoThat post by Behnel is a good find. FWIW, I was at the talk, and my memory was that I also agree that the speaker didn't know what he was talking about regarding optimizations and took incredibly too long to talk about it. There are previous projects, like Michael Salib's "Starkiller: a static type inferencer and compiler for Python" ( http://dspace.mit.edu/handle/1721.1/16688 http://dspace.mit.edu/handle/1721.1/16688 ), and John Aycock's "Converting Python Virtual Machine Code to C" (http://legacy.python.org/workshops/1998-11/proceedings/papers/aycock-211/aycock211.html http://legacy.python.org/workshops/1998-11/proceedings/paper...) which explored that optimization space, and no doubt others. So when the talk is titled "for the first time, there is a consequently executed approach to statically translate the full language extent of Python, with all its special cases, without introducing a new or reduced version of Python", a listener would expect that it be more advanced than previous work. To be fair, neither Aycok's nor Salib's work was complete, but they did enough groundwork to show that static analysis of the type that Nuitka was exploring would not be able to achieve its stated goals. But all of this pointing to a discussion from 2012 is pretty pointless, as people do use it for distribution - something which wasn't touched on during the talk, as I recall - while the author did talk about aiming for type inference at compile time, when all evidence is that the speaker had little idea of the actual issues, as previous reported in multiple previous attempts. I honestly don't know what to do when someone presents a talk as a pure hobbyist, puttering around on a project with little interest in what others have done, and who doesn't understand the audience enough to gauge which details are of interest and which aren't. There's a culture mismatch, certainly, but that's what makes it harder to assign fault. Should Hayen have realized that the project wasn't at the right level for EuroPython, or that the future project goals were overstated? Did EuroPython get more advanced over time? Did van Rossum not allow that weekend hobbyists don't have the experience to judge things? Should van Rossum never say anything negative in public about a project (and if so, at what level of fame does one need to bear that in mind)? I certainly have no answers to those.