----- Original Message -----
From: "Chris Pine" <nemo / hellotree.com>
To: "ruby-talk ML" <ruby-talk / ruby-lang.org>
Sent: Friday, March 28, 2003 7:31 PM
Subject: Re: Array question


> In general, I would add things like this.  Matz has a different view; an
> interesting one which, if I don't fully understand it, I can certainly
> appreciate it.  He says something like "This isn't what #join means,"
almost
> like he's referring to the platonic form of "join".  Remember the
suggestion
> for Hash#+ to work like update, but returning a new hash?  Matz was for
the
> idea, but didn't want to call it "+" because update can mask certain
> key-value pairs and he didn't feel like that properly captured the spirit
of
> what "+" is all about.  (Or something like that.)

That's an interesting analysis. I can't speak for Matz, but
I admit I'm a closet Platonist. This came out when I was
discussing (human) languages with a friend the other day.
As it turned out, he thinks of a "word" as being a spoken
sound, and the written word is only a representation of it.
Me, I think that a spoken word is only a noise, and a
written word is only a scribble; but behind them both (and
yet not pure concept, not language-independent), there is
the Word which is represented by both the noise and the
scribble.

> How fascinating!  Again, I think I would have gone ahead with it, but you
> have to admire that attitude, and the great language we have as a result.

Yes, it's hard to argue with success. And I don't mean
commercial success or popularity, but technical and
aesthetic excellence.

> This sort of "purity of essence" idea which runs through all of Ruby seems
> vaguely at odds with Paul Graham's "allow the programmer to do everything"
> (an admittedly liberal interpretation of his "write a language for
brilliant
> programmers" idea), though I have difficulty defining just how... things
> like disallowing multiple inheritance.  (I'm not complaining about it!
Just
> saying.)

I've struggled with this also. So far the best explanation
I have is in the words of Steven Wright: "You can't have
everything. Where would you put it?"

Even Paul Graham has concepts of what a LISP dialect ought
to be, ought to have. And once you say what should be put in,
you are at least implicitly saying that everything else
should be left out.

Hal