comp.lang.ada
 help / color / mirror / Atom feed
* Is Modula-2 superior to Ada?
@ 1984-11-01 18:02 Bopsi ChandraMouli
  1984-11-15 17:56 ` colbert
  0 siblings, 1 reply; 2+ messages in thread
From: Bopsi ChandraMouli @ 1984-11-01 18:02 UTC (permalink / raw)



Recently I started reading  about Ada and I was surprised 
to a great extent that Modula-2 outshines Ada with respect
to interface specification of program units.

Things in Ada that I feel, are inferior to Modula-2 are:

1) You can not have anything else in the specification
part other than the ones you are exporting.
This can result in cumbersome specification.

2) Packages can not selectively IMPORT objects from other packages.
It is either ALL or NONE situation. This will have severe
impact on the readability of the source code.

     I feel that Modula-2's SELECTIVE import and export mechanisms 
     contribute to better PROGRAM READABILITY AND SCOPE
     CONTROL than Ada's import and export mechanisms.

3) For private and Limited private types you have to give
the  full representation of the types in the specification part itself.
This is really annoying. Even at the specification stage
you are forced to take a decision on the representation which
may not always be possible. Also, it is a good idea to 
hide the representation in addition to making it inaccessible outside
the package. The  specification part usually serves as 
a good documentation feature and why give other programmers some
details which are totally unnecessary.


   I am curious to know what others feel about these views.
Is there any good reason behind the design of such (Ada's)
interface specification mechanisms?

Bopsi Chandramouli
U. of. Alberta.

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~1984-11-15 17:56 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1984-11-01 18:02 Is Modula-2 superior to Ada? Bopsi ChandraMouli
1984-11-15 17:56 ` colbert

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