Whitespace as syntax (was Re: Python Rocks!)

Bijan Parsia bparsia at email.unc.edu
Wed Feb 9 02:35:00 CET 2000


<fcahoon at my-deja.com> wrote:

> In article <1e5nkk6.1a5z8bp1lixbdvN%bparsia at email.unc.edu>,
>   bparsia at email.unc.edu (Bijan Parsia) wrote:
> > <fcahoon at my-deja.com> wrote:
[snip]
> 
> > I think, notwithstanding your experience with C (though why that
> should
> > be applicable to Python...), *you* have a riddle to answer: There is a
> > *lot* of Python code out there. The standard distribution contains
> loads
> > of modules from many different sources. You *yourself* indicate that
> > Python is becoming common place....
> 
> The popularity of a language cannot be taken as prima facie evidence of
> its technical superiority.  
[snip]

Well, that would be a telling riposte *if* my argument had anything to
do with technical superiority. My point was, as Garrett pointed out,
that the fact that there are large bodies of Python code from
heterogenous sources which themselves have had heterogenous contributers
*and yet* there hasn't been (reported) wide scale difficulties is *prima
facie* evidence that the "whitespace munging" problem is not severe.
Given that, the burden of proof returns to you, and analogies from
other, *disanalogous* langauges will no longer serve.

> >  [ ... ]
> >
> > > If python code were to become mis-formatted (and given my
> experience, I
> > > have to believe that sooner or later this _will_ happen)
> >
> > Er...not your experience of *Python* code, right? So, your experience
> > with Python code: 0. Everyone elses: >0 (some up to, what, 8 years? 10
> > years?). I think it more correct that your *lack* of (relevant)
> > experience leads you to your belief.
> 
> It's true that my experience writing python can, for practical purposes,
> be called 0 here.  However, I think it is a mistake to consider the
> posters responding to me to be representative of people with experience
> with python.  Already, among the majority of posts from people who find
> that indentation-as-syntax is not a problem, several people _with_
> python experience who believe indentation-as-syntax _is_ a problem have
> spoken. 
[snip]

Well, look, you've just *changed* your argument. Your original argument
was that *based* on your C experience, certain conclusions about Python
can be drawn.

Now, that a few people *with* python experience chimed in is some sort
of confirmation, but hardly what you should hope for given the strength
of your claim and the nature of your supporting evidence.

And, yes, sure, there well may have been people turned off by
"whitespace", but isn't the true measure, to be consistent with your
argument, of the the defectives of Python's block delimitors that when
receiving files from other people, one is *typically* left *totally
clueless* as to the intent of the programmer? *No one* has claimed that.

There are advantages to various sorts of delimiters, and for some that
might wiegh heavier than for others. So it's *no surprise* that some
people will agree with your position. I don't think you can go from that
to some massive technical problem. A massive technical problem would
*show up* in the *general use* of the langauge. Think of C and lint.
There were serious problems with C that basically *required* a tool to
manage them. Python *has* such tools, but they are *not* wildly used,
nor is their use strongly encouraged (the way lint's was).

Of course, it's theoretically possible that everybody *is* spending all
their time indenting and reindenting code, guessing where things should
go, and so on, but that the other advantages of Python *so outweigh*
this huge effort that people put up with it anyway.

I respectfully suggest that the *prima facie* case is very strongly
against this. And given that Python is open source and that adding
"visible" block delimiters is more or less trivial *and* *no*
alternative block delimited version has *appeared* much less gained
*any* following, I think we can rest confident that indentation is not a
problem.

Now the lack of class methods, *that's* a killar. And it's not
Smalltalk, and *everything* must be like Smalltalk.

(That's for Paul. He needs a stick to beat me with :))

(Not that I *want* to be beaten. No no. Really.   Stop looking at me
like that!)

Cheers,
Bijan Parsia.



More information about the Python-list mailing list