async/await in F#

Russel Winder via Digitalmars-d digitalmars-d at puremagic.com
Sun Jun 15 01:57:54 PDT 2014


Scala Async introduces async/await as the way of "simplifying" future
and promise construction. I haven't played with this much as yet, I have
generally just used Future in Scala.

Akka had something that was an extension of Scala's Future, but this is
now deprecated in favour of Async. (The Akka stuff was way
over-complicated to install and use.)

Akka used to call this dataflow, and in the sense of dataflow as a
single batch job making use of futures and promises to calculate a
value, this could be seen as true. Dataflow though is about processes
communicating with channels, and is far more interesting than what was
called dataflow in Akka. GPars has this much more properly organized and
spelled out (*).

Go has gone the CSP, with elements of π-calculus, route and so can do
dataflow but there are subtle issues which means dataflow should be
different from π-calculus, and different from actors. This means D
really needs a dataflow module to add to its data parallel module
(std.parallelism) and actors module (std.concurrency provides what can
be used as actors).


(*) For obvious reasons :-)

-- 
Russel.
=============================================================================
Dr Russel Winder      t: +44 20 7585 2200   voip: sip:russel.winder at ekiga.net
41 Buckmaster Road    m: +44 7770 465 077   xmpp: russel at winder.org.uk
London SW11 1EN, UK   w: www.russel.org.uk  skype: russel_winder



More information about the Digitalmars-d mailing list