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=0.7 required=5.0 tests=BAYES_00,INVALID_DATE, MSGID_SHORT,REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 Path: utzoo!attcan!uunet!lll-winken!sol.ctr.columbia.edu!emory!hubcap!billwolf%hazel.cs.clemson.edu From: billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe, 2847 ) Newsgroups: comp.lang.ada Subject: Re: problems/risks due to programming language, stories requested Message-ID: <8211@hubcap.clemson.edu> Date: 2 Mar 90 19:26:01 GMT References: <5694@crdgw1.crd.ge.com> Sender: news@hubcap.clemson.edu Reply-To: billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu List-Id: >From hammondr@sunroof.crd.ge.com (Richard A Hammond): % | | In the switching software (written in C), there was a long % | | "do . . . while" construct, which contained % | | a "switch" statement, which contained % | | an "if" clause, which contained a % | | "break," which was intended for % | | the "if" clause, but instead broke from % | | the "switch" statement. > > Which doesn't support any conclusion other than the programmer didn't know > the language. Not exactly. There is a lack of orthogonality in that similar flow-of-control constructs do not terminate in similar ways. If one is using the if statement, termination is automatic. If one is using the switch statement, a break is required. It is this lack of orthogonality which leads to potential problems. Bill Wolfe, wtwolfe@hubcap.clemson.edu