3 import Data.Func, Data.Functor, Data.Tuple
7 Start w = doTasks master w
11 = get applicationOptions
12 >>- \eo->traceValue ("Master started on port " +++ toString eo.serverPort)
13 // >-| asyncTask (ExistingNode "localhost" 9099) (blockWait 5)
14 // >-| asyncTask "localhost" 9090 (blockWait 5)
15 // >-| asyncTask (PrivateNode 9099) (traceValue 5 >-| traceValue 42)
16 // >-| asyncTaskSpawn 9099 (return 42)
17 >-| sleepSortPar [5,1,3,8]
18 >&^ viewSharedInformation []
21 blockWait :: Int -> Task Int
22 blockWait i = accWorld (sleep i)
24 sleep :: !Int !*e -> (!Int, !*e)
29 sleepSortPar :: [Int] -> Task [Int]
30 sleepSortPar numbers = parallel
32 asyncTaskSpawn port (blockWait num)
33 >-| appendTask Embedded (\_->return num) stl
36 & port <- [9092..9099]
37 ] [] @? \tv->case tv of
40 # r = [v\\(_, Value v True)<-ts]
41 = Value r (length r == length numbers)