[Edu-sig] Re: Python Programming: An Introduction to Computer

Kirby Urner urnerk at qwest.net
Sun Dec 14 11:59:31 EST 2003


> > This is equally true for some other languages.
> 
> Which begs the question: why Python instead of these other languages?
> Given the choice between teaching CS students more Python or teaching a
> new language (such as Prolog, Scheme, ML, or Haskell), I would decide to
> teach a new language.
> 

Yes, and I said I understood why CS2 was about Java and not more Python.  I
said the reasoning for this was solid.

My frustration/worry was that if Python always gets beginner treatment, that
people might never get to appreciate some of its deeper structure.  

For example, I think the reason it's often compared to LISP is you have all
these hooks into the syntax itself, such that you can program at the meta
level.  Changing the meaning of the arithmetic operators is just the
beginning.

One thing I like to do when introducing Python is:

 >>> dir(1)

And then talk about what the output is telling us (basically, this is about
type/class unification, which recent versions of Python have worked hard to
achieve).

But I didn't argue that the solution was to abandon other languages and just
go with Python.  On the contrary, my position, consistently, has been that
any real computer science curriculum needs to include exposure to multiple
languages.

> Anyways, I think that many students who continue to program will simply
> continue to use Python when it makes sense. That's been my experience so
> far.

I've been somewhat reassured by a number of posts to this effect.  Let's
hope that it's true.

> By the way, I am in "Zelle's camp":
> http://tonka.iat.sfu.ca/toby/pythoned/pp4e. I don't think Perl, Ruby, or
> Scheme (or VB, PHP, JavaScript, Tcl/Tk, ActionScript, etc.) have any
> hope of becoming popular CS1 languages the way Python does.
> 
> Toby

Me too (in Zelle's camp).

Kirby





More information about the Edu-sig mailing list