[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: "Python for Lisp Programmers"
> Date: Fri, 7 Dec 2001 23:53:51 -0500 (EST)
> From: Shriram Krishnamurthi <sk@cs.brown.edu>
>
> Ronald D Stephens wrote:
>
> > Or , to put it as simply and briefly as possible, in answer to "Why
> > is Python considered lightweight and Lisp is not" , there are three
> > reasons.
> >
> > 1. Syntax.
> >
> > 2. Syntax.
> >
> > and
> >
> > 3. Syntax.
> >
> > Syntax matters. It matters a lot. Academic language designers seem
> > to be most concerned with semantics, completeness, doing the right
> > thing, etc; but not as much concerned with syntax.
>
> Oh, puhleeze. I really can't let this one pass.
>
[snip]
>
> Third, beginners routinely pick up parenthetical languages with little
> effort. They have been doing so at MIT for decades, and at dozens,
> even hundreds, of other universities. Not all of them *like* it, but
> they sure don't have much trouble learning it. And some of them seem
> to like it so passionately that they choose to build their languages
> to use different semantics but the same syntax. A pure accident? I
> don't think so.
Even though I love python and use it all the time, I'll second Shriram
here. I spent some of the last term teaching scheme to undergrads, and
none of them had a problem with the parenthesized syntax after about the
first two weeks. I think the problem is that most people have a knee-jerk
negative gut reaction to seeing all those parentheses, and they never make
it past that stage. It's similar to people refusing to use python because
of the indentation-based block structure, or refusing to use standard ML
because -1 is written ~1. These are trivial things, but people feel
strongly enough about them to avoid languages that "look bad" to them, even
if it's only a surface matter. This has *nothing* to do with whether a
language is "little" or not.
> Fourth, it's utterly insulting to suggest that parenheads DON'T think
> about syntax. I think their problem is exactly the opposite: they've
> thought too long about syntax, which is why they stick to the one they
> have so territorially. If the rest of the world thought as hard about
> syntax, we'd have had XML two decades sooner. If the rest of the
> world thought as hard about syntax, we wouldn't have the weak,
> rudimentary, groping attempts at macros in other languages.
"Parenhead" -- nice term! :-)
>
> > Syntax has an awful lot to do with ease of learning; a simple,
> > intuitive, consistent syntax is very easy to learn.
>
> I can see how Lisp's syntax utterly fails this test. It is clearly
> anything but simple or consistent. Yeah.
>
Simple and consistent, but not intuitive at first for most people. You
have to grant that.
The ease with which macros can be defined in s-expression based languages
is the killer feature that attracted me to lisp and scheme. The simplicity
and consistency was also a big bonus, especially after having learned
countless stupid variations on infix syntaxes. You'll note that there
aren't that many variations on s-expression syntax (though Arc and Curl may
suggest that this trend is changing).
Mike "parenhead in training"