Alien whitespace eating nanovirus strikes again!

Hans Nowak ivnowa at hvision.nl
Wed Jun 2 16:29:48 EDT 1999


On 2 Jun 99, Martijn Faassen wrote:

> [Larry Wall:]
> [Perl is postmodern]
> > That is, if something's worth doing, it's worth driving into the ground to the
> > exclusion of all other approaches. Look at the use of parentheses in Lisp or 
> > the use of white space as syntax in Python. Or the mandatory use of objects in
> > many languages, including Java. All of these are ways of taking freedom away
> > from the end user ``for their own good''. They're just versions of Orwell's
> > Newspeak, in which it's impossible to think bad thoughts. We escaped from the
> > fashion police in the 1970s, but many programmers are still slaves of the cyber
> > police.
> [Perl is postmodern and therefore allows freedom]
> 
> One could say the same about Perl and it requiring it curly braces
> around blocks? In fact, I heard the claim that its requirement to use
> curly braces around single line blocks (unlike C which allows you to
> remove them) makes Perl less prone to errors. And Perl excludes the use
> of meaningful whitespace indentation! (python does allow #{ and #}
> blocks ;)

When I read his articles about postmodern Perl, I initially thought 
he was joking... this shtick about 'languages with one big idea... 
Java has objects, Lisp has parentheses, Python has whitespace', etc. 
couldn't be serious, right? But it seems he is serious after all...

Sometimes I dare read a few messages in the Perl newsgroups, and some 
people there seem to think of Python as the summum of inflexibility. 
It doesn't allow you enough freedom to code what you want. Just look 
at that whitespace! -- Nonsense, of course. The fact that Python 
heavily uses whitespace doesn't mean you cannot code what you want, 
and in a way you want it. The same thing can be said for Scheme and 
Lisp. They use lots of parentheses, and while the languages look 
peculiar because of that, it doesn't make them any less flexible. On 
the contrary.

Whitespace in Python enforces readability, it does not force you to 
use a certain coding style. I really cannot understand why some 
people seem to think Python is not flexible. It actually allows very 
much, just takes out brain-damaged things, like for instance adding 
strings and integers, which makes as much sense as adding file 
objects and complex numbers. :o)

> Okay, I *will* say the same about Perl and its curly braces requirement:
> 
> } That is, if something's worth doing, it's worth driving into the
> ground to the
> } exclusion of all other approaches. Look at the use of curly braces in
> } Perl.

$Yes, (%(and) quite) @a { $few %other $annoying {characters...} }

> Okay, sorry for all this, it's out of line, I just needed to blow off
> steam. :)

Me too. :)

Veel liefs,

--Hans Nowak (ivnowa at hvision.nl)
Homepage: http://fly.to/zephyrfalcon




More information about the Python-list mailing list