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.2 required=5.0 tests=BAYES_00,INVALID_MSGID, REPLYTO_WITHOUT_TO_CC autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fac41,2c6139ce13be9980 X-Google-Attributes: gidfac41,public X-Google-Thread: 103376,3d3f20d31be1c33a X-Google-Attributes: gid103376,public X-Google-Thread: 1108a1,2c6139ce13be9980 X-Google-Attributes: gid1108a1,public X-Google-Thread: f43e6,2c6139ce13be9980 X-Google-Attributes: gidf43e6,public From: donh@syd.csa.com.au (Don Harrison) Subject: Re: Safety-critical development in Ada and Eiffel Date: 1997/07/21 Message-ID: #1/1 X-Deja-AN: 257906682 Sender: news@syd.csa.com.au X-Nntp-Posting-Host: dev50 References: Organization: CSC Australia, Sydney Reply-To: donh@syd.csa.com.au Newsgroups: comp.object,comp.software-eng,comp.lang.ada,comp.lang.eiffel Date: 1997-07-21T00:00:00+00:00 List-Id: Robert Dewar wrote: :Don Harrison says : :<> : : :My goodness, surprising that anyone would think this, but then I guess there :are people who really prefer uncontrolled anarchy. No, that's what you get when you don't practise formal software engineering where you need it. :) However, your view is quite justified in the case of Ada which doesn't support well-specified, safe-to-use software components to the extent that Eiffel does. In view of this, you're quite justified in perceiving a need to document in one place all the modules used by another. In contrast, because Eiffel *does* support safe reuse of components, it isn't as important to separately document the modules used. In any case, if you really want this in Eiffel, it's trivial to write an extraction tool to produce it. Implementations may already provide this. :To me one of the real advantages in Ada is that you know right away, right :at the start of the package, exactly what services are being used, See above. :and you can more easily excercise control over this. This is not true unless you have a CM tool which allows you to separately control the with-clauses of a package body and the rest of the body. I think most will agree this would be ridiculous. :If you let code anywwhere :reach anywhere easily, you have a recipe for mess. I agree for Ada. I don't agree for Eiffel which gives you a high level of confidence that you can reuse with impunity. Reusing certain modules may happen to be nonsensical but that's a design issue - not a reuse issue - and irrelevant to this argument. :The requirement to write a with clause is also the requirement to think :about whether it is appropriate for the unit you are in to "with" the :unit that you think you need. I disagree. An Eiffel software engineer thinks about this when they *use* a module. Don. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Don Harrison donh@syd.csa.com.au