comp.lang.ada
 help / color / mirror / Atom feed
From: Mark T <mmt_taube@my-deja.com>
Subject: Re: Another important feature of Ada
Date: 2000/11/15
Date: 2000-11-15T00:00:00+00:00	[thread overview]
Message-ID: <8uu6tf$63d$1@nnrp1.deja.com> (raw)
In-Reply-To: 3A12041B.BCFD8CA0@worldnet.att.net



> 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.
>
    I do more C programming than Ada, but until I learned Ada I did not
fully appreciate "programming to an interface". I think it is one of the
best ways to get users of your modules to ignore the inner workings and
utilize the blackbox specification. When you have a 100,000 lines of
code everbody on the project can't be an expert on every LOC. The small
amount of subroutine name duplication doesn't seem to be much of problem
versus the benefit gained.

   On the other hand, the interface specification should fully point out
any limitations, etc, a "contract" needs to be fully defined for usage
of that module. (Sometimes programmers like to bury this info in the
implementation).



Sent via Deja.com http://www.deja.com/
Before you buy.




  parent reply	other threads:[~2000-11-15  0:00 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-11-15  3:32 Another important feature of Ada James Rogers
2000-11-15  0:00 ` mjsilva
2000-11-15  0:00   ` Brian Rogoff
2000-11-17  0:00     ` Scott Ingram
2000-11-15  0:00 ` Mark T [this message]
2000-11-15  0:00   ` Tucker Taft
2000-11-15  0:00     ` Laurent Guerby
2000-11-15  0:00     ` Ed Falis
2000-11-17  0:00       ` Jean-Pierre Rosen
2000-11-18  0:00         ` Ed Falis
2000-11-18  0:00           ` pete
2000-11-19  0:00             ` James Rogers
2000-11-19  0:00               ` Ray Blaak
2000-11-20  2:39                 ` Robert Dewar
2000-11-20  7:43                   ` Ehud Lamm
2000-11-21  0:00                   ` Ray Blaak
2000-11-21  0:00                     ` Robert Dewar
2000-11-20  7:47                 ` Ehud Lamm
2000-11-19  0:00               ` David Starner
2000-11-19  0:00             ` Jean-Pierre Rosen
2000-11-18  0:00           ` Karel Thoenissen
2000-11-19  0:00 ` Lao Xiao Hai
2000-11-20  0:00 ` Michel Gauthier
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox