Subject: Re: All instances From: Erik Naggum <erik@naggum.net> Date: Mon, 18 Jun 2001 22:00:36 GMT Newsgroups: comp.lang.lisp Message-ID: <3201890393610337@naggum.net> * "Geoff Summerhayes" <sNuOmSrPnAoMt@hNoOtSmPaAiMl.com> > I must be missing the point then. Most probably. I am unable to reconnect what have been talking about with your argument. > Wasn't MOP designed, in part,to provide information about the specifics > of an application for the purpose of allowing greater understanding of > it's inner workings? That is so not the point. Yes, wonderful tools exist to further both introspection in a system and learning and understanding in its users. Some of these tools actually make possible both thinking and solutions that would have been impossible to predict before it was deployed. That is the mark of a truly good idea. However, all good ideas can be carried too far and turn into _very_ bad ideas. E.g., the idea that members of a family pool their efforts and their earning so that the whole family can prosper as a result is a good idea, because of the preexisting commitment among the family members to the family. Doing exactly the same thing for a country of a hundred million people is not a good idea because there is no commitment from a citizen to a country on that scale. > I think the ability to query a system to find out what it's current state > it's in directly, instead of looking at source and making an educated > guess, is a good thing. I suggest that you look at the conditions that make it a good thing and see if you can find ways that some or all of those conditions can fail to be met with disastrous results. So far, all you have done is show us that you can think of positive consequences of having those conditions met. That is, frankly, utterly uninteresting. We all agree that all of this stuff has useful aspects. _Nobody_ is arguing against these things. I am, however, arguing against the standard implementation of a _specific_ feature that has more negative aspects to it than positive because the conditions that are usually met by introspective functions are _not_ met by this particular feature. Somewhere along the line, I think you managed to conclude the general from the specific, when the general was already taken for granted, and argue for the specific based on arguments for the general. Both of which as disastrous logical fallacies. I have a hard time even coming to grips with the proportion of such an invalid argument. It is virtually a textbook example of how _not_ to argue for something. We have been told that this allInstances feature is great _because_ of the lack of documentation in large systems. I know, from experience, that that documentation is lacking _because_ of the availability of features that obviate the need for proper documentation. Thus, a feature that is "good" has very, very bad consequences because it turns people who are resource-conscious into worse programmers when they _know_ that whoever has to deal with their code is probably going to skip reading the documentation when they have that tool, too, so they never bother to write it in the first place, in a wonderful process of proving themselves right: Of course they didn't read the non-existing documentation before they used the allInstances trick to discover the information they were looking for! Please think things through, do not stop thinking just because of the sexy surface appeal of something. #:Erik -- Travel is a meat thing.