From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Anonymous Access and Accessibility Levels
Date: Tue, 23 Apr 2019 09:44:27 +0200
Date: 2019-04-23T09:44:27+02:00 [thread overview]
Message-ID: <q9mfor$1fn6$1@gioia.aioe.org> (raw)
In-Reply-To: q9le67$cc0$1@franka.jacob-sparre.dk
On 2019-04-23 00:11, Randy Brukardt wrote:
> (3) Think three times before depending upon access parameter dispatching and
> anonymous access-to-subprograms.
So long there is no way to pass a subprogram as a parameter anonymous
access to subprogram remain unavoidable.
One could use a generic, but 1) it is very heavy weight and 2) the
instance of cannot be primitive operation:
type T is tagged ...
procedure Foo (X : in out T; F : <subprogram>);
What do you have against dispatching access parameters? I think of it as
once we have access types, we should also have controlling access
parameters. If we want to push for all named access types then we need
some form of multi-methods:
type T is tagged ...
type T_Ptr is access T;
procedure Foo (X : T_Ptr); -- I want this in T'Class, somehow
type S is new T with ...;
overriding procedure Foo ... -- How?
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2019-04-23 7:44 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-04-20 15:29 Anonymous Access and Accessibility Levels Jere
2019-04-20 15:58 ` J-P. Rosen
2019-04-22 22:03 ` Randy Brukardt
2019-04-24 10:42 ` Jere
2019-04-24 23:27 ` Randy Brukardt
2019-04-26 2:47 ` Optikos
2019-05-11 11:58 ` Jere
2019-04-26 17:12 ` G.B.
2019-05-11 12:06 ` Jere
2019-05-14 0:03 ` Randy Brukardt
2019-04-22 22:11 ` Randy Brukardt
2019-04-22 22:23 ` Shark8
2019-04-23 23:42 ` Randy Brukardt
2019-04-23 7:44 ` Dmitry A. Kazakov [this message]
2019-04-23 23:47 ` Randy Brukardt
2019-04-24 10:34 ` Jere
2019-04-24 10:44 ` Jere
2019-04-24 23:21 ` Randy Brukardt
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox