comp.lang.ada
 help / color / mirror / Atom feed
From: Shark8 <onewingedshark@gmail.com>
Subject: Re: GNAT GPL 2013 bug?
Date: Sat, 10 Aug 2013 08:10:29 -0700 (PDT)
Date: 2013-08-10T08:10:29-07:00	[thread overview]
Message-ID: <bf54bc3d-f9e5-489a-a5b4-38a3b716ad2d@googlegroups.com> (raw)
In-Reply-To: <6ee1653b-7232-4a32-940d-25bb556a19d4@googlegroups.com>

On Friday, August 9, 2013 2:30:40 PM UTC-6, Adam Beneschan wrote:
> 
> It doesn't seem particularly useful to declare an untagged private type whose full type is something that only the package, or a child package, could derive types from.

I think I used this in one of my starts for a PostScript Interpreter. Postscript objects forming a hierarchy and all. So it could be useful if you are implementing something which has a common set of properties in implementation that are irrelevant to the actual client.

> Unfortunately, Ada doesn't have the concept of a "tagged type from which nothing can be derived".  That concept would be useful so that one could declare a type derived from Ada.Finalization.Controlled or some other tagged type, but declare that no other types may be derived from it, so that *new* operations declared for the type wouldn't have to be dispatching.

Good point; but on the flipside there's lots of workarounds for final objects in Java. So a choice either way has problems. IMO.


  parent reply	other threads:[~2013-08-10 15:10 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-08-09  9:47 GNAT GPL 2013 bug? Dmitry A. Kazakov
2013-08-09 10:38 ` sbelmont700
2013-08-09 11:01   ` Dmitry A. Kazakov
2013-08-09 11:06     ` sbelmont700
2013-08-09 11:36       ` Dmitry A. Kazakov
2013-08-09 15:48     ` Adam Beneschan
2013-08-09 16:11       ` Simon Wright
2013-08-09 16:52         ` Adam Beneschan
2013-08-09 18:25           ` Simon Wright
2013-08-09 18:39             ` Adam Beneschan
2013-08-09 19:28               ` Adam Beneschan
2013-08-09 20:05                 ` Robert A Duff
2013-08-09 20:30                   ` Adam Beneschan
2013-08-09 21:35                     ` Simon Wright
2013-08-10 15:10                     ` Shark8 [this message]
2013-08-09 16:03     ` Simon Wright
2013-08-09 18:55     ` Randy Brukardt
2013-08-09 19:27       ` Dmitry A. Kazakov
2013-08-09 20:04         ` Robert A Duff
2013-08-10  6:51           ` Dmitry A. Kazakov
2013-08-12 16:52             ` Adam Beneschan
2013-08-12 17:03               ` Dmitry A. Kazakov
2013-08-12 17:20                 ` Adam Beneschan
2013-08-12 18:34                   ` Dmitry A. Kazakov
2013-08-12 20:12             ` Randy Brukardt
2013-08-13  6:43               ` 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