Commit Graph

52 Commits

Author SHA1 Message Date
Sibi Prabakaran
28b206e306
Fix test for composeAndComposeSimple function
Not the best way to fix test code and also involves the usage of
partial function, but I guess that's fine for test code.
2017-09-15 23:36:39 +05:30
Harendra Kumar
b477693f84 Add more tests for monoidal compositions 2017-09-14 21:17:34 +05:30
Harendra Kumar
e7e42cb154 Add parallel and interleaved bind operations 2017-09-08 21:29:02 +05:30
Harendra Kumar
154a610eb2 Fix build for ghc-7.10.3 2017-09-05 13:34:39 +05:30
Harendra Kumar
4756d82308 Add back the parallel interleaving test 2017-09-05 10:58:00 +05:30
Harendra Kumar
e2b1e4c45d Fix worker dispatch 2017-09-05 10:50:20 +05:30
Harendra Kumar
ed5f00d575 cleanup tests 2017-09-04 17:20:10 +05:30
Harendra Kumar
09a717ced9 Add take and drop operations 2017-09-04 06:05:34 +05:30
Harendra Kumar
1f645071b5 rearrange tests 2017-09-03 16:18:00 +05:30
Harendra Kumar
e43f6e46ab disable parallel interleave test
It does not work reliably
2017-09-01 19:12:50 +05:30
Harendra Kumar
c99b575051 Fix type signatures in tests 2017-08-31 02:09:53 +05:30
Harendra Kumar
a923ae8e72 reorganize tests and reuse the same tests for all ops 2017-08-30 14:58:51 +05:30
Harendra Kumar
c81684d415 Add left biased combinator and some utilities
Remove 'for' and 'each'
2017-08-29 10:44:03 +05:30
Harendra Kumar
5f1dc97a9a Add interleaved composition 2017-08-29 07:55:26 +05:30
Harendra Kumar
d4363a8ad7 Add loop tests 2017-08-28 02:09:08 +05:30
Harendra Kumar
2cc5c120ac Move a test code block 2017-08-27 08:08:48 +05:30
Harendra Kumar
ab91267967 Add test case for hierarchical alternative composition 2017-08-25 23:38:06 +05:30
Harendra Kumar
a61b30ba71 Fix, delete, move examples 2017-08-24 03:45:29 +05:30
Harendra Kumar
d8c399e567 Implement tracking and killing of child threads 2017-08-22 21:45:58 +05:30
Harendra Kumar
09283c42ac Implement pull based concurrency rate control 2017-08-21 21:10:09 +05:30
Harendra Kumar
500d889859 Simplify push-pull split, fix monoid instance 2017-08-18 07:12:29 +05:30
Harendra Kumar
63f965a784 cleanup Monoid instance 2017-08-17 01:43:14 +05:30
Harendra Kumar
8a1d5d995e Add a test for "each" to test multiple threads 2017-08-16 14:53:30 +05:30
Harendra Kumar
550eed458f Make monoid instance append two computations in order
Conflicts:
	test/Main.hs
2017-08-15 18:41:20 +05:30
Harendra Kumar
ef006c846d Implement fork for Alternative instance 2017-08-15 18:36:26 +05:30
Harendra Kumar
f8851aa158 Add MonadRecorder instance to AsynclyT 2017-08-09 18:21:28 +05:30
Harendra Kumar
4f3775d51f Enable threads API and tests 2017-08-09 17:44:05 +05:30
Harendra Kumar
7e8209e2d6 Separate the State layer from AsyncT layer
Performance degrades by 2x

StateT/AsyncT combined = 560 ms
Separated AsyncT (StateT Context IO) = 1.2 s
AsyncT IO in the separated version = 400 ms
2017-08-07 19:55:38 +05:30
Harendra Kumar
11c1f14755 Add some simple tests 2017-08-07 15:14:41 +05:30
Harendra Kumar
8340241116 Split the logging functionality into a separate package 2017-07-13 18:21:26 +05:30
Harendra Kumar
c60d15c39a Add "afterFirst" run an action after first event 2017-07-08 15:39:38 +05:30
Harendra Kumar
922c9ed018 Fix, cleanup and test discarding compositions 2017-07-08 14:09:43 +05:30
Harendra Kumar
f5cfead136 Alternative now forks automatically
Alternative "can" fork an action
`async` primitive is used to force an action to be async
2017-07-08 07:31:49 +05:30
Harendra Kumar
6c12266b1f Add more tests 2017-07-03 08:08:22 +05:30
Harendra Kumar
1e4950dac0 Simplify continuation saving and retrieval
Reduce untyped fields in the context
Merge Context.hs to AsyncT.hs
2017-07-03 05:16:26 +05:30
Harendra Kumar
f4237bfab3 rename to asyncly 2017-07-01 02:02:39 +05:30
Harendra Kumar
0e80adf13f Add test suite 2017-07-01 01:37:25 +05:30
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
afbd289a89 More complicated logging tests 2017-06-29 05:21:50 +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
bf5a11889e Add logging APIs 2017-06-28 21:40:09 +05:30
Harendra Kumar
594185f18d Add applicative and alternative tests 2017-06-26 03:15:27 +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
8a0fdb3abd Refactor/fix returning results from child threads 2017-06-25 21:23:14 +05:30
Harendra Kumar
3d530e0fe3 Rename the package to "strands" 2017-06-24 17:43:59 +05:30
Harendra Kumar
9779a0b082 Pass results from children to parent 2017-06-22 13:11:29 +05:30