Harendra Kumar
c9a821b9af
Add type specific Num instances instead of deriving from base
...
deriving from base is incorrect since the monad/applicative instances of each
type are different.
Also add test cases for applicative/num instances of each type.
2017-10-25 15:35:57 +05:30
Harendra Kumar
a7b20ad4dc
Simlify streaming type class
...
Use polymorphic functions instead of bunching up all streaming functions in the
type class.
2017-10-25 14:00:22 +05:30
Harendra Kumar
29f64fe8d1
Separate types for different styles of product composition
2017-10-25 08:01:29 +05:30
Harendra Kumar
3d171045de
Move APIs conflicting with Prelude to Prelude module
2017-10-18 08:46:18 +05:30
Harendra Kumar
fefc00cf12
Comment out failing tests
...
Still not fixed with the previous change
2017-10-18 02:23:25 +05:30
Harendra Kumar
71b4134867
Do not use a blocking wait when dispatching workers
2017-10-17 07:36:55 +05:30
Harendra Kumar
50e16043f8
Comment out two failing tests
2017-10-14 20:28:55 +05:30
Harendra Kumar
1aa909b949
Add concurrent zipping API
2017-10-14 20:22:50 +05:30
Harendra Kumar
9ac16aa14c
Add serial zipping APIs
...
zipWith, zipWithM and ZipSerial Applicative
2017-10-14 08:32:13 +05:30
Harendra Kumar
e246532213
Add more interleaved tests and mplus tests
2017-10-14 02:53:04 +05:30
Harendra Kumar
c0d2b00e1b
Add tests for functor/applicative/bind with empty/monoid
2017-10-14 02:24:44 +05:30
Harendra Kumar
d1cb4d8695
Fix race condition in a parallel test
2017-09-21 00:12:09 +05:30
Harendra Kumar
5d5eabf58d
Fix a race condition in a parallel test
2017-09-20 23:50:40 +05:30
Harendra Kumar
5919be5b36
Fix append and interleave nested inside parallel
2017-09-20 21:55:01 +05:30
Harendra Kumar
24fa86feb9
Add tests for nested parallel/serial compositions
2017-09-19 22:33:59 +05:30
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