comp.lang.ada
 help / color / mirror / Atom feed
From: Marius Amado-Alves <amado.alves@gmail.com>
Subject: Re: Distributed Systems Annex, data sharing between programs
Date: Wed, 13 Jun 2012 03:55:47 -0700 (PDT)
Date: 2012-06-13T03:55:47-07:00	[thread overview]
Message-ID: <3722dc80-de67-4beb-91c8-e05dda0b8aef@googlegroups.com> (raw)
In-Reply-To: <1dvxe1yiwtw0q$.6h9nlsnpe5ay$.dlg@40tude.net>

> Our middleware supports synchronous calls, but they are implemented on top
> of an asynchronous layer as send/request + wait. (Kasakov)

(Secret technology?)

This thread is fascinating.

Make RPC based on messages (Kasakov and others) or vice versa (Obry and others)?

FWIW, I tend towards the latter. It's clearly the Ada way:

Ada offers asyncronous control already. Chapter 9. So it's just a matter of wrapping the RPC with the desired asyncronous logic (a task, the time out idiom, ATC...)

Distribution and synchronicity are orthogonal dimensions. Probably Ada has been designed with this in mind. Distribution => Annex E. Synchronicity => chapter 9.

Yes, an implementation of Annex E may be based on messages e.g. sockets, and therefore asynchrounous RPCs in Ada (let the oximoron pass this time) will compile to an asynchronous-synchronous-asynchronous tower. Maybe there is a performance penalty here. Maybe for some projects climbing this tower would take too long, and so they use a message protocol directly for the message abstration. I cannot think of any other reason to depart from the Ada way.

(Is it really true that Polyorb is the only Annex E implementation that exists? Or just the only libre one?)



  reply	other threads:[~2012-06-14 16:53 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
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 [this message]
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