comp.lang.ada
 help / color / mirror / Atom feed
From: PragmAda Software Engineering <pragmada@pragmada.x10hosting.com>
Subject: Updated PragmAda Reusable Components
Date: Mon, 5 Sep 2016 12:04:30 -0700
Date: 2016-09-05T12:04:30-07:00	[thread overview]
Message-ID: <nqkfk0$d2b$1@adenine.netfront.net> (raw)

There are some new components in the beta version of the PragmARCs for
ISO/IEC 8652:2007: PragmARC.Concurrent_Pipeline and PragmARC.Holders.


Concurrent_Pipeline was inspired by discussions of the Rx approach to
concurrency, such as RxJava, in which a sequence of operations are
chained together from a source to a sink, the operations being able to
proceed in parallel but only one execution of a given operation at a
time. If one ignores the Rx syntax and concentrates on providing the
functionality in a way that's natural for Ada, it becomes fairly simple:
Concurrent_Pipeline is 45 Ada terminator semicolons.

I haven't looked at the Rx approach in detail, so there may be
differences between it and Concurrent_Pipeline.

It's not clear that Concurrent_Pipeline pipeline is needed; it seems the
same functionality could be achieved with PragmARC.Job_Pools. It may be
a more natural approach for some problems, though.

Holders provides variables for indefinite types; something like it is
needed to allow the operations in a Concurrent_Pipeline to proceed in
parallel. It was also not strictly needed, as the same functionality
could be obtained with an indefinite container that is only used to
store a single value.

The PragmARCs may be obtained from Github

https://github.com/jrcarter/PragmARC

or from the web site.

-- 
Jeffrey R. Carter, President
PragmAda Software Engineering
pragmada.x10hosting.com
pragmada.tk


--- news://freenews.netfront.net/ - complaints: news@netfront.net ---

             reply	other threads:[~2016-09-05 19:04 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-05 19:04 PragmAda Software Engineering [this message]
2016-09-06 20:30 ` Updated PragmAda Reusable Components jrmarino
2016-09-07 10:45 ` Alejandro R. Mosteo
2016-09-07 17:51   ` Jeffrey R. Carter
replies disabled

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