Path: utzoo!attcan!uunet!lll-winken!lll-tis!helios.ee.lbl.gov!nosc!ucsd!ames!mailrus!uflorida!novavax!proxftl!bill From: bill@proxftl.UUCP (T. William Wells) Newsgroups: comp.misc Subject: Re: Basics of Program Design Message-ID: <536@proxftl.UUCP> Date: 25 Jul 88 03:18:30 GMT References: <901@td2cad.intel.com> <3061@rpp386.UUCP> <395@proxftl.UUCP> <505@proxftl.UUCP> Reply-To: bill@proxftl.UUCP (T. William Wells) Distribution: na Organization: Proximity Technology, Ft. Lauderdale Lines: 132 Summary: Expires: Sender: Followup-To: Keywords: In article webber@aramis.rutgers.edu (Bob Webber) writes: : < You know, I just finished writing a data compression program. : < That was over 3000 lines of code, better than half recursive : < routines. I, at least, know when to use recursion. And when and : < why to avoid it. : : I hardly see how the above allows you to deduce that you know when to : use recursion and when to avoid it. The above was an example, not a proof; it does not allow me to deduce anything. My knowledge of my abilities comes from the many years of programming I have done, a mind quite capable of judging its actions and their results, and plenty of evidence of my effectiveness. Like many programs out there in the real world. And one thing my mind is telling me is that we are not communicating. Because you have chosen a wrong position and are willing to go to any length to defend that wrong position. : I too have written many lines of : both recursive and non-recursive code -- so the same line of reasoning : would say that I too know when to use it and when to avoid it. Indeed, : more to the point, I have written a few (not just one) of these student : compiler projects that the original example was taken from. Where are the products you have produced? How might I evaluate what you have done? As for me, you can find my code in any Proximity spelling checker (other than the ones we put into typewriters). Like the ones used in Ashton-Tate products, and lots of others that I am not going to name-drop. As for you abilities, the only evidence I have of them is that you seem to believe that a recursive strlen is a good thing in C. And that your arguments for this include insults and vagueness. : <... : < Sigh. Don't you read carefully? I did NOT say to optimize : < strlen to death. I said to do the best job you can. That : : Yes I read carefully. ``The best job you can'' is a wonderfully : ambiguous phrase comparable to ``do it right.'' It has no meaning : outside of the context of the rest of the message. You are quite right. It does have to be taken in context. And the context, laboriously and frequently repeated by me, is that programming is a utilitarian art. The quality of an algorithm has to be judged by the context. You may interpret my "do the best job you can" as vaguely as you wish; however, the rest of us, who can read and understand what was read, will interpret it as it was intended. : <... : < The original point was the rather elementary fact that a : < recursive strlen is a bad idea, sufficiently bad that thinking of : < a recursive strlen algorithm as being good is idiotic. Just wait : : This is not an ``elementary fact'' -- it is sheer opinion. OK, it is not elementary. Obviously so, since you haven't grasped it. : < till you use said strlen on a machine with a few K of available : < stack space and you try a strlen on a long string. Boom. : : Boom? I thought the IBM-PC only did that when you messed around with : the graphics card. A misinterpretation on your part; no doubt everyone else who read the posting recognized this as idiom for a system crash. And I'm not talking about the IBM-PC, though I suppose that in your infinite ignorance you don't know of the many other useful machines that come with a limited amount of memory. : < Your reply is likely to be something of the order: why limit : < programmers to today's technology? And if that is so, we have : < nothing further to discuss. : : Why is it that people always come to conclusions like this at the : end of a long message? Because you provide the necessary evidence for them to come to this conclusion. : < < to run on an operating system that routinely crashes (such as UNIX) : < < or a chip as badly built as the 8086-family (what on earth were they : < < thinking about when they set up pointers -- surfing?)? The world does : < ^^^^^^^ : < Perhaps you are ignorant of history? They were thinking of : < COST. : : Considering how much it has COST everyone else, they must have had : alot to think about then. Again you are demonstrating your ignorance. That decision did not COST anyone anything. Rather, it made it possible to create a comparatively cheap microprocessor with some real power. This was valuable to those who made use of it; it did not COST them anything. But, like any technology, it gets outgrown; hindsight might tell you how to do it better, but that is not evidence of stupidity on the part of others. And like any outgrown technology it is restricts those who use it. And yes, they did have a lot to think about then. Like how to do the job at all. It was not easy, you can bet. : < Perhaps *your* UNIX routinely crashes, perhaps your compiler, : < editor, and other tools fail too often; but attitudes such as : < yours are the cause for your complaints. : : Actually, I suspect that the people who wrote ``my'' UNIX, compiler, : etc., are much more likely to agree with your view of programming. I very much doubt it, having seen the quality of most published code. MY code rarely has these faults. : < I have had enough of this discussion. I am not going to waste : < further time with someone whose position is so far removed from : < mine that he believes that, in C, a recursive strlen is as good : < as a nonrecursive one. : : This is hardly my position -- my position is that I believe that for : a student compiler project (particularly in the early stages of : development), a recursive strlen is BETTER than a nonrecursive one, : regardless of the programming language being used. : : --- BOB (webber@athos.rutgers.edu ; rutgers!athos.rutgers.edu!webber) Again, you didn't read. I HAVE HAD ENOUGH!!!!! My judgement of you is that you have vague thinking processes, backed up by unthinking evaluations, an overwhelming ignorance, and a loud mouth. You have gone into my kill file. You are the very first. Congratulations, you even beat weemba there.