Harendra Kumar
e265852671
Add skeleton for groupByRollingEither
...
The driving use case for this is to make the sorting faster by detecting
sorted sequences in the input.
2021-10-01 13:57:36 +05:30
Harendra Kumar
36c22e3b5b
Add INLINE to zipWith and zipWithM
2021-09-30 09:38:39 +05:30
Harendra Kumar
68317a4a41
Fix/enhance benchmarks for concatPairsWith
...
* Add a benchmark for mergeByMFused
* Move interleaving benchmarks to WSerial module
* Rename some wserial benchmarks
* Add a Merge module for mergeBy/sorting benchmarks
2021-09-28 16:59:29 +05:30
Harendra Kumar
70e7f94691
Move IsStream definition out of low level modules
...
The IsStream type class contains MonadAsync type in the consM method.
This refactor allows lifting MonadAsync, therefore, dependency on
monad-control out of the low level modules.
2021-09-14 23:11:17 +05:30
Harendra Kumar
2c4860045d
Refactor and reformat
2021-09-05 05:39:45 +05:30
Harendra Kumar
e052c821b6
Add serial_ benchmark
2021-09-05 05:39:45 +05:30
Ranjeet Kumar Ranjan
878d734dd7
Implement some undefined functions in Fold module
...
Implement Some undefined in Internal.Data.Fold module
Add test cases for newly added functions
Add bench marks for newly added Data.Fold functions
2021-09-05 05:39:45 +05:30
Ranjeet Kumar Ranjan
8d9396711c
Remove map from Internal.Data.Fold
2021-09-01 18:14:37 +05:30
Ranjeet Kumar Ranjan
8d733b2209
Fix review comments and docspecs
...
Remove supplyMiddle and supplyNextFromStride
Fix enumerateFromNum for precision issue
2021-08-24 08:44:21 +05:30
Ranjeet Kumar Ranjan
ba9a4e8f6a
Change signature of enumerate functions
2021-08-24 08:44:21 +05:30
Ranjeet Kumar Ranjan
6d98f4e135
Add Enumerable typeclass for Unfold
2021-08-24 08:43:19 +05:30
Harendra Kumar
a296fac8db
Refactor SVar module
...
* Break it up into smaller modules with clearly separated functionality
* Keep minimal stuff in the lower level module SVar/Type, and push the
rest in a higher level module to reduce dependencies of lower level
modules. This will help in separating the lower modules in streamly-core
package.
2021-08-20 00:47:56 +05:30
Adithya Kumar
17dfc5b087
Add benchmarks for retry
2021-08-09 21:21:33 +05:30
Adithya Kumar
69e3b2c010
Add unicode normalization bench-suite
2021-08-09 19:43:40 +05:30
Adithya Kumar
a322c073c3
Add benchmarks for Parser.choice
2021-08-09 16:36:48 +05:30
Ranjeet Kumar Ranjan
0b889318ed
toStream/toStreamRev should be able to fold to any monad
...
Fix review comment
Fix benchmark
Fix warnings
2021-08-05 04:40:24 +05:30
Adithya Kumar
15397be802
Add benchmarks for takeP
2021-08-04 20:58:44 +05:30
Adithya Kumar
7830df9314
Add simple bench suite for Unicode.Utf8
2021-07-30 19:01:54 +05:30
Adithya Kumar
c9232b0e25
Extracted IO related common functions into a new module
2021-07-29 15:35:16 +05:30
Harendra Kumar
3339c2082d
Add fold and parse for array streams
...
The test and benchmark code is taken from Adithya's original double
ended lists based implementation.
2021-07-26 18:14:46 +05:30
Harendra Kumar
424f1e9871
Fix the space requirements of two benchmarks
...
Move showInstance benchmark for pure streams to o-n-space
Increase the heap space for array map x 4
2021-06-22 22:50:12 +05:30
Harendra Kumar
e09428332c
Revert "Fix zipWith(M) to work concurrently according to the stream type"
...
This reverts commit 1ddcfc4634
.
This requires MonadAsync constraint which breaks the existing
zipWith for pure streams e.g. 'SerialT Identity' (for example in
streaming-benchmarks package). We can possibly have different zipWith
APIs for concurrent zipping.
2021-06-22 12:39:07 +05:30
Harendra Kumar
67f851374c
Inline MC.try to fix perf for GHC-9
2021-06-21 15:55:44 +05:30
Harendra Kumar
c4358b3957
Fix Array.Pin.Pinned benchmark module name
2021-06-08 23:54:04 +05:30
Harendra Kumar
03218ad71b
Cleanup, fix issues in bench.sh
2021-06-08 23:54:04 +05:30
Ranjeet Kumar Ranjan
b68baf3c51
Add support for benchmarking with tasty-bench
...
tasty-bench has fewer dependencies and is agile to keep up with new GHC
versions. This change is especially motivated by support for GHC 9.0.1.
gauge depends on foundation/basement which lagging much behind and seem
to be unmaintained.
2021-06-08 23:54:04 +05:30
Harendra Kumar
d51fab489f
Fix benchmark name prefixes to module names
...
Otherwise the new bench.sh changes for tasy-bench won't work for these
modules.
2021-06-08 23:54:04 +05:30
Harendra Kumar
28e17ee82e
Fix a perf issue in iterate/iterateM
...
It was taking O(n) space, now it takes O(1)
2021-06-02 22:18:00 +05:30
Pranay Sashank
90be38762b
Rename Fold.yield, yieldM to fromPure, fromEffect.
2021-05-30 22:24:54 +05:30
Pranay Sashank
f24ddc0bdf
Rename Unfold.yield, yieldM to fromPure, fromEffect.
2021-05-30 22:24:54 +05:30
Pranay Sashank
70faf014ca
Rename Streamly.Prelude.yieldM to fromEffect.
...
- Deprecate yieldM.
2021-05-29 02:05:01 +05:30
Pranay Sashank
4dfc6bf9ee
Rename Streamly.Prelude.yield to fromPure.
...
- Deprecate yield.
2021-05-29 01:22:02 +05:30
Harendra Kumar
03cf686ca7
Export some pre-release array APIs
...
* getIndex
* casting ops
* writeLastN
* readRev
2021-04-27 13:37:56 +05:30
Harendra Kumar
6132eb3acb
Split stdio ops into a Console.Stdio module
...
Change the FileSystem.Handle from* APIs to put*
Mutable write APIs would use a "put" prefix to make the name more intuitive.
2021-04-25 15:53:38 +05:30
Harendra Kumar
dc647f4a4e
Change the argument order of intercalate and interpose
2021-04-24 16:17:39 +05:30
Harendra Kumar
a75c178599
Expose rollinghash and intercalate
2021-04-24 16:16:12 +05:30
Harendra Kumar
f64dd78449
Fix benchmark names, cleanup imports, fix hlint
...
Refactor only.
2021-04-24 13:36:28 +05:30
Adithya Kumar
cd916f54bb
Move array stream bench/tests to separate modules
2021-04-19 19:38:14 +05:30
Ranjeet Kumar Ranjan
ac215ad43f
Rename serially etc. to fromSerial etc. #1029
2021-04-16 00:20:54 +05:30
Ranjeet Kumar Ranjan
138d519601
concatPairsWith benchmarks #984
2021-04-07 14:06:34 +05:30
Adithya Kumar
1ddcfc4634
Fix zipWith(M) to work concurrently according to the stream type
...
https://github.com/composewell/streamly/issues/158
2021-04-06 02:34:54 +05:30
Adithya Kumar
f1f8d7ac5e
Renamed function/bench names appropriatly in bench:StreamK
...
Also add a the benchmarks that need to be added
2021-03-31 17:42:09 +05:30
Adithya Kumar
029e6873e7
Fix filterScan. Revert to using maxBound over streamLen.
...
Quoting, harendra-kumar,
> Since we are adding the numbers in the stream, <= streamLen would terminate
> the stream much earlier. We should use maxBound instead. That's because we
> compose this with filter again in the mixed benchmarks
2021-03-30 17:02:18 +05:30
Adithya Kumar
876b904ecb
Modify benchmarks to keep name comparisions backwards compatible
2021-03-30 17:02:18 +05:30
Adithya Kumar
98bc69e3d0
Rename value-ish to streamLen-ish in bench:StreamK
...
maxValue -> value
value -> streamLen
value2 -> streamLen2
value3 -> streamLen3
value16 -> streamLen16
2021-03-30 17:02:18 +05:30
Adithya Kumar
1079b49aab
Collapse sourceUnfoldr(M)N into sourceUnfoldr(M) in bench:StreamK
...
As of this commit they are completely identical.
2021-03-30 17:02:18 +05:30
Adithya Kumar
ada707b778
Move passing benchmark properties to the root in bench:StreamK
2021-03-30 17:02:18 +05:30
Adithya Kumar
ad4bcce47f
Remove unecessary code in bench:StreamK
2021-03-30 17:02:18 +05:30
Adithya Kumar
f1c19a6e85
Split O(1) space benchmarks into multiple groups in bench:StreamK
2021-03-30 17:02:18 +05:30
Adithya Kumar
23253c0270
Move global limits into function arguments in bench:StreamK
2021-03-30 17:02:18 +05:30