Iron out API discrepancies
- Dominant language
- Haskell
- Stars
- 301
- Forks
- 144
- Avg merge
- 7d 22h
- Merged PRs (30d)
- 1
Description
Missing for lazy bytestrings:
* `unfoldrN` (see also #128)
* `isInfixOf`, `breakSubstring` (see #30 and #307)
* ~~`foldr'` and `foldr1'` (not that strict folds make tremendously much sense for lazy structures, but we already have `foldl'` and `foldl1'` in place) (see #373)~~
* ~~`scanl1`, `scanr` and `scanr1` (see #373)~~
* ~~`takeEnd`, `dropEnd`, `takeWhileEnd`, `dropWhileEnd`, `spanEnd` and `breakEnd` (see #306).~~
Missing both for strict and lazy bytestrings:
* `replace :: ByteString -> ByteString -> ByteString -> ByteString` (lazy variant would require `breakSubstring` or similar first, so see #307)
* `splitOn :: ByteString -> ByteString -> [ByteString]` (see #100)
~~There are minor but annoying differences between API provided by `Data.ByteString`, `Data.ByteString.Char8`, `Data.ByteString.Lazy`, `Data.ByteString.Lazy.Char8`. Plus we are missing certain encoding-agnostic functions available for `Text`, such as `compareLength`, `replace`, `splitOn`, etc.~~
~~A good starting point (even if a bit outdated) is https://github.com/haskell-backpack/backpack-str/tree/master/str-sig#feature-matrix~~
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.