Why Python is like BASIC (and why this is a good thing)
Elton M. Labajo
elton at mybizlinks.net
Fri Feb 15 21:13:19 EST 2002
More information about the Python-list mailing list
Fri Feb 15 21:13:19 EST 2002
- Previous message (by thread): Why Python is like BASIC (and why this is a good thing)
- Next message (by thread): Why Python is like BASIC (and why this is a good thing)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
I like the idea of lite and full version :) > Reading the first few chapters of _How to Think Like a Computer > Scientist_ (http://www.ibiblio.org/obp/thinkCSpy/ for those who haven't > heard of this book), I was struck by how Python resembles BASIC in some > ways that make it a very good language for teaching: > > * Interpreted, so there's immediate feedback. Students can just type > 'python' at the command prompt and start coding, receiving *immediate* > feedback on the effects of what they type. > > * Non-scary assignment and output statements. In fact, Python and > BASIC's output statments look identical. "Print" is a natural choice > for ease of understanding. Using sys.stdout.write can come later, once > students begin to realize that they don't always *want* a newline or > space appended to their output. > > * No need to declare variables. Use them and they are immediately > created for you, ex nihilo. > > All three of these things make for a very low barrier-to-entry for > people who've never done any programming before. I'm sure there are > other similarities as well, that maybe someone else will point out. Of > course, Python goes beyond BASIC in many ways: > > * NO LINE NUMBERS! Enough said. > > * Rich control-flow statements. Of course, this is available in more > modern versions of BASIC, but back when I was first learning to > program (at age six, using BASIC), all I had was conditional GOTO. You > know, IF condition GOTO line-number. Or, for the advanced students, IF > condition GOSUB line-number (I never did understand the necessity for > that kind of statement until well after I'd stopped using BASIC > entirely and moved to more "modern" languages like... Pascal). > > * Batteries included. This is the big one, which makes Python more than > just a toy language suitable for learning. The richness of the > standard library makes Python incredibly useful, and I for one would > like to see it continue to grow. I understand the concern that people > developing Python-based programs for distribution would like their > users to be able to run a 100k script without downloading a 10M > distribution, but I don't want to see that cause a reduction in the > standard library. Instead, we could make make two Python > distributions, a "full" install containing everything and a "lite" > install containing only the interpreter and maybe -- *maybe* -- a > couple of essential modules like os and sys. Then people developing > Python programs like, say, a pygame-based game, could distribute a > single package containing the "Python lite" distribution, their own > code, and any other modules their code depended on -- all in one > easy-for-the-end-used-to-install package. > > Anyhow, I hope this helps develop some ideas. > > -- > Robin Munn > rmunn at pobox.com > -- > http://mail.python.org/mailman/listinfo/python-list
- Previous message (by thread): Why Python is like BASIC (and why this is a good thing)
- Next message (by thread): Why Python is like BASIC (and why this is a good thing)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list