[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
(In reply to your message)
- To: RMS at MIT-AI
- Subject: (In reply to your message)
- From: David L. Andre <DLA at MIT-AI>
- Date: Wed ,6 Jan 82 23:53:00 EDT
- Cc: MMCM at MIT-AI, BUG-LISPM at MIT-AI, BUG-ZWEI at MIT-AI, DLA at MIT-AI
From: Richard M. Stallman <RMS at MIT-AI>
From: David L. Andre <DLA at MIT-AI>
Why, RMS, did you start messing with :DIRECTORY-STREAM?
Because it could not transmit user-defined properties which were not strings.
No file system which supports non-string user-defined properties uses
:DIRECTORY-STREAM. You are screwing them.
I fail to see any advantages to the changes you made. There are now
three ways of frobbing with directories, where previously there was
There are now two external ones and one internal one,
where previously there was one external one and one internal one.
:DIRECTORY-STREAM, I assume, is the internal one. It is only internal
to the QFILE system, and nothing else uses or should use it. There is
no reference to any :DIRECTORY-STREAM in my file system, as it would
certainly be very slow. Because :DIRECTORY-LIST-STREAM uses a
:DIRECTORY-STREAM, you are forcing me to write either :DIRECTORY-STREAM
or :DIRECTORY-LIST-STREAM for my file system. Either would be much
slower than :DIRECTORY-LIST. I assume the same consequenses hold for
Symbolics' file system.
The utility of :DIRECTORY-LIST-STREAM is debatable too, and if you had
taken the time to propose something like it, you would have been
informed of the issues involved. It HAS been pondered before.
:DIRECTORY-STREAM is *defined* by the FILE protocol
No, it was put on a method of the flavor PATHNAME, which seemed to
indicate the intention on someone else's part that it was more general
than just QFILE.
:DIRECTORY-STREAM is not supported by PATHNAME. The default version of
:DIRECTORY-LIST assumes that there is a directory stream, because
there's probably nothing better for it to do; The only other option is
to assume that a :DIRECTORY-LIST cannot be done, and put what is
currently (PATHNAME :DIRECTORY-LIST) onto CHAOS-PATHNAME.
Since this seemed reasonable to me, I went along
It is important that SOMEONE ELSE did this. I thought that
:DIRECTORY-STREAM was intended (and not just by me) to be the default
thing for anything to implement, which would imply it was supposed to
be suitable for things in general to use it.
When I wrote the directory operations for my file system, the main
source of information which I used was a letter from you to BUG-LISPM
asking about :DIRECTORY-LIST, :DIRECTORY-STREAM etc. The reply was
quite explicit. You evidently didn't look at the reply. (I'd find the
letter, but old BUG LISPM mail is on AI pack three, which is fucked)
, so messing with it
necessarily means messing with the file protocol, which necessarily
means updating the sources on many sites. :DIRECTORY-LIST is all that
should be implemented for any file system. If you use :DIRECTORY-STREAM
for your entrypoint
I don't THINK I use :DIRECTORY-STREAM as my entry point,
but perhaps I don't understand you.
The fact that you implemented it such that others must implement it,
makes it an entry point.
I will dispense with the specifics of your programming for the rest of
this letter. I consider them wrong, but that is not my point. Rather,
this incident is just symptomatic of the way you deal with any software
which is maintained by a group. You fundamentally change system
programs used and supported by many other people, without consulting
them as to the consequences, and evidently without thinking out the
consequences carefully for yourself. It is impossible for a group to
get anything done if any member behaves in such a manner. You have done
so, however, many times, much to the anger of the people you deal with,
I'm sad you feel this way, but your idea of WHAT I did and why seems
to be mistaken, so it is not clear to me that what I ACTUALLY DID
is related to the anger.
I stated that I'm not only refering to this case. This case in itself
doesn't warrant my flaming. But I see you constantly forcing myself and
other members of the lisp machine group to clean up after you because
you don't think enough about the consequenses, and don't ask before
doing things. This letter is long enough without twenty examples.
One of the most important virtues is admitting what you
don't know. I have gained some measure of respect among the people I
deal with because I don't go and break things in general, and when I do,
I fix them. Off the top of my head, I can probably name about a score
of incidents where you have changed things DIRECTLY IN OPPOSITION to the
wishes of others. They have given up dealing with you. I'm about to.
Dammit, RMS, you may be smart, but you're shit if you can't deal with
people. You have accused people many times of being silently against
you. We are, and this is why.
I expect people to be directly opposed to things I propose merely
because they were proposed by me.
You are being childish and paranoid by saying this.
Specifically, I expect people to
jump to the conclusion that my actions are stupid without actually
Don't YOU get upset when other people break what you are doing without
consulting you?? You could be right in what you do, but even if you
are right (and you often aren't), it certainly rubs on people.
I expect this because it happens frequently; for
example, you are doing so now.
Faced with this, my two choices are to give in to an unfair
condemnation or to go directly against people. The first time (wrt
NWS) I kept giving in in the hope that things would get better. It
didn't work, so I decided that I had to stand up for myself.
Probably I am too quick to expect this to happen, and I may be
wronging other people by reacting to it in advance when it really
would not have happened. But it does still happen (and it is
happening right now). It is hard for me to treat other people on the
basis of expecting them to give any serious consideration to any
proposal I make when so often they don't.
Bargaining is a two way street. You forget how many times people agree
with you. I even agree with you that :DIRECTORY-STREAM is too
restrictive, and possibly it should be changed. But not without
consultation as to the consequenses!
People have been very patient with you trying to get it into your skull
that you are being very unreasonable.
I think that other people share in the unreasonability and that they
have often been far from patient.
MMcM has been (amazingly) civil
in his last group of letters on the :DIRECTORY-STREAM stuff. You have
not answered most of his arguments, citing the requirements of your file
I thought that MMCM was primarily citing the possible requirements of
other file systems without answering my arguments.
Even If your analysis is correct here, then I still don't disagree with
his sense of proportions. Your file system is experimental and used
practically not at all, compared with the amount of work which is done
on other file systems.
If it is
blameworthy on my part it is blameworthy when other people do it,
but I would call it a misunderstanding.
I cannot speak for Symbolics, but I myself would not
accept your changes were I working there. Out of your unreasonableness
grows two different protocols, two different lisp machine systems, to
which you are supposedly opposed.
I am unable to work in such an environment. Either you start showing
reasonable level of consideration in your programming than you have
been, or one of us will be leaving.
I am willing to talk about doing something differently but the
definition of "reasonable" that most people want me to obey seems to
be stacked so that they can mistreat me and I can't do anything about
it. I can only agree to a kind of "reasonableness" which isn't
RMS, when dealing in a group of people, you win some and you lose some.
You should accept losses and work for the common good of the group, win
or lose. Your input is invaluable in the cases where you win, for
otherwise the group may have not reached such an optimal solution. But
work with the group first in mind, accept your losses and you'll find
out that the world isn't out to get you.