Live data from Hacker News

The Origins of Python

inference-review.com

71–73 of 73 posts

Re: The Origins of Python

#71
post #65
post #60

Earlier quoted context omitted.

A decade or so ago there was an idea that "patterns" (Gang of Four) needed to exist because the underlying language (Java, etc) was limited in it's power or expressiveness. Go is opinionated, and much of that has hurt the language -- with the go loop semantics coming to mind. Instead of realizing their mistake early and fixing it back in 2009ish, they doubled down on it. Here in 2022, they finally opened it back up f…

Gang of Four book predates Java and has zero lines of code about it, since the language did not exist. All the examples are about Smalltalk and C++.

Correct! This book has nothing to do w Java.

Re: The Origins of Python

#72
post #65
post #60

Earlier quoted context omitted.

A decade or so ago there was an idea that "patterns" (Gang of Four) needed to exist because the underlying language (Java, etc) was limited in it's power or expressiveness. Go is opinionated, and much of that has hurt the language -- with the go loop semantics coming to mind. Instead of realizing their mistake early and fixing it back in 2009ish, they doubled down on it. Here in 2022, they finally opened it back up f…

Gang of Four book predates Java and has zero lines of code about it, since the language did not exist. All the examples are about Smalltalk and C++.

I was told by the publisher in 1984 that The Gang of Four was coming out of with a Java version of their book. So I contacted one of the authors, (who remain nameless) who almost ripped my head off when I told him what the publisher told me!

Re: The Origins of Python

#73

I feel Python changes and have changed too much to be a good introduction language anymore. It is not possible for a from zero beginner to read ordinary Python code with decorators, generators or what not and understand it. Way too many concepts. It is being choose by intertia at this point and have been ruined for the original target user by former target users who are now professional programmers using it at work.

A zero beginner doesn't need to read ordinary Python code with decorators etc. The beauty of Python as a teaching language is that none of those things are necessary to explain or handwave to write simple apps that just input and print strings and numbers - which is just enough to teach basic concepts like conditionals, loops, functions etc. For bonus points, it even has turtle graphics out of the box, which is an excellent visual explainer for more advanced concepts like recursion.

And when they've learned the basics on toy stuff and want to start writing real-world apps, that is when you explain decorators, generators etc. And yet they don't have to switch to a whole new language - all the basics they've learned still work exactly as they did before.

Post reply on HN