For review: PEP 308 - If-then-else expression

Jack Diederich jack at performancedrivers.com
Sat Feb 8 20:49:59 CET 2003


On Sat, Feb 08, 2003 at 05:16:47PM +0000, jerf at compy.attbi.com wrote:
> Go look at perl, and look at some Perl code, and then look at some *other*
> perl code by a different author.
> 
> I'm working on a code base with four or five other Perl
> programmers, and I can tell, with absolute certainty, exactly who wrote
> what part, because the *coding styles* are that much different. (Not 
> comment styles, not control flow styles, actual line-for-line code.)

This is exactly my experience, I worked on a largish codebase (100 KLOCs)
of perl.  Even with an authoritative style document several pages long
you could tell excatly who wrote what (And more accurately than 'cvs ann'
becuase merge commits obscure the original checkin).

Is this a bad thing?  Not neccessarilly. People use which one they like
when they like and according to their circumstances.

The philosiphy of Perl is to be like English: lots and lots of ways
to say the same thing.  The idea is to allow the writer to think naturally
in the language, and to give the reader hints as to intent.

The philosiphy of Python (or at least python users) is to focus on
the reader and to keep the number of ways to do it to some minimum.
'Minimum' is defined loosly as 'possible and not painful'

So it all boils down to this.  I enjoy reading books and I don't mind 
re-reading clever sentances or looking up an uncommon word in a 
dictionary.  This is a great idiom for complicated academic arguments
and for pleasure reading.

If you send out a work proposal or an internal memo that requires
the reader know the 3rd definition of a word or understand a clever
nuance of grammar you are screwed.  Programming is something most
people do to get work done.

hey, I like perl, I use perl frequently, I've plenty of karma over
at perlmonks.org.  I also like python; I use it for different things
and in different contexts.

I have no desire to program in perlthon.

-jackdied





More information about the Python-list mailing list