Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!hsi!stpstn!cox From: cox@stpstn.UUCP (Brad Cox) Newsgroups: comp.object Subject: Re: What is Objective C? Message-ID: <5524@stpstn.UUCP> Date: 2 Sep 90 16:42:02 GMT References: <3864@bingvaxu.cc.binghamton.edu> <2700002@hpspkla.spk.hp.com> <11241@alice.UUCP> <401@eiffel.UUCP> Reply-To: cox@stpstn.UUCP (Brad Cox) Organization: Stepstone Lines: 46 In article <401@eiffel.UUCP> bertrand@eiffel.UUCP (Bertrand Meyer) writes: > > It is always surprising to see so many people confusing >programming languages and their implementations. Again and again >again people - apparently including professionals in the field - >will overlook that distinction, making entire discussions >irrelevant at best and misleading at worst. > > Why is that so? There is nothing tricky or difficult in the >distinction. Just common sense. > I've wondered the same thing, Bertrand, but with respect to nearly any software issue, not just with languages vs implementations. I boil it down as follows. Real engineers work with tangible things whose properties can be unambiguously understood by relying on natural senses. Theologians, philosophers, mathematicians, and the like work with pure abstractions; i.e. in a domain of belief rather than quantifiable fact. Software engineers work with software, an abstract/concrete hybrid; a swamp that's too thick to drink and too thin to plow. By hybrid, I mean that we get some of the best and some of the worst of both worlds. In particular, we get to deal with large numbers of people who exist in a world of belief and not quantifiable, observable fact. In other words, factual differences between languages and implementations are as relevant to true believers (that 'precompiler are bad...my professor said so) as a (hypothetical) discovery that Jesus never existed would be to true Christians. I chose this example carefully because it helps to distinguish effective vs ineffective ways of proceeding. Facts help, but do not solve. The kind of flaming this network is notorious for doesn't help, and makes things worse by hardening positions. The problem is not the unthinking mass of true believers, anymore than the problem is the unthinking mass of Christians or Jews or Moslems. The problem is the intangible, swampy nature of software itself that causes people to deal with it as a matter of abstract belief rather than concrete tangible fact. Thus direct manulation user interfaces, personal computing, OO technologies, etc, etc as the low-level technologies in the massive paradigm shift that I'm calling the Software Industrial Revolution. -- Brad Cox; cox@stepstone.com; CI$ 71230,647; 203 426 1875 The Stepstone Corporation; 75 Glen Road; Sandy Hook CT 06482