Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!uunet!aurs01!throop From: throop@aurs01.UUCP (Wayne Throop) Newsgroups: comp.software-eng Subject: Re: the scientist and the engineer Message-ID: <59483@aurs01.UUCP> Date: 29 Jan 91 20:01:54 GMT References: <1991Jan26.210023.28534@cbnewsh.att.com> <1991Jan27.234614.2327@cbnewsc.att.com> <1991Jan28.125444.71@skyler.mavd.honeywell.com> <6518@hplabsz.HP.COM> Sender: news@aurs01.UUCP Lines: 32 > sartin@hplabsz.HP.COM (Rob Sartin) >> djbailey@skyler.mavd.honeywell.com >>No. Custom metallurgy would mean designing a new programming language >>from scratch and that is rare. > Not as rare as one might hope. [...] > My observaton is that software folks often get more carried away with > the pure technology rather than focusing on solving the problem. I'm of the opinion that it isn't as *common* as one might hope. ( Where "it" is the coining of custom languages/notations. ) I'm a great believer in "tiny languages" a-la Bentley, eg: consider the origins of "pic". The productivity improvement of jootsing (a-la Hofstadter) to a semantically "denser" notation can be immense. Mind you, I don't doubt for a minute that this technique can be abused, I just don't think it is *used* in many of the places it "ought" to be. An approximately true story: I remember a conversation between a developer and a manager. The manager well knew the developer's tendency to solve the more general problem and invent "tiny languages". The conversation went something like this: mgr: How long will it take you to [solve problem so-and-so]? dev: Oh... [thoughtful pause]... about six weeks. mgr: That long? Remember, I don't want you to be wasting time solving somebody else's problem or inventing fanciful preprocessors! dev: Ah! [second, slightly longer thoughtful pause]... then, about ten weeks. Wayne Throop ...!mcnc!aurgate!throop