Why is Python a good first scripting language?

Donn Cave donn at u.washington.edu
Mon Oct 21 13:07:04 EDT 2002


Quoth Roy Smith <roy at panix.com>:
| news at agapow.net (Paul-Michael Agapow) wrote:
|> Ruby is cool and solid, but the developer community is still
|> small. It's at the point where Python was 3 or 4 years ago.
|
| I find it fascinating that people who know neither Python nor Ruby seem 
| th think Ruby is the cooler language.
...
| If Perl is to Python as Windows is to Macintosh, then I guess Python is 
| to Ruby as Macintosh is to BeOS :-)

Which seems to illustrate a corollary:  people who only know Python
are sure it's cooler than some other language they don't know.  I'm
typing this on a Macintosh running BeOS (Macintosh is a kind of computer,
MacOS and BeOS are operating systems), so to me it seems like you're
trying to make a case for Ruby.

It's actually an interesting way to look at the question.  My computer
here is a Power Macintosh 7500, original 1gb disk, memory upgraded to
64Mb and CPU upgraded to 132Mhz PPC604.  The way I see it, my options
are a) run BeOS on it, or b) throw it away and ask for a new computer.
Macintosh hardware has gotten a lot bigger and faster since '96 or
whenever it was, and Apple's software has followed along.  BeOS 5 is
pretty fast on this hardware, even with only 1/3 Gb disk and therefore
no swap space.  MacOS 8.1 is not lightning fast, but bearable if you
don't use a terminal emulator as much as I do.  MacOS X struggles on
twice the hardware.

Does your parallel work here?  I don't know a thing about Ruby, is it
fast and lean?  I know lots of very hard and talented work has been done
to improve Python's performance, but I'm sure it is not the fastest
interpreted language (look at interpreted OCaml for example - not counting
the compiled version, though of course that's how you'd probably use it.)

How about the programming API?  Whatever the reasons (you might excuse
Apple because the APIs are a lot older, but Amiga programmers would object),
it's a lot simpler to write a simple BeOS application.  Memory management
is simpler and more conventional.  The whole API is documented in a single
thick book.  Is that Ruby?  A simple natural API, compared to Python's
burgeoning repertoire of list incomprehensions, generators and general
obfuscators?  Hm, I'm hearing a lot of good things about this Ruby.

	Donn Cave, University Computing Services, University of Washington
	donn at u.washington.edu



More information about the Python-list mailing list