Is Python a Zen language?

none "jay\" at (none)
Sat Feb 25 19:23:26 EST 2006


John Coleman wrote:
> Bryan Olson wrote:
> 
>>John Coleman wrote:
>>
>>>   I have a rough classification of languages into 2 classes: Zen
>>>languages and tool languages. A tool language is a language that is,
>>>well, a *tool* for programming a computer. C is the prototypical tool
>>>language. Most languages in the Algol family are tool languages. Visual
>>>Basic and Java are also tool languages. On the other hand, a Zen
>>>language is a language which is purported to transform your way of
>>>thinking about programming. Lisp, Scheme, Forth, Smalltalk and (maybe)
>>>C++ are Zen languages.
>>
>>I think that's a horrible classification. Every language is both.
>>"Transform your way of thinking" from what? There is no
>>distinguished canonical view of what a programming language looks
>>like, from which all others must be strange and wondrous
>>transformations.
>>
>>Lisp and Forth are not tools for programming a computer? Of course
>>they are. Algol and Java don't transform people's thinking about
>>programming? Nonsense.
>>
>>
>>--
>>--Bryan
> 
> 
> You seem to have completly overlooked both the hedge word "rough" in my
> first sentence and the qualifications in my third paragraph. I probably
> was not sufficiently clear that I was describing some fairly sunjective
> impressions.  It is a simple observation that devotees of the Scheme
> language view their language as more than *just* a tool for programming
> computers. To quote from the introduction to the first edition of SICP:
> 
> "we want to establish the idea that a computer language is not just a
> way of getting a computer to perform operations but rather that it is a
> novel formal medium for expressing ideas about methodology"
> (http://mitpress.mit.edu/sicp/full-text/book/book.html).
> It is also a simple observation that experts in VBScript *don't* walk
> around talking like that. Scheme and VBScript are of course both Turing
> complete, but they seem to have radically different cultures. Do you
> disagree? Or, if you agree that there is a difference but don't like
> the words "Zen" vs. "tool" to describe it, how would you articulate the
> difference?
> 
> Again, just curious.

It's a metter of perspective.  Python didn't change my thinking about 
programming.  Smalltalk changed my way of thinking about programming 
very radically.  All Python changed my thinking about was how to better 
program in Python.  Python to me just happened to be a very pragmmatic 
and productive tool for getting the job done.  It happens to be 
comfrotable because large parts of it already fit into my way of 
thinking from long use in Smalltalk, but my description of Pythong would 
be 'cleanly practical' not 'zen'



More information about the Python-list mailing list