Message from discussion Why I can't use Lisp.
From: Kent M Pitman <pit...@world.std.com>
Subject: Re: Why I can't use Lisp.
Date: Mon, 5 Aug 2002 11:30:33 GMT
References: <email@example.com> <firstname.lastname@example.org> <email@example.com> <firstname.lastname@example.org> <email@example.com> <firstname.lastname@example.org> <email@example.com> <firstname.lastname@example.org> <sfwfzxux8tv.fsf@shell01.TheWorld.com> <email@example.com> <sfwofchk9go.fsf@shell01.TheWorld.com> <firstname.lastname@example.org>
Organization: My ISP can pay me if they want an ad here.
X-Newsreader: Gnus v5.7/Emacs 20.7
Andreas Bogk <andr...@andreas.org> writes:
> Kent M Pitman <pit...@world.std.com> writes:
> > To be honest, I don't think anyone who starts with split("\\s" line)
> > is going to target symbol as their final datatype. I bet they'll
> > write it using strings.
> And I bet there's no READ that doesn't treat its input as a string
> Of course, clueless users who don't know the value of symbols should
> be slapped with the manual.
But this is again my point. Only some of the input is going to come
from input lines. Some of it wants to be literal program data. And
if you don't have symbols (and lists) IN MANAGEABLE SYNTACTIC FORM in
your language, you won't have users including them as literal data as
many places in programs as they need to.
> > to work. One of the virtues of starting with s-expressions was that
> > it allowed the people with this idea to skip to the part where they
> > were working on the idea, unimpeded by the UI issues that would be needed
> > in order to get to a workable representation.
> An s-expression parser written in Dylan is readily available.
You remind me here of my (very well meaning) physics teacher in high
school who when I suggested I might want to repeat the
Michaelson/Morley (sp?) experiments for measuring the speed of light
using mirrors said "why don't you use an oscilloscope"? To me, that
seemed a strange question to ask since it was probably callibrated
somewhere along the way with a knowledge of the speed of light, and seemed
of defeat the whole purpose of the experiment.
I'm talking here about how important it is to have s-expressions in the
language because of the invention it promotes by accidentally using such a
simple device for routine play in your program, and you're saying back to me
"you can have the sophisticated understanding that this simple device is
available". Sure, *I* can because I know the importance of using it. But
the people I'm talking about are people who don't know this importance and
won't be using s-expressions.
Separating M (or D) -expressions from S-expressions is not a recipe for
creating the "data is program / program is data" thing. It's a way of
saying "data is data / program is program", which isn't the same thing at
Does that make Dylan a non-Lisp? I dunno. I'm not sure what's
criterial to Lisp. Maybe I think the desire to BE a Lisp is criterial
to Lisp, and maybe I think Dylan doesn't have that. I've seen no
active desire to be called a Lisp and some active desire to not be
called a Lisp by certain key Dylan folks over the years, and that
seems to me to be more interesting... But at least at the level of
programming, having separate tools (parsers, printers, etc.) for
managing programs and managing data is relatively unlispy...
> > parser for "x+y*z" is annoying. And it's DOUBLY annoying because you
> > know the Dylan language HAS such a parser and does not reveal it to the
> > end user as an ordinary part of doing business.
> Oh, how I agree. Once GD 2.4 is released, I'll take a chainsaw and
> liberate the compiler's parser.
Well, that certainly won't hurt.