comp.lang.ada
 help / color / mirror / Atom feed
From: brbarkstrom@gmail.com
Subject: Re: Should weak counted reference be able to be strengthened?
Date: Wed, 26 Nov 2014 09:51:47 -0800 (PST)
Date: 2014-11-26T09:51:47-08:00	[thread overview]
Message-ID: <7e46e76e-b1e3-4933-8f37-0e9c85f5f728@googlegroups.com> (raw)
In-Reply-To: <1kqnn4e05fbl2$.1wv2gk39uwsha.dlg@40tude.net>

On Wednesday, November 26, 2014 4:28:07 AM UTC-5, Dmitry A. Kazakov wrote:
> On Tue, 25 Nov 2014 15:49:49 -0600, Randy Brukardt wrote:
> 
> > "Dmitry A. Kazakov" wrote in message 
> 
> > ...
> >> Instead of introducing "crazy beautiful" implicit dereference, Ada 2012
> >> should have delegation support for the patterns like this.
> > 
> > Depending heavily on interfaces is a sure way to madness. :-)
> > 
> > But the real problem here is I don't see any way to add "delegation support" 
> > that actually saves much over the explicit version that you showed. We 
> > certainly don't want *everything* to delegate (it has to be declared somehow 
> > for the particular operations in question),
> 
> Everything of course, unless explicitly overridden.
> 
> > and because of overloading we 
> > have to at least have the complete profile. That means an awful lot of 
> > typing (and source text to read), and lots of chance for errors.
> 
> Yes, which is why delegation and other means to compose overridden
> operations are needed.
> 
> The programmer should be able to define things which happen implicitly when
> for example:
> 
>    type X is new Integer;
> 
> This implicitly defines a lot of operations composed like:
> 
>    function "abs" (Value : X) return X
>       = X (abs (Integer (Value));
> 
> It is not much different from how "sane" implicit dereference would work
> 
>    type Y is access Integer;
> 
>    function "abs" (Value : Y) return Integer
>       = abs (Value.all);
> 
> I don't know how to describe such things syntactically. That is a
> challenge.
> 
> > In a sense, Ada 2012 has delegation support as one can use expression 
> > functions that way.
> 
> Yes, they could be viewed this way, but in my view they are too powerful.
> What I want is a more limited mechanism of composition which could be
> easily checked. The limitation is that the old body is used with an
> epilogue and/or a prologue and conversions are applied to the arguments
> and/or the result. If the body has to be changed, it must be overridden.
> 
> -- 
> Regards,
> Dmitry A. Kazakov

This dialogue reminds me of a substantial conversation currently going on
in the library community with respect to long-term (200 years) information
preservation with transformational migration.  The problem gets even more
interesting in federated archives (think DSA across the Internet).

The life of digital files (or databases) is more or less limited by the
lifecycle of hardware or software obsolescence.  So, if your favorite
documentation formatting vendor decides to deprecate the previous format,
what's an archive to do - transform the original or throw it out?  If the
archive throws the document out, it might still want a reference to it to
maintain a provenance track that can aid in proving authenticity of the
transformed original.  

Furthermore, that community has tendencies to want some centralized authority 
to provide references to the "unique" "authentic original."  [Never mind the
fact that such an authority - raking in money even - is a single point of
failue.]  So, if the archive throws out that original file (or it becomes 
unreadable) and the community seems to think that a backup copy is "not 
authentic" because only the one "original" copy was the "authentic" one
there may need to be some mechanism to notify users of the history of the
changes.

The weak references in the previous posts appear to be like the 
"centralized" site's reference to the archive copy that they think is
the "authentic original" (but now unreadable or deleted).  The latter
is presumably the strong reference.

I'm still inclined to think Ada has a significant potential market in
the long-term information preservation business.  The requirements for
loss per year are into the number of nines we think about for life-critical
software systems.  After looking at the posts here, I am pretty sure that
the arguments about weak and strong references in Ada are similar (and
perhaps mathematically identical) to the issues the library community
is arguing about.  There may even be some light their discussion 
could shed on the one in the Ada community.  [Besides, if this small
discussion could help solve a "big" problem, that would be even more fun.]

Bruce B.


  reply	other threads:[~2014-11-26 17:51 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-11-21 11:07 Should weak counted reference be able to be strengthened? Natasha Kerensikova
2014-11-21 13:16 ` Dmitry A. Kazakov
2014-11-21 15:00   ` Natasha Kerensikova
2014-11-21 16:50     ` Dmitry A. Kazakov
2014-11-21 18:24       ` Natasha Kerensikova
2014-11-21 19:36         ` Dmitry A. Kazakov
2014-11-21 22:28           ` Randy Brukardt
2014-11-22  9:57           ` Natasha Kerensikova
2014-11-22 10:19             ` Dmitry A. Kazakov
2014-11-22 10:36               ` Natasha Kerensikova
2014-11-22 11:15                 ` Dmitry A. Kazakov
2014-11-21 22:39       ` Randy Brukardt
2014-11-21 22:49         ` Shark8
2014-11-22  8:42           ` Dmitry A. Kazakov
2014-11-22  8:42         ` Dmitry A. Kazakov
2014-11-24 22:15           ` Randy Brukardt
2014-11-25  8:36             ` Dmitry A. Kazakov
2014-11-25 21:49               ` Randy Brukardt
2014-11-26  9:28                 ` Dmitry A. Kazakov
2014-11-26 17:51                   ` brbarkstrom [this message]
2014-11-26 21:09                   ` 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