streamly
streamly copied to clipboard
High performance, concurrent functional programming abstractions
We already have most test cases in `Streamly.Test.Data.Fold.Window`. We need to also test the functions in case the window is not full. One bug caught: https://github.com/composewell/streamly/pull/2602
In most cases we can just use `fromScanl` to get a fold from a scan.
Create a pipeline that parses out the code and runs the code in `ghci` or uses `docspec` accordingly.
The Fold type currently represents two functionalities - fold and scan. This causes problems in some cases, some folds are not scans. We can split the Fold module into two...
We have a `scanl` operation for running a scan on the input of a Scanl or Fold and a `scanl'` smart constructor which may be confusing. We can make the...
We should be able to generate a stream when the scan ends: ``` data Scanl m a b = forall s. Scanl (s -> a -> m (Step s b))...
Flip the first two arguments resulting in the following signature: ``` data Scanr m a b = forall s. Scanr (a -> s -> m (Step s b)) s ```...
We do not need rmapM for Scanl as its output is a stream. So we can make `extract :: s -> b`. It will make extract idempotent which is a...