comp.lang.ada
 help / color / mirror / Atom feed
From: Maciej Sobczak <see.my.homepage@gmail.com>
Subject: Re: Distributed Systems Annex, data sharing between programs
Date: Tue, 5 Jun 2012 00:36:01 -0700 (PDT)
Date: 2012-06-05T00:36:01-07:00	[thread overview]
Message-ID: <fd335fc3-4109-4943-b360-23cbe20ec7ea@3g2000vbx.googlegroups.com> (raw)
In-Reply-To: f2da7f3c-2e3c-4156-960e-7cc4675a2cd8@googlegroups.com

On 4 Cze, 20:49, Adam Beneschan <a...@irvine.com> wrote:

> I haven't had much need to look at the Distributed Systems Annex until recently.
[...]

These are very interesting observations.
I would like to add my two cents to them, as they are related in
particular to this:

> Also, the note in E(7) says that the resulting execution is semantically equivalent if the program is partitioned differently;

DSA is intended to provide transparent "distributability", where
transparent means that the physicality of distribution is as hidden as
possible (ideally it should be undetectable). The problem that I see
is that Ada distinguishes potentially blocking operations from those
that never block and allows to use only the latter in protected bodies
- now, if we repartition the program in such a way that a given
operation (Do_Something_For_Me) ends up in a separate partition, it
might become potentially blocking by virtue of the hidden physicality
of remote call. In short, it might become a I/O operation even though
it is not visible anywhere. If such operation is used within a
protected body, then the program can be legal or illegal depending on
the partitioning scheme, which is not expressed in code.

That's just against what I understand as Ada spirit.

Things like this lead me to conclusion that DSA is essentially broken
and is not a proper way to handle distribution in the system.

> I'm confused by examples such as http://www.adacore.com/...

A worse observation is that AdaCore might be confused, too. Which only
confirms that DSA is broken.

> If my understanding is correct, my next question is: is there any language-defined support for sharing data between programs

Do you expect it to be language-defined? Why? Ada is not the only
language (not even the only ISO-stamped one) and heterogeneity is a
natural property of systems composed of multiple programs. Defining
data sharing between programs written in the same language would be a
wasted effort (better spent elsewhere in the standard). Instead, allow
others (third-parties) to define it so that programs written in
different languages will be able to share data - this will have much
bigger benefits.

--
Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com



  reply	other threads:[~2012-06-05  7:37 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-04 18:49 Distributed Systems Annex, data sharing between programs Adam Beneschan
2012-06-05  7:36 ` Maciej Sobczak [this message]
2012-06-05 16:02   ` Adam Beneschan
2012-06-05 18:35     ` tmoran
2012-06-06  7:14     ` Jacob Sparre Andersen
2012-06-06  7:39     ` Maciej Sobczak
2012-06-06  8:07       ` Dmitry A. Kazakov
2012-06-06 10:09       ` Niklas Holsti
2012-06-06 11:40         ` Maciej Sobczak
2012-06-06 12:08           ` Dmitry A. Kazakov
2012-06-06 19:17           ` Simon Wright
2012-06-08 11:38             ` Peter C. Chapin
2012-06-08 16:29               ` Simon Wright
2012-06-06 20:02           ` Niklas Holsti
2012-06-07 10:37             ` Maciej Sobczak
2012-06-08  2:11               ` Shark8
2012-06-08  6:31                 ` Pascal Obry
2012-06-08 21:26                 ` Maciej Sobczak
2012-06-09  1:10                   ` tmoran
2012-06-09 12:02                     ` Maciej Sobczak
2012-06-09 12:25                       ` Pascal Obry
2012-06-09 20:29                         ` Maciej Sobczak
2012-06-09  6:59                   ` Dmitry A. Kazakov
2012-06-13 10:55                     ` Marius Amado-Alves
2012-06-13 13:26                       ` Dmitry A. Kazakov
2012-06-14 20:29                       ` tmoran
2012-06-09  9:59                   ` Pascal Obry
2012-06-09 15:14                   ` Robert A Duff
2012-06-09 20:40                     ` Maciej Sobczak
2012-06-07  0:55           ` BrianG
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox