Skip to content

Eliminate boxing in takeWhile #4

@Yuras

Description

@Yuras

takeWhile uses Data.ByteString.span, which allocates one boxed Int, see haskell/bytestring#70

Basically it is a result of lack of nested CPR in ghc: https://ghc.haskell.org/trac/ghc/ticket/2289

Possible solution: write a hand optimized version of span, though it will uses bytestring internals, so will become a maintenance nightmare.

Task: measure the performance penalty because of boxing.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions