This may relate to the difficulty defining things like replace. Bytes.count of course just looks for the Word8. Like Bytes.splits we split on a Char; but the similar function in Data.Text is
T.splitOn :: Text -> Text -> [Text]
suggesting
Text.splits :: Text -> Producer Text m r -> FreeT (Producer Text m) m r
Several functions in Data.Text are defined in terms of the unexported indices Data.Text.Search; it might be possible to emulate the Lazy version.
This may relate to the difficulty defining things like
replace
.Bytes.count
of course just looks for the Word8. LikeBytes.splits
we split on a Char; but the similar function inData.Text
issuggesting
Several functions in Data.Text are defined in terms of the unexported
indices
Data.Text.Search; it might be possible to emulate the Lazy version.