comp.lang.ada
 help / color / mirror / Atom feed
From: Simon Wright <simon@pushface.org>
Subject: Re: ANN: Ada 2005 Math Extensions, 20100810 release
Date: Fri, 13 Aug 2010 23:04:17 +0100
Date: 2010-08-13T23:04:17+01:00	[thread overview]
Message-ID: <m28w4aw4ny.fsf@pushface.org> (raw)
In-Reply-To: op.vhd7z3z5ule2fv@garhos

"Yannick Duchêne (Hibou57)" <yannick_duchene@yahoo.fr> writes:

> Le Fri, 13 Aug 2010 21:50:07 +0200, Simon Wright <simon@pushface.org>
> a écrit:
>> I've more often come across the latter.
>>
>> Could consider
>>
>> generic
>>    type Formal_Foo is ...
>> package Generic_S is
>>    subtype Foo is Formal_Foo;
>>
> The trouble with this one, is that it move the case to the client
> side... I would not like to generic instantiations “obfuscated” with
> all of those  Formal_Foo (I always use named parameter
> associations... especially with  generic instantiations).
>
> The Dmitry way, which is also the one I use, end to be less intrusive,
> as the client of the generic package is less likely to have to spell
> this  somewhere (except if it/he/she has to use a formal parameter of
> a given  instantiated package to instantiate another).

Well, I couldn't see how Dmitry's "Foo_Of" would make sense as it was
being read.

   procedure P (Q : Generic_S.Foo_Of);   -- huh?

I suppose one could say

   generic
      type Foo is ...
   package Generic_S is
      subtype Actual_Foo is Foo;

(since we're adopting the "spelt-out prefix" style, Generic_, rather
than the "abbreviated suffix" style, _G !)

though I see that the last time I used it was the other way round ..

   generic
      type Actual_Foo is ...
   package Generic_S is
      subtype Foo is Actual_Foo;



  reply	other threads:[~2010-08-13 22:04 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-08-10 21:38 ANN: Ada 2005 Math Extensions, 20100810 release Simon Wright
2010-08-11 11:40 ` Ada novice
2010-08-11 21:38 ` Simon Wright
2010-08-12  5:57   ` Dmitry A. Kazakov
2010-08-12 19:45     ` Simon Wright
2010-08-13  6:27       ` Dmitry A. Kazakov
2010-08-13  6:54         ` Ludovic Brenta
2010-08-13 13:36           ` Yannick Duchêne (Hibou57)
2010-08-13  7:42         ` Georg Bauhaus
2010-08-13  8:40           ` Dmitry A. Kazakov
2010-08-13 13:41             ` Yannick Duchêne (Hibou57)
2010-08-13 13:57               ` Dmitry A. Kazakov
2010-08-13 13:31         ` Yannick Duchêne (Hibou57)
2010-08-13 13:48           ` Dmitry A. Kazakov
2010-08-13 19:50         ` Simon Wright
2010-08-13 20:17           ` Yannick Duchêne (Hibou57)
2010-08-13 22:04             ` Simon Wright [this message]
2010-08-13 22:28               ` Yannick Duchêne (Hibou57)
2010-08-13 22:30                 ` Yannick Duchêne (Hibou57)
2010-08-14 16:12                 ` Simon Wright
2010-08-14 17:16                   ` Dmitry A. Kazakov
2010-08-14 17:34                     ` Jeffrey Carter
2010-08-14 19:18                       ` Simon Wright
2010-08-14 23:51                         ` Georg Bauhaus
2010-08-15  0:57                           ` Yannick Duchêne (Hibou57)
2010-08-15  2:27                           ` Jeffrey Carter
2010-08-12 10:36   ` Stephen Leake
2010-08-12 12:48     ` sjw
2010-08-14  1:05       ` Stephen Leake
2010-08-14 16:26         ` Simon Wright
2010-08-14 17:24           ` Dmitry A. Kazakov
2010-08-14 19:16             ` Simon Wright
2010-08-14 20:48               ` Dmitry A. Kazakov
2010-08-14 21:55                 ` Simon Wright
2010-08-15  6:14                   ` Dmitry A. Kazakov
2010-08-15 17:06                     ` Simon Wright
2010-08-15 18:18                       ` Dmitry A. Kazakov
replies disabled

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