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: f8c65,30e368bdb3310fe5 X-Google-Attributes: gidf8c65,public X-Google-Thread: 103376,30e368bdb3310fe5 X-Google-Attributes: gid103376,public X-Google-Thread: fac41,af40e09e753872c X-Google-Attributes: gidfac41,public X-Google-Thread: 109fba,f292779560fb8442 X-Google-Attributes: gid109fba,public X-Google-Thread: 1014db,30e368bdb3310fe5 X-Google-Attributes: gid1014db,public X-Google-Thread: 1008e3,30e368bdb3310fe5 X-Google-Attributes: gid1008e3,public X-Google-Thread: 10db24,30e368bdb3310fe5 X-Google-Attributes: gid10db24,public From: dewar@cs.nyu.edu (Robert Dewar) Subject: Re: The Last Word on Comments (was Re: Hungarian notation) Date: 1996/07/11 Message-ID: #1/1 X-Deja-AN: 167938616 references: <31bf6e29.185297643@netline-fddi.jpl.nasa.gov> <31C685A1.F1@wgs.estec.esa.nl> <4q79lr$ju5@panix3.panix.com> <4r1bdp$3ib@nntp.seflin.lib.fl.us> <4s3397$9ih@nntp.seflin.lib.fl.us> organization: Courant Institute of Mathematical Sciences newsgroups: comp.lang.ada,comp.lang.c++,comp.lang.c,comp.lang.modula3,comp.lang.modula2,comp.edu,comp.lang.eiffel Date: 1996-07-11T00:00:00+00:00 List-Id: Ralph said " if this is restricted to working code ^^^^^^^^^^^^ then code as distinct from comments, certainly, is authoritative in a way" Sorry, I totally reject this notion. Just because code is working does not mean that it is correct in the sense of meeting its internal specifications. If a procedure is supposed to do xxx, and is documented to do xxx, but actually does yyy, but it doesn't matter because in the current incarnation of the program (perhaps due to canceling bugs), it is OK that the procedure does yyy and does not affect the results, then the program STILL HAS A BUG! Furthermore it is a pernicious bug, because it is the sort of bug that causes "harmless" maintenance changes to make everything fall apart. Note this can be true even in the absence of explicit comments. For example if a routine called greater_than, actually computes less_than, but at the time the routine is used, everyone "knew" it was wrong, and fudged the calls, but no one documented what was going on, then you definitely have bugs in the program, and they are bugs that will cause real maintenance headaches.