Whitespace as syntax (was Re: Python Rocks!)

Neel Krishnaswami neelk at brick.cswv.com
Wed Feb 9 19:40:45 EST 2000


Paul Prescod <paul at prescod.net> wrote:
>
> I admit that Smalltalk and Lisp have annoyed me for a while. I would
> apologize for taking it out on you but actually I didn't. The question
> was asked whether languages succeed or fail for a reason. I strongly
> believe that they do. If you spend 10 minutes reading www.python.org and
> then 10 minutes on www.smalltalk.org you will see the difference
> yourself. If it is an attack against the Smalltalk community to point
> out that they have surpressed widespread knowledge of a great
> programming language for nigh twenty years?

There are multiple high-quality open-source Common Lisps available
(CMUCL and clisp); just about every commercial Lisp vendor offers a
full product with hefty libraries for evaluation by interested
parties; the language spec is freely available, hyperlinked, and
integrated into Emacs; there are code repositories and websites (the
CMU AI repository and www.alu.org); there are freely available large,
powerful, and industrial-strength apps for people to study (eg,
CL-HTTP and Screamer); there are many superbly written textbooks and
tutorials (_Paradigms of AI Programming_, _On Lisp_, _ANSI Common
Lisp_, _The Art of the Metaobject Protocol_); *and* if you go on the
newsgroups you can find master Lisp hackers (such as Kent Pitman, the
editor of the CL spec) explaining the hows and even the whys of good
Lisp practice to anyone who asks.

If this is "suppressing widespread knowledge of a programming
language," I think Java is the only case of a language that wasn't
suppressed. :)

> Smalltalk and Lisp should be a hundred times more popular today than
> they are. The state of programming language deployment should be five
> years ahead of where it is. People should not think that Java is cool
> and modern. It's all very disappointing.
 
Nowadays when people are giving away 500 MHz P3's in cereal boxes,
this may be hard to believe, but remember that until around 1992 or
93, personal computers simply weren't powerful enough to run a full
Common Lisp or Smalltalk. People in the PC world were writing
spreadsheets in assembly language, for heaven's sake!

> Maybe there is still someone around to listen: When I download a new
> programming language, I don't want a new development  environment. 
> [...]  This annoys me not only because it holds the ideas in Smalltalk
> back from popularity but because it strikes me as  arrogant. Just give
> me a programming language please!

Er, it's not obvious to me where 'programming language' ends and
'development environment' begins. A programming language is an
interface between the programmer and the computer, and so is the
IDE. The line between the two is necessarily somewhat artificial.

Consider, for example, the language's type system: this is in the
common understanding a fundamental piece of what a language is. If you
suggested that it's separable from the language, you would get strange
looks. But then go look at Cecil, or Rice's DrScheme. In both of these
languages, the type-checker is a separate tool run over a program, and
it's certainly reasonable to write multiple type-checkers to analyze
different aspects of a program. Or more directly, start messing with
the the Class metaclass in a Smalltalk IDE, and see that you can
change the language's semantics at runtime.

If we haven't invented the one true language yet, why do you think
that we have already found the one true way of interacting with
languages? Experimentation is a good thing, IMO.


Neel



More information about the Python-list mailing list