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: 6 Feb 2001 00:03:55 GMT
Date: 2001-02-06T00:03:55+00:00	[thread overview]
Message-ID: <95nf1b$9282@news.cis.okstate.edu> (raw)
In-Reply-To: 95nc12$62m$1@usenet.rational.com

On Mon, 5 Feb 2001 15:12:20 -0800, Mark Lundquist <mark@rational.com> wrote:
>> 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.
>
>Oh yeah... link-time errors, no pain there... :-)

Quote from language reference introduction (which explains the why and how
of many Modula-3 features):

| In the same spirit of simplicity, there is no separate typechecking 
| associated with generics. Implementations are expected to expand the 
| generic and typecheck the result. The alternative would be to invent 
| a polymorphic type system flexible enough to express the constraints 
| on the parameter interfaces that are necessary in order for the generic 
| body to compile. This has been achieved for ML and CLU, but it has not 
| yet been achieved satisfactorily in the Algol family of languages, 
| where the type systems are less uniform. (The rules associated with 
| Ada generics are too complicated for our taste.) 

(Note that this document was written prior to Ada 95.) 
The Introduction (http://www.research.compaq.com/SRC/m3defn/html/intro.html)
is an interesting look at the design of a "Algol family" (i.e. Ada, Oberon, 
the Modula's, Java) and some of the choices that could be made.

-- 
David Starner - dstarner98@aasaa.ofe.org
Pointless website: http://dvdeug.dhis.org
"I don't care if Bill personally has my name and reads my email and 
laughs at me. In fact, I'd be rather honored." - Joseph_Greg



  parent reply	other threads:[~2001-02-06  0:03 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
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 [this message]
     [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