Harendra Kumar
beba8f7919
Use direct style filtering functions
...
Also, organized a lot of code, by reordering in a more logical order and made
it consistent across multiple streams types.
2018-06-26 06:00:47 +05:30
Harendra Kumar
5ace3582a8
use foldl' for length, sum, product
2018-06-25 03:51:02 +05:30
Harendra Kumar
de5c0ca22e
use direct style scan, push mapMaybe from prelude to StreamK
2018-06-25 03:15:22 +05:30
Harendra Kumar
3ae953064d
use folds and map from direct style stream
2018-06-24 22:43:30 +05:30
Harendra Kumar
7a526f22b9
use direct style streams for linear composition
...
For some stream generation APIs.
Also added, fromList/fromListM APIs.
2018-06-24 06:19:41 +05:30
Harendra Kumar
9c85811905
rename "once" to "yieldM"
...
and some other related refactoring changes.
2018-06-23 06:50:59 +05:30
Harendra Kumar
b77e76fd53
Add/rearrange INLINE pragmas on benchmarks
2018-06-18 02:56:52 +05:30
Harendra Kumar
b9e5e424a7
remove the append benchmark
...
it is already covered by the generation benchmarks
2018-06-13 17:46:54 +05:30
Harendra Kumar
aa4c8707b5
add more benchmarks, update benchmarks
2018-06-09 21:11:15 +05:30
Harendra Kumar
decdf72e3a
use lower number of elements in benchmark stream
...
To enable parallel benchmarks
2018-06-03 00:28:14 +05:30
Harendra Kumar
2f706b9bfb
add concurrent stream generation benchmarks
2018-05-28 11:35:33 +05:30
Harendra Kumar
669295965a
Add some INLINABLE pragams
2018-05-27 10:33:21 +05:30
Harendra Kumar
9cb2ac0bb7
Add concurrent generation and transformation capabilities
...
- monadic stream generation functions are now concurrent
- monadic stream transformation (mapM, sequence) functions are now concurrent
- fixed a race which caused blockedindefinitely on MVar in rare cases
2018-05-24 16:48:48 +05:30
Harendra Kumar
3b6427818f
Add fromFoldableM
...
Also,
- INLINE consM and once
- add benchmarking for various ways of sourcing (unfoldr(M), fromFoldable(M),
foldMapWith serial)
2018-05-21 17:54:19 +05:30
Harendra Kumar
c8b32f2a53
Fix naming changes in benchmarks
2018-05-13 10:27:49 +05:30
Harendra Kumar
091f4b69fe
Add the strictly parallel stream type ParallelT
2018-05-08 07:49:43 +05:30
Harendra Kumar
cf1388b330
Add append benchmark to linear benchmarks
2018-05-06 05:13:10 +05:30
Harendra Kumar
a526207acd
rename the default stream type to StreamT
...
This was earlier changed from StreamT to SerialT. However we have made this the
default type now and it makes more sense to call it StreamT now. A bigger
motivation for the change is that StreamT immediately conveys that it is a
stream which is helpful and intuitive for new learners. Also we have a plan to
have a specialized type called "Stream a = StreamT IO a", so the name StreamT
is in line with that common default type "Stream a". Calling that type as
"Serial a" does not sound as intuitive as calling it "Stream a".
2018-04-25 11:31:12 +05:30
Harendra Kumar
ac39277da8
Rename benchmark modules
2018-04-25 11:28:47 +05:30