comp.lang.ada
 help / color / mirror / Atom feed
From: Francisco Javier Loma Daza <Francisco.Loma@isotrol.com>
To: comp.lang.ada@ada.eu.org
Subject: Re: on package naming, should the word "_pkg" be part of it?
Date: Wed, 10 Oct 2001 12:27:49 +0200
Date: 2001-10-10T12:27:49+02:00	[thread overview]
Message-ID: <mailman.1002709695.2674.comp.lang.ada@ada.eu.org> (raw)
In-Reply-To: <3bc40fef.1827097@news.demon.co.uk>



On Wed, 10 Oct 2001, john.mccabe@emrad.com.nospam (John McCabe) wrote:
> Date: Wed, 10 Oct 2001 09:47:04 GMT
> To: comp.lang.ada@ada.eu.org
> From: john.mccabe@emrad.com.nospam (John McCabe)
> Reply-To: comp.lang.ada@ada.eu.org
> Sender: comp.lang.ada-admin@ada.eu.org
> Subject: Re: on package naming, should the word "_pkg" be part of it?
> 
> On Wed, 10 Oct 2001 08:04:10 GMT, john.mccabe@emrad.com.nospam (John
> McCabe) wrote:
> 
> Francisco
> 
> I've just been reminded of where the problem lies with respect to the
> use of Object as a 'class' name (with thanks to Martin Ellerker).
> 
> Consider the following Parent and Child classes (similar to what I
> mentioned in my earlier message):
> 
> File: GParent.ads
> -----------------
> generic
> package GParent is
>    type Object is abstract tagged null record;
> end GParent;
> 
> File: GParent-GChild.ads
> ------------------------
> with GParent;
> generic
> package GParent.GChild is
>    type Object is new GParent.Object with null record;
> end GParent.GChild;
> 
> Separate library level instantiations are provided as follows:
> 
> File: IParent.ads
> -----------------
> with GParent;
> package IParent is new GParent;
> 
> File: IChild.ads
> ----------------
> with IParent;
> with GParent.GChild;
> package IChild is new IParent.GChild;
> 
> So far so good. A test program as follows compiles and runs without
> error (unless I've typed something in wrongly)
> 
> File: TestG.adb
> ---------------
> with IChild;
> procedure TestG is
> begin
>    null;
> end TestG;
> 
> 
> Now, however, if you then have a third level of Generic class, say..
> 
> File: GParent-GChild-GGChild.ads
> --------------------------------
> with GParent.GChild;
> generic
> package GParent.GChild.GGChild is
>    type Object is new GParent.GChild.Object with null record;
> end GParent.GChild.GGChild;
> 
> and instantiate it with:
> 
> File: IGChild.ads
> -----------------
> with IChild;
> with GParent.GChild.GGChild;
> package IGChild is new IChild.GGChild;
> 
> and change the test program to:
> 
> File: TestG.adb
> ---------------
> with IGChild;      -- Change to IGChild from IChild.
> procedure TestG is
> begin
>    null;
> end TestG;
> 
> we get the error:
> 
> igchild.ads:3:01: instantiation error at gparent-gchild-ggchild.ads:4
> igchild.ads:3:01: "GChild" not declared in "IParent".
> 
> The cause of this is the explicit reference in line 4 of
> GParent-GChild-GGChild.ads to GParent.GChild.Object. Since IChild is
> the instantiation of GChild, it is IChild that, at this point,
> declares the GGChild 'class' we're interested in, not GParent.GChild.
> 
> We could attempt to use the child-to-parent visibility rules to allow
> use to change GParent.Object and GParent.GChild.Object into just
> Object and Object, but then the scoping rules cause problems with
> errors:
> 
> gparent-gchild.ads:4:24: object "Object" cannot be used before end of
> its declaration
> gparent-gchild-ggchild.ads:4:24: object "Object" cannot be used before
> end of its declaration
> 
> So there you go.


	The problem is not in naming 'Object' the types, but the extra level
(innecesary) of qualification for the parent object name
	GParent.GChild.Object new GChild.Object will work. Escecifying
Gparent.G... references to generic (uninstanciated) package.

	Try to name with different names all the types
gParent.Object1
gParent.gChild.Object2
gparent.gChild.ggChild.Object3

and the problem still alive, so the problem is not this naming convention.
I'm wrong?



  parent reply	other threads:[~2001-10-10 10:27 UTC|newest]

Thread overview: 130+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-10-04 19:58 on package naming, should the word "_pkg" be part of it? mike
2001-10-04 20:34 ` Larry Hazel
2001-10-04 20:54   ` Pascal Obry
2001-10-04 21:04   ` on package naming, should the word Ted Dennison
2001-10-04 22:00     ` Preben Randhol
2001-10-04 22:13       ` Brian Rogoff
2001-10-04 23:38         ` Larry Kilgallen
2001-10-04 23:43           ` Preben Randhol
2001-10-05  0:40             ` MM
2001-10-05  3:22               ` Brian Rogoff
2001-10-04 22:09     ` tmoran
2001-10-05 14:21       ` Ted Dennison
2001-10-04 20:53 ` on package naming, should the word "_pkg" be part of it? Marin David Condic
2001-10-05  9:24   ` John McCabe
2001-10-05 10:35     ` mike
2001-10-05 13:29       ` Stephen Leake
2001-10-05 14:17         ` mike
2001-10-05 14:39       ` on package naming, should the word Ted Dennison
2001-10-05 15:07         ` mike
2001-10-05 15:56           ` Ted Dennison
2001-10-05 16:12             ` Francisco Javier Loma Daza
2001-10-06  9:16               ` Simon Wright
2001-10-06 12:36               ` Marc A. Criley
2001-10-05 16:52       ` on package naming, should the word "_pkg" be part of it? Jeffrey Carter
2001-10-05 12:54     ` Marin David Condic
2001-10-05 17:11     ` Jeffrey Carter
2001-10-05 18:52       ` Wes Groleau
2001-10-05 19:17       ` Vincent Marciante
2001-10-08  8:26         ` John McCabe
2001-10-05  1:55 ` Jeffrey Carter
2001-10-06  9:25   ` Simon Wright
2001-10-07 19:49     ` Jeffrey Carter
2001-10-07 21:12       ` Brian Rogoff
2001-10-08 14:51       ` Stephen Leake
2001-10-08 16:11         ` Francisco Javier Loma Daza
2001-10-08 16:17           ` John McCabe
2001-10-09  7:41             ` Francisco Javier Loma Daza
2001-10-10  8:04               ` John McCabe
2001-10-10  9:47                 ` John McCabe
2001-10-10 10:17                   ` Francisco Javier Loma Daza
2001-10-10 10:27                   ` Francisco Javier Loma Daza [this message]
2001-10-10 12:50                     ` John McCabe
2001-10-10 13:41                       ` Francisco Javier Loma Daza
2001-10-08 16:25         ` Robert*
2001-10-08 19:50           ` Matthew Woodcraft
2001-10-08 16:37         ` on package naming, should the word Ted Dennison
2001-10-08 16:41         ` on package naming, should the word "_pkg" be part of it? Vincent Marciante
2001-10-08 18:50           ` Stephen Leake
2001-10-08 19:46             ` Vincent Marciante
2001-10-08 16:58         ` Jeffrey Carter
2001-10-08 19:06           ` Stephen Leake
2001-10-08 19:43             ` Brian Rogoff
2001-10-09 14:22               ` on package naming, should the word Ted Dennison
2001-10-10  5:24                 ` Richard Riehle
2001-10-09 23:02               ` on package naming, should the word "_pkg" be part of it? Darren New
2001-10-10  0:55                 ` Brian Rogoff
2001-10-10  1:48                   ` Robert*
2001-10-10  2:28                     ` Brian Rogoff
2001-10-10 15:10                       ` Darren New
2001-10-10 18:38                         ` tmoran
2001-10-10 19:30                           ` Darren New
2001-10-10  9:51                     ` Larry Kilgallen
2001-10-10 13:05                     ` John McCabe
2001-10-10 15:37                       ` Pascal Obry
2001-10-10 17:05                         ` Steven Deller
2001-10-10 17:54                           ` Pascal Obry
2001-10-11  8:35                         ` John McCabe
2001-10-10 15:53                       ` M. A. Alves
2001-10-10 18:53                         ` Robert*
2001-10-11  6:54                           ` Preben Randhol
2001-10-11 12:07                             ` Robert*
2001-10-11 12:40                               ` Lutz Donnerhacke
2001-10-11 14:24                                 ` Marin David Condic
2001-10-11 15:17                                   ` Larry Kilgallen
2001-10-11 15:34                                   ` Robert*
2001-10-11 17:41                                     ` David Starner
2001-10-12  8:25                                       ` John McCabe
2001-10-12  9:07                                         ` Ian Wild
2001-10-12 10:16                                           ` John McCabe
2001-10-12 12:04                                             ` Ian Wild
2001-10-12 17:01                                         ` Jeffrey Carter
2001-10-15  8:18                                           ` John McCabe
2001-10-15 18:21                                             ` Jeffrey Carter
2001-10-15 19:00                                               ` Pascal Obry
2001-10-15 20:26                                             ` on package naming, should the word Ted Dennison
2001-10-15 20:52                                               ` Robert*
2001-10-15 21:57                                                 ` Ted Dennison
2001-10-15 22:40                                                 ` Jeffrey Carter
2001-10-16  8:40                                                 ` Jean-Pierre Rosen
2001-10-16 12:49                                               ` John McCabe
2001-10-16 16:57                                                 ` Jeffrey Carter
2001-10-17  8:23                                                   ` John McCabe
2001-10-11 18:37                                     ` on package naming, should the word "_pkg" be part of it? M. A. Alves
2001-10-11 19:39                                       ` on package naming, should the word Ted Dennison
2001-10-12 11:23                                         ` M. A. Alves
2001-10-13 17:32                                           ` Richard Riehle
2001-10-11 21:03                                       ` on package naming, should the word "_pkg" be part of it? Preben Randhol
2001-10-12  8:35                                         ` John McCabe
2001-10-12 11:35                                           ` M. A. Alves
2001-10-11 21:01                                     ` Preben Randhol
2001-10-12  2:04                                       ` David Starner
2001-10-12  9:02                                         ` Preben Randhol
2001-10-12 19:15                                           ` David Starner
2001-10-13 11:26                                             ` Preben Randhol
2001-10-12  2:29                                       ` Brian Rogoff
2001-10-12  8:45                                         ` Preben Randhol
2001-10-12 10:20                                           ` John McCabe
2001-10-12 14:54                                           ` on package naming, should the word Ted Dennison
2001-10-12 19:21                                           ` on package naming, should the word "_pkg" be part of it? David Starner
2001-10-12 21:23                                             ` Vector..
2001-10-13  2:13                                               ` Brian Rogoff
2001-10-13  3:21                                             ` Mark Biggar
2001-10-15 16:18                                       ` John McCabe
2001-10-11 13:19                               ` Preben Randhol
2001-10-11 13:42                               ` on package naming, should the word Ted Dennison
2001-10-11 15:18                                 ` Robert*
2001-10-11 15:47                                   ` Ted Dennison
2001-10-11 16:15                                   ` Larry Kilgallen
2001-10-11 16:15                                   ` Marin David Condic
2001-10-11 20:16                                   ` Simon Wright
2001-10-12  8:33                                     ` John McCabe
2001-10-12 16:27                                       ` Darren New
2001-10-14 20:34                                   ` Jacob Sparre Andersen
2001-10-14 22:03                                     ` Robert*
2001-10-15 12:04                                       ` Lutz Donnerhacke
2001-10-15 21:17                                         ` Florian Weimer
2001-10-15  6:50                               ` on package naming, should the word "_pkg" be part of it? Mats Karlssohn
2001-10-15 10:24                                 ` Larry Kilgallen
2001-10-18 16:23           ` Robert A Duff
2001-10-05  6:05 ` MM
replies disabled

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