Hacker Timesnew | past | comments | ask | show | jobs | submitlogin
The History of Python: New-style Classes (python-history.blogspot.com)
29 points by gthank on June 21, 2010 | hide | past | favorite | 15 comments


The Python community’s (and Guido’s) approach to evolving language features and backwards compatibility is really a model for software projects. The focus when comparing programming languages or other types of software is often on feature specifics, but those are driven by process and community. It’s the process of smart high-level mailing list debate, followed by PEPs, more debate, and executive decisions by a careful (even skeptical) but dedicated and competent BDFL that makes Python what it is.

There’s a brilliant book about teams, projects, and workflows hiding somewhere in a detailed historical review and comparison of popular programming languages.


I do not like Guido's language design instincts, but his respect for his users' existing code is admirable, and has proved to work very well for Python.


"I do not like Guido's language design instincts"

I am curious. What don't you like?


GvR showed complete misunderstanding of recursion until someone mailed him a copy of SICP.

http://twitter.com/gvanrossum/status/1838308947

And the bibliography:

http://www.reddit.com/r/programming/comments/8lgp0/guido_van...


Oh, please. It's not like anyone's forcing you to be an trolling asshole, so why do you gladly volunteer? You don't know Guido, and you don't have the slightest idea what he knows and not.


By his own admission:

"A lot of people remarked that in my post on Tail Recursion Elimination I confused tail self-recursion with other tail calls, which proper Tail Call Optimization (TCO) also eliminates. I now feel more educated: tail calls are not just about loops"

http://neopythonic.blogspot.com/2009/04/final-words-on-tail-...

What exactly did your reply contribute, aside from calling me a "trolling asshole"?


So, Guido had a misconception about something, was educated about it, is now smarter than before - and freely admitting it.

Seems like quite a normal thing to me (it's called "learning"), so what's the big deal here?

Is Guido not allowed to make mistakes?


The "Benevolent Dictator" of a major language is still learning some basics of language design 18 years into starting that language. I'd more more okay with it if Guido didn't have such a strong grasp on the language's future.


I don't agree with all of his decisions either but find it a bit ridiculous to call him out on "not knowing the basics", given he created one of the most popular scripting languages in existence.

As I understood the discussion there is no definite "right" or "wrong" on the issue anyways - it's merely one of the many tradeoffs. Quite possibly one where he wasn't fully aware of all details and implications. But heck, if you need to argue then how about arguing for or against a particular way to do TCO in python instead of going ad hominem against the guy who built the entire playground that you're building your little sandcastles in?


I only said he didn't know "some of the basics". Also, this is neither a personal attack on irrelevant facets of him, nor is it just about TCO.

Python has done very well in its history and I personally like it. However, Guido made his final decision literally days after learning the distinction. This means before that any decisions he made in this area were based on shaky information. Furthermore, he was initially informed by comments on his blog, not his own research. I'm worried what this means for future decisions in Python if Guido doesn't research something on his own before making decisions on it. I understand that he's busy, but working of Python is part of that and surely research should be included :).


Er, that's not a complete misunderstanding of recursion. Recursion is recursion regardless of implementation-- he misunderstood one way of implementing recursion.


You claimed that he had "complete misunderstanding of recursion until someone mailed him a copy of SICP". To prove that, you refer to an implementation technique?

Here's the thing: Your first post was unfounded and uninformed personal attack on someone you don't know. That's reddit style trolling, and says a lot more about what kind of person you are than it says about the person you're attacking. Hacker news would be better place without that.


Tough to say. You will not like this answer, as it is not precise. I think it's that when I hack python (and I did so professionally for a few years), I feel like someone is trying to tell me what to do. I don't like being told what to do.


Makes sense. "There should be one — and preferably only one — obvious way to do it."


Notice the words "should", "preferably" and "obvious". Sometimes some people miss these for some reason and they read "There is only one way to do it", which is a shame because they either like it as an idea(which means they are mentally limited), or hate python for it(which means they are ignorant of the languages flexibility.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: