comp.lang.ada
 help / color / mirror / Atom feed
From: dvdeug@x8b4e53cd.dhcp.okstate.edu (David Starner)
Subject: Re: Generics - Difference between ADA and Modula--3
Date: 2 Feb 2001 18:35:57 GMT
Date: 2001-02-02T18:35:57+00:00	[thread overview]
Message-ID: <95eumd$8i41@news.cis.okstate.edu> (raw)
In-Reply-To: 956ols$qtv$1@news.cis.ohio-state.edu

On 30 Jan 2001 16:04:12 GMT, Mark Carroll <carroll@cis.ohio-state.edu> wrote:
>In article <3a7646fb$1@rsl2.rslnet.net>,
>John Baltomoire <bfaws@REMOVEDISiname.com> wrote:
>>Hey, I having trouble figuring out all the differences between modula and
>>ada's implemenation of generics.... anyone got any insight or could send me
>>in the right direction?
>
>General comparison between Modula-3 and Ada would be interesting,
>actually. (-:

Like what? I can give a short overview, but I'm not sure it will
be helpful.

Modula-3 is designed to be garbage-collected, and provides controls to
handle stuff without garbage-collections.
Ada is designed so that it is possible to garbage-collect it. It's
only garbage-collected on the JVM's, which don't give you any control.
If there was another GC implementation, any garbage-collection control
would be implementation-specific.

Ada designers made perfectly type-safe generics. Modula-3 designers looked
at Ada generics and C++ templates and decided the Ada generics were too much
of a PITA and went with a C++-style design that catches mistakes at link-time
rather than compile-time.

Modula-3 enforces information-hiding by putting what would be in Ada's 
private section into the body, at the cost of doing everything through
pointers (implementation detail.)

I don't believe Modula-3 has operator overloading.

Modula-3 compares types by value instead of by name, and introduces brands
to compensate for that.

Modula-3 has sets, whereas Ada's designers decided that packed arrays of
boolean sufficed.

Modula-3 unifies a lot of stuff under expections (like loop-exits and returns)
for (IMO) little gain and more confusion.

Modula-3 (proper) has a very minimal library, with huge "implementation
specific" additions (not a big deal, since every existing implementation 
derives from the DEC one and shares those additions.) Ada has a decent size
library, with moderate additions provided by most implementors that are
usually implementation specific in practice as well as theory.

Modula-3 tried for a goal of a 50 page standard, and (IMO) ended up cramming
a larger language into 50 pages, with the resulting ambigiuties. While the
Ada standard is more readable than most, it is more formal and less ambigious
than the M3 one.

-- 
David Starner - dstarner98@aasaa.ofe.org
Pointless website: http://dvdeug.dhis.org



  reply	other threads:[~2001-02-02 18:35 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-01-30  4:48 Generics - Difference between ADA and Modula--3 John Baltomoire
2001-01-30 16:04 ` Mark Carroll
2001-02-02 18:35   ` David Starner [this message]
2001-02-05 20:51     ` Mark Carroll
2001-02-05 21:46       ` David Starner
2001-02-06  0:36         ` Jeffrey Carter
2001-02-05 22:46       ` Pat Rogers
     [not found]       ` <95p1p7$3s9$1@nnrp1.deja.com>
     [not found]         ` <slrn98049v.155.lutz@taranis.iks-jena.de>
2001-02-07 13:10           ` John English
2001-02-12 20:38       ` Mark Carroll
2001-02-05 23:12     ` Mark Lundquist
2001-02-05 23:50       ` David Starner
2001-02-06  0:03       ` David Starner
     [not found] <mailman.981529807.716.comp.lang.ada@ada.eu.org>
2001-02-07 14:52 ` Ted Dennison
replies disabled

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