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.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,4c459ff0adb576bc X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2002-02-03 05:53:20 PST Path: archiver1.google.com!postnews1.google.com!not-for-mail From: dewar@gnat.com (Robert Dewar) Newsgroups: comp.lang.ada Subject: Re: Refactoring and Ada Date: 3 Feb 2002 05:53:19 -0800 Organization: http://groups.google.com/ Message-ID: <5ee5b646.0202030553.6431291a@posting.google.com> References: <3C5AB0B7.9D75D49A@grammatech.com> NNTP-Posting-Host: 205.232.38.244 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Trace: posting.google.com 1012744400 27302 127.0.0.1 (3 Feb 2002 13:53:20 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: 3 Feb 2002 13:53:20 GMT Xref: archiver1.google.com comp.lang.ada:19559 Date: 2002-02-03T13:53:20+00:00 List-Id: "Nick Roberts" wrote in message news:... > I think it's arguable whether that actually counts as > refactoring. > Do the semantics really remain the same Yes > could the change have been made, Yes > safely, by a purely mechanised algorithm? Yes, > (I don't think so. And if it could, the algorithm would have to be fiendishly complex, no?) No > I have never personally heard of any Ada 83 program being > re-engineered into Ada 95 whilst -- and this is the > crucial bit -- retaining the same semantics (not just > 'effectively the same', as above). I find this surprising, since we see it all the time. Nick I can't guess what Ada environment you inhabit if you never saw this. It is indeed common for users to take large Ada 83 codes and reengineer them into Ada 95, using Ada 95 constructs to clean up the code (Pat's use type example), or to improve efficiency (e.g. replacing "passive" tasks by protected types). Another example is adding pragnma Preelaborate where possible to reduce elaboration checking (that's something that could certainly be automated). Robert Dewar