From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Ada 2005 puzzle
Date: Sat, 28 Jul 2012 20:21:58 +0200
Date: 2012-07-28T20:21:58+02:00 [thread overview]
Message-ID: <l6n516v35cza$.cgfx8f7ofacj.dlg@40tude.net> (raw)
In-Reply-To: 50ba6370-c055-478a-af3d-3e31ae11da99@googlegroups.com
On Sat, 28 Jul 2012 09:59:27 -0700 (PDT), AdaMagica wrote:
> On Saturday, July 28, 2012 12:37:21 PM UTC+2, Dmitry A. Kazakov wrote:
>>> I see what you mean. But since no objects of abstract types may exist and
>>> somehow you have to provide the private components of derived nonprivate
>>> objects, the proper Ada way (as intended by ARG, I guess) is child
>>> packages.
>>
>> That changes nothing. An abstract type remains abstract. You can derive a
>> non-abstract (and thus necessarily broken) type from it and expose the
>> latter.
>
> I don't understand what you mean (for non-limited types; I see the problem for limited ones).
> Why is it necessarily broken? It has private and visible parts, so what?
You derive from the type for the sole purpose of being able to write a
function returning an instance of. But the initial reason of being abstract
was to prevent very existence of such functions because the type is
non-functional, abstract.
(The concept of construction per a function is unsound independently on the
limited/non-limited issue with regard to abstract types. An abstract type
may require initialization, but shall have no objects. Even if the
"limited" kludge worked, it would remain broken.)
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2012-08-01 2:50 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-12 12:54 Ada 2005 puzzle Dmitry A. Kazakov
2012-07-12 15:48 ` Adam Beneschan
2012-07-12 16:34 ` Dmitry A. Kazakov
2012-07-19 6:53 ` Randy Brukardt
2012-07-19 7:55 ` Dmitry A. Kazakov
2012-07-20 2:22 ` Randy Brukardt
2012-07-20 7:20 ` Dmitry A. Kazakov
2012-07-21 0:04 ` Randy Brukardt
2012-07-21 8:34 ` Dmitry A. Kazakov
2012-07-24 2:38 ` Randy Brukardt
2012-07-24 4:23 ` Adam Beneschan
2012-07-24 7:54 ` Dmitry A. Kazakov
2012-07-25 23:39 ` Randy Brukardt
2012-07-26 7:41 ` Dmitry A. Kazakov
2012-07-26 13:08 ` Simon Wright
2012-07-26 13:55 ` Dmitry A. Kazakov
2012-07-27 9:42 ` AdaMagica
2012-07-27 10:32 ` Dmitry A. Kazakov
2012-07-27 11:58 ` Georg Bauhaus
2012-07-27 13:04 ` Dmitry A. Kazakov
2012-07-28 9:48 ` AdaMagica
2012-07-28 10:37 ` Dmitry A. Kazakov
2012-07-28 16:59 ` AdaMagica
2012-07-28 18:21 ` Dmitry A. Kazakov [this message]
2012-07-19 8:04 ` Maciej Sobczak
[not found] ` <juaghb$fv9$1@munin.nbi.dk>
2012-07-20 7:30 ` Dmitry A. Kazakov
2012-07-21 17:21 ` Vasiliy Molostov
2012-07-21 19:03 ` Dmitry A. Kazakov
2012-07-21 19:37 ` Vasiliy Molostov
2012-07-21 20:23 ` Dmitry A. Kazakov
2012-07-21 20:53 ` Vasiliy Molostov
2012-07-22 7:41 ` Dmitry A. Kazakov
2012-07-22 8:00 ` Vasiliy Molostov
2012-07-22 8:19 ` Dmitry A. Kazakov
2012-07-22 9:06 ` Vasiliy Molostov
2012-07-22 9:34 ` Dmitry A. Kazakov
2012-07-20 8:09 ` Maciej Sobczak
2012-07-20 8:27 ` Dmitry A. Kazakov
2012-07-20 11:30 ` Maciej Sobczak
2012-07-20 12:49 ` Dmitry A. Kazakov
2012-07-21 22:46 ` Maciej Sobczak
2012-07-22 8:03 ` Dmitry A. Kazakov
2012-07-22 10:08 ` Florian Weimer
2012-07-22 11:18 ` Dmitry A. Kazakov
2012-07-21 0:12 ` Randy Brukardt
2012-07-22 9:52 ` Florian Weimer
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox