Path: utzoo!utgpu!watmath!clyde!att!rutgers!mailrus!ncar!tank!nucsrl!accuvax.nwu.edu!bob From: bob@accuvax.nwu.edu (Bob Hablutzel) Newsgroups: comp.sys.mac Subject: Re: The Mythical Man Month Message-ID: <10330090@accuvax.nwu.edu> Date: 2 Dec 88 14:38:08 GMT References: <6176@fluke.COM> Organization: Northwestern U, Evanston IL, USA Lines: 40 >> The only reason HOLs are considered an advantage is because most >> programmers are really coders > >Assembly language is inherently more complex, leading to less real work done, >and more time wasted on complexities that are not a part of the real problem >(the real problem is getting the job done, correctly, not organizing register >usage for every line of code you write, etc.). Thus HOLs are an advantage >because they help reduce complexity. The lines-of-code stat is a side effect >(and should be taken with a grain of salt, as should any software metric). Assembly language is _not_ inherently more complex. I program in assembler as my language of choice for two reasons: (1) I tend toward projects which either have to be very small, very fast, or very intimate with the operating system, and (2) I can understand better what is happening in a program I write in Assembler. The problem is not inherent complexity, it's familiarity. I will admit that one has to track register usage, and that this can sometimes be snarled. However, I cannot think of any other disadvantage of assembler, provided you have a decent Macro based assembler. (MACRO on VMS and MPW Assembler both fit this bill). The final difference here is that I am most comfortable with assembler, and therefore work fastest in it. Whenever I try to switch to Pascal, or any other high level language, I envision my code in assembler, and translate it to the high level language. I do not advocate assembler for everyone, but for me it is the language of choice; I am highly productive in it; and I wish people would stop maligning it. I started this whole discussion ( I think :-)) when I said that compilers do not produce as efficient code as hand written assembly. To my mind, _every_ piece of code should be as efficient as possible; anything else is simply wasting the users time. (Granted, a microsecond wasted is not a loss. But these things add up). If compilers truly did generate code as efficiently as assemblers, why, tell me why, nearly everyone agrees that "For time critical or tight loops assembler should be used to optimize" Tell me: What code is non-critical? Bob Hablutzel BOB@NUACC.ACNS.NWU.EDU Disclaimer: These opinions are obviously mine - no one else wants them.