From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 1014db,dab7d920e4340f12 X-Google-Attributes: gid1014db,public X-Google-Thread: 103376,dab7d920e4340f12 X-Google-Attributes: gid103376,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: C is 'better' than Ada because... Date: 1996/07/16 Message-ID: #1/1 X-Deja-AN: 169247868 references: <31daad10.57288085@netline-fddi.jpl.nasa.gov> <4rgqp7$iv6@btmpjg.god.bel.alcatel.be> <31e02c32.342948604@netline-fddi.jpl.nasa.gov> <4rvr2j$2gb0@info4.rus.uni-stuttgart.de> <31ebfbd7.330061022@netline-fddi.jpl.nasa.gov> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada,comp.lang.c Date: 1996-07-16T00:00:00+00:00 List-Id: Kevin said "What I said is that it's as easy to write high-quality software in assembler as it is in any language. It's not the language that's the problem. It's the programmer. A high-quality programmer will turn out high-quality code regardless of the language, and a poor programmer will turn out poor quality code no matter how hard the language tries to prevent him." This is in my experience (which incidentally includes having written at least half a million lines of delivered commercial assembly language, and more than half a million lines of dlivered commercial code in high level languages, in case you think I am talking from the ivorty tower) complete and utter nonsense. It is FAR harder to write in assembler than it is in a well designed higher level language. There are several reasons. Redundancy, e.g. strong type checking, allows mistakes to be found by the compiler that otherwise have to be found by tedious testing (nothing in assembler stops you doing an integer add on floating point numbers by accident). Baroque and peculiar semantic environments. Almost all machines, even most RISC machines have odd corners and irregularities that intefere with clean design. Having to remember the contents of a register file is a big burden. It is as though you were forced to name your variables silly short names in a high level language and then alias them desperately. etc. many more reasons In my experience anyone who thinks this is true is unlikely to be generaing high quality software in *either* assembler *or* in a high level language, since that is really the only circumstance under which the claim of "it's equally easy for me" could possibly be true. I have had the misfortune true of trying to read poorly written Ada code, but it is nothing compared to the much greater misfortune of trying to read poorly written assembler code!