comp.lang.ada
 help / color / mirror / Atom feed
* Updated PragmAda Reusable Components
@ 2016-09-05 19:04 PragmAda Software Engineering
  2016-09-06 20:30 ` jrmarino
  2016-09-07 10:45 ` Alejandro R. Mosteo
  0 siblings, 2 replies; 4+ messages in thread
From: PragmAda Software Engineering @ 2016-09-05 19:04 UTC (permalink / 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 ---

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-09-07 17:51 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-05 19:04 Updated PragmAda Reusable Components PragmAda Software Engineering
2016-09-06 20:30 ` jrmarino
2016-09-07 10:45 ` Alejandro R. Mosteo
2016-09-07 17:51   ` Jeffrey R. Carter

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