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