TEAM-ADA Archives

Team Ada: Ada Programming Language Advocacy

TEAM-ADA@LISTSERV.ACM.ORG

Options: Use Forum View

Use Monospaced Font
Show HTML Part by Default
Condense Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Mime-Version:
1.0
Sender:
"Team Ada: Ada Advocacy Issues (83 & 95)" <[log in to unmask]>
X-To:
Christoph & Ursula Grein <[log in to unmask]>
Date:
Fri, 26 Sep 1997 17:28:27 -0400
Reply-To:
"Robert I. Eachus" <[log in to unmask]>
Subject:
From:
"Robert I. Eachus" <[log in to unmask]>
X-cc:
In-Reply-To:
Content-Type:
text/plain; charset="us-ascii"
Parts/Attachments:
text/plain (33 lines)
At 09:31 PM 9/26/97 DST, Christoph & Ursula Grein wrote:
>A long time ago, [log in to unmask] wrote:
>
>> One of the main headaches this causes occurs when you already have
>> a tagged hierarchy of types. You want to derive off from it, but
>> you want the new type to have controlled behavior. There is no
>> good way to do this.
>
>This is wrong! You should have said: There is NO way to do this.
>
>I took the challenge, you know, and fought my way thru all kinds of thorny
>brushes, and finally I thought I had found a solution for the non-limited
>type, albeit only a Gnat-dependent one (you cannot use the 'Unchecked_Access
>attribute, you have to use the Gnat-defined 'Unrestricted_Access).

    I will certainly agree that the realistic state of affairs is that it
is doable for limited types, but at best too difficult for even top notch
software engineers to support for non-limited types.  The one case where I
tried this, and with a much earlier version of GNAT, the right solution was
to make the type limited.  In fact, making the parent type limited broke
none of the existing code.

    So this leaves us with an interesting question. Is this a missing
feature of the language that should be added in the next revision?  Or a
feature that can be supplied by implementors in a clean integrated way?  Or
something that just isn't worthwile enough to add?

                                        Robert I. Eachus

with Standard_Disclaimer;
use  Standard_Disclaimer;
function Message (Text: in Clever_Ideas) return Better_Ideas is...

ATOM RSS1 RSS2