🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.sys.next.programmer
Article #623

Re: Objective-C class (factory) variables

#623
From: Michael Gersten
Date: Sat, 11 Apr 1992 04:49
47 lines
2781 bytes
In article <3463@rosie.NeXT.COM> ngervae@next.com (Nik Gervae) writes:
>Disclaimer:  None of this should be taken as offical policy of NeXT Computer,  
>Inc.  I've expressed some ideas about why NeXT made certain choices or would  
>currently make a decision on this matter;  these are pure conjecture.  In  
>addition to them not being policy, they may be plain wrong.  :-)
>
> [... discussion of a problem in class variables ... ]
>
>NeXT probably didn't do this because Controls were designed very early, when  
>things about OO design were still being discovered.  I'm personally still  
>learning things about our software with regard to the "outsider's" POV--how  
>easily a class is subclassed, how easy it is to use at all (all you NXBrowser  
>fans out there :-), and so on.  I requested that we change Controls to use the  
>class simulation scheme I mentioned above, but discovered that we simply can't  
>gauge the effect this would have on people who may have come to expect the  
>current (buggy) behavior (the old installed-base issue), or whose workarounds  
>would break with the new scheme.  So we all have to punt.  Learn from our  
>mistakes (and live with 'em), as the saying goes.

I know this is going to be controversial, but...

Do It AnyWays.

You've got a buggy software setup. Fix the bug.

In this case you have a problem that affects the people that have come up
with a workaround for this bug. First fix the design problem. Then see if
there is anyway to emulate the bug *for the next release only*. At release
N+2 the bug, and its emulation, will be gone. If there is no way to emulate
the bug, fix it anyways.

If you wait for the future, you'll never be able to fix it, as you'll be
effectively saying "This is an officially supported and documented bug".

And most importantly, if you want a class to be usable by an outsider,
then the outsider POV should be *the* way that you think about the class
while designing it. Not an afterthought.

Just a personal opinion, but I have no respect for the way things are
just because they are the way things are. I respect the way things are
only for whether it is the way things are wanted in the future.

		Michael
-- 
		Michael Gersten		michael@stb.info.com
HELLO! I'm a signature virus! Join in the fun and copy me into yours!
ex:.-1,. w $HOME/.signature
Technical Details
Message-ID: <1992Apr11.044953.10729@stb.info.com>
Path: arc1-ca.pugleaf.net!sparky!uunet!think.com!ames!dlb!zygot!denwa!stb!michael
References: <31799@darkstar.ucsc.edu> <3463@rosie.NeXT.COM>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!sparky!uunet!think.com!ames!dlb!zygot!denwa!stb!michael
From: michael@stb.info.com (Michael Gersten)
Newsgroups: comp.sys.next.programmer
Subject: Re: Objective-C class (factory) variables
Message-ID: <1992Apr11.044953.10729@stb.info.com>
Date: 11 Apr 92 04:49:53 GMT
References: <31799@darkstar.ucsc.edu> <3463@rosie.NeXT.COM>
Organization: STB BBS, La, Ca, 310 319 3778
Lines: 47