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 -- http://mail.python.org/mailman/listinfo/python-list