Is Python a Zen language?
Kent Johnson
kent at kentsjohnson.com
Sat Feb 25 11:06:58 EST 2006
John Coleman wrote:
> Greetings,
> 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. Disciples acknowledge that it is difficult to
> pick up these languages but claim that, if you persevere, you sooner or
> later reach a state of computational satori in which it all makes
> sense. Interestingly enough, these languages often have books which
> approach scriptural status e.g. SICP for Scheme.
>
> So (assuming my classification makes sense) which is Python?
Expanding on what Alex said :-)
Python is an excellent tool language, it is very pragmatic and powerful
and makes it (relatively) easy to just get stuff done.
Python has one of your 'zen' aspects - using Python has definitely
expanded the way I think about programming. Powerful built-in support
for lists and dicts, first-class functions and easy introspection enable
a style of programming that is difficult or impossible in Java and C++.
But Python is not difficult to pick up - it is notably easy - and I
don't think anyone claims it leads to computational satori - it's more
an attitude of "try it, you'll like it!". Using Python does seem to
spoil people - I for one hate to code in Java now. Maybe "bliss" is a
better word for it than "satori".
Kent
More information about the Python-list
mailing list