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,6960ceaa57428e2f,start X-Google-Attributes: gid103376,public X-Google-ArrivalTime: 2000-11-14 19:32:28 PST Path: supernews.google.com!sn-xit-02!sn-xit-03!supernews.com!logbridge.uoregon.edu!arclight.uoregon.edu!wn4feed!worldnet.att.net!135.173.83.71!wnfilter1!worldnet-localpost!bgtnsc06-news.ops.worldnet.att.net.POSTED!not-for-mail Message-ID: <3A12041B.BCFD8CA0@worldnet.att.net> From: James Rogers X-Mailer: Mozilla 4.76 [en] (Win98; U) X-Accept-Language: en MIME-Version: 1.0 Newsgroups: comp.lang.ada Subject: Another important feature of Ada Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Date: Wed, 15 Nov 2000 03:32:27 GMT NNTP-Posting-Host: 12.74.129.159 X-Complaints-To: abuse@worldnet.att.net X-Trace: bgtnsc06-news.ops.worldnet.att.net 974259147 12.74.129.159 (Wed, 15 Nov 2000 03:32:27 GMT) NNTP-Posting-Date: Wed, 15 Nov 2000 03:32:27 GMT Organization: AT&T Worldnet Xref: supernews.google.com comp.lang.ada:2119 Date: 2000-11-15T03:32:27+00:00 List-Id: I have been following a thread between comp.lang.eiffel and comp.lang.c++.moderated. The thread is boiling down to a discussion of the virtues and vices of separating interface from implementation. The points being made against sepration of interface and implementation focus on a concept that duplication of code is BAD, and separation of interface and implementation requires some duplication of code. The points being made in favor of separation of interface and implementation are that separation more fully supports the needs of large scale software development teams. C++ supports this separation by means of the #include syntax inherited from C. Of course, the problem with the #include syntax is that it does not enforce the separation of interface and implementation. As in many other features of C/C++, this is left up to the discipline of the software developer. It is interesting that Ada has been cited as being possibly the perfect example of a language fully supporting and enfocing the separation of interface and implementation through the use of Ada bodies and specifications. Eiffel programmers feel separation of interface and implemenation is not beneficial because large Eiffel programs have been constructed without this feature. This is like saying that we do not need to have hammers in our toolbox. Any sufficiently large wrench can be used as a hammer with success. It is also possible that those same Eiffel programmers have never actually tried to produce large scale software, but only know of someone who has. This would naturally lead to the assumption that no particular problems were encountered due to a lack of separation of interface and implementation. Jim Rogers Colorado Springs, Colorado