[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[no subject]
- To: CWH at MIT-MC
- Subject:
- From: MOON@MIT-MC
- Date: Mon ,8 May 79 08:00:45 EDT
CC: (BUG LISPM) at MIT-MC
CWH@MIT-MC 08/05/79 07:06:33
To: MOON at MIT-MC
CC: (BUG LISPM) at MIT-MC
MOON@MIT-MC 08/04/79 18:09:51
cwh@MIT-AI 08/04/79 15:17:49
To: (BUG LISPM) at MIT-AI
The instance variables of such widely used classes as WINDOW-CLASS and
WINDOW-WITH-PC-PPR-CLASS should be interned on GLOBAL.
Why?
The reason for doing this is to have a consistent naming scheme for instance
variables when defining methods. If one is defining methods for a subclass
of WINDOW-CLASS, then one must remember that NAME, SCREEN, LEFT, ... are on
GLOBAL, and PROCESS, FRAME, and BIT-SAVE-ARRAY are on SI. Alternately, one
can simply say SI:NAME, etc. for all of the instance variables inherited
from WINDOW-CLASS, but then one must distinguish between those variables
inherited and those specific to the new class being defined. I am assuming,
of course, that the new class is being defined in a package other than SI.
I think the solution RMS proposed of putting all instance variables on the
keyword package is a reasonable one. Besides, this would make our message
passing code look more like LOGO!
My own preference would be to put all window methods in the SI package.
There's nothing wrong with users writing files of code that go in the SI
package, but aren't part of the initially-supplied system. I don't feel
too strongly about this since it won't make message-passing code much
more unreadable than it is already.