Harendra Kumar
fe02431534
Keep just one basic async primitive, remove the rest
2017-07-01 01:35:49 +05:30
Harendra Kumar
120d0ed5f0
Add API to gather results of multiple computations
2017-06-29 05:40:29 +05:30
Harendra Kumar
760a298598
rename APIs
2017-06-29 05:21:11 +05:30
Harendra Kumar
f455a06d0a
Make logs work with regular wait/gather APIs too
2017-06-29 03:59:27 +05:30
Harendra Kumar
a9d6c29ba7
implement log replay
2017-06-29 03:32:48 +05:30
Harendra Kumar
746f3b2a23
Remove redundant Typeable constraint
2017-06-28 21:44:02 +05:30
Harendra Kumar
bf5a11889e
Add logging APIs
2017-06-28 21:40:09 +05:30
Harendra Kumar
3a988778f6
Remove redundant stuff from Log.hs
2017-06-26 18:27:12 +05:30
Harendra Kumar
b2f67d3482
Put Log.hs in order
2017-06-26 18:03:01 +05:30
Harendra Kumar
6afc667110
Add comments
2017-06-26 15:30:48 +05:30
Harendra Kumar
1b31d0baf1
Move an unsafeCoerce to a better place
2017-06-26 15:24:26 +05:30
Harendra Kumar
3251739569
Remove parentChannel from context
2017-06-26 15:18:38 +05:30
Harendra Kumar
e41e3151ae
Simplify result passing, direct to the IORef
2017-06-26 15:02:44 +05:30
Harendra Kumar
467a301542
Move the user state related stuff out of Context.hs
2017-06-26 03:27:58 +05:30
Harendra Kumar
b9c1c92dc0
Add the wait primitive to discard the results
2017-06-26 03:14:36 +05:30
Harendra Kumar
d4f2fec43f
Rename the monad runner to 'gather'
2017-06-26 02:21:53 +05:30
Harendra Kumar
9915f732f1
fix dev documentation
2017-06-26 00:58:01 +05:30
Harendra Kumar
3103c1c82e
rename resumeContext to composeContext
2017-06-26 00:15:03 +05:30
Harendra Kumar
76cd2cc2e0
Minor refactor
2017-06-25 23:34:17 +05:30
Harendra Kumar
ef686400b4
Reorganize modules
2017-06-25 23:25:38 +05:30
Harendra Kumar
608d3efcfa
Reorganize modules
2017-06-25 21:45:32 +05:30
Harendra Kumar
8a0fdb3abd
Refactor/fix returning results from child threads
2017-06-25 21:23:14 +05:30
Harendra Kumar
f49eccb296
Fix context propagation in case of loopContextWith
2017-06-25 04:42:37 +05:30
Harendra Kumar
3d530e0fe3
Rename the package to "strands"
2017-06-24 17:43:59 +05:30
Harendra Kumar
5cde66cde5
Make sure the results are passed on to parents in all cases
...
In both async and sync invocation of an action.
2017-06-24 17:26:40 +05:30
Harendra Kumar
82e0996582
cleanup/refactor mailbox related functionality
2017-06-22 19:03:50 +05:30
Harendra Kumar
5522fb0979
Use MonadPlus instead of Alternative
2017-06-22 17:58:56 +05:30
Harendra Kumar
38b148f7c5
Do not use IORef for results
2017-06-22 17:44:33 +05:30
Harendra Kumar
cad6f1913b
remove stop
2017-06-22 13:12:42 +05:30
Harendra Kumar
9779a0b082
Pass results from children to parent
2017-06-22 13:11:29 +05:30
Harendra Kumar
c49bcc7406
Pass on exceptions and results from child to parent
2017-06-21 15:15:21 +05:30
Harendra Kumar
6fd665167e
Add some comments
2017-06-20 18:17:31 +05:30
Harendra Kumar
da2491da43
Return a maybe value from resumed context
...
- it will be useful for returning values from a computation continued in a new
thread.
2017-06-20 18:16:42 +05:30
Harendra Kumar
11deaa73be
rename function to appropriate name
2017-06-20 13:42:35 +05:30
Harendra Kumar
1b2ac02e4e
rename for clarity
2017-06-14 00:31:07 +05:30
Harendra Kumar
6a572e5279
Refactor, simplify forking the context
2017-06-14 00:27:29 +05:30
Harendra Kumar
bb402cb4d7
Fix react
2017-06-12 02:01:54 +05:30
Harendra Kumar
a439149806
Refactor forking and context resumtpion
2017-06-12 01:51:23 +05:30
Harendra Kumar
4eda27263c
Rename variables, add comments
2017-06-11 21:22:20 +05:30
Harendra Kumar
9f2c3c23c1
rename location attributes and context resumption
2017-06-11 17:07:52 +05:30
Harendra Kumar
4adbddf74c
Add context save, restore and continue functions
...
Modularize the context functionality
2017-06-11 02:56:22 +05:30
Harendra Kumar
a39705bb0d
More refactor, reorg, remove additonalOperators class
2017-06-10 17:08:12 +05:30
Harendra Kumar
a00f8c58bf
Change coerced type for illustrative purpose
2017-06-10 16:48:04 +05:30
Harendra Kumar
dcb01042cd
remove mfSequence
2017-06-10 16:45:48 +05:30
Harendra Kumar
70c2917343
rename EventF to Context
2017-06-10 16:41:30 +05:30
Harendra Kumar
0a69aecc0f
Refactor, simplify, add comments
2017-06-10 16:34:31 +05:30
Harendra Kumar
dde36a399e
Simplify applicative and monad instances
2017-06-10 02:45:24 +05:30
Harendra Kumar
3744363427
Remove the parent pointer from EventF
2017-06-08 01:23:06 +05:30
Harendra Kumar
45e820430e
Remove threadId from EventF
2017-06-08 00:53:20 +05:30
Harendra Kumar
e4bbcd6b4d
Format import list
2017-06-08 00:35:56 +05:30
Harendra Kumar
df9febd5bd
Use threadId tracking instead of EventF for children
2017-06-08 00:34:20 +05:30
Harendra Kumar
1bcf579e4b
Kill children on exception
2017-06-07 23:54:33 +05:30
Harendra Kumar
7ae04e3124
Add some notes and minor fixes
2017-06-07 23:37:58 +05:30
Harendra Kumar
aaeeec5fca
Remove some redundant code
2017-06-07 21:27:18 +05:30
Harendra Kumar
b90da15d00
Initial commit
...
A simplified, refactored and modified version of transient. Significant
differences from transient include:
1) Supports transformer stack
2) Each thread waits for its child threads to complete before exiting
2017-06-07 21:02:27 +05:30