Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve Performance #4

Open
Fleshgrinder opened this issue Apr 11, 2021 · 0 comments
Open

Improve Performance #4

Fleshgrinder opened this issue Apr 11, 2021 · 0 comments
Assignees
Labels
⚡ performance Something could be faster or more lightweight
Milestone

Comments

@Fleshgrinder
Copy link
Owner

The current implementation is nicely DRY, but it is not the fastest possible implementation. We always create an auxiliary array for Chars that should be ignored, at the same time this feature is seldomly used, and we are thus only producing garbage. The big when switching over the ranges is also terribly inefficient, compared to a possible jump table. These functions might be used in hot paths of applications, and should thus be fast.

This is a small isolated project to allow exactly such optimizations, because the possible code duplication that may be introduced by possible optimizations can easily be kept maintainable.

@Fleshgrinder Fleshgrinder added this to the 0.3.0 milestone Apr 11, 2021
@Fleshgrinder Fleshgrinder self-assigned this Apr 11, 2021
@Fleshgrinder Fleshgrinder added the ⚡ performance Something could be faster or more lightweight label Apr 11, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
⚡ performance Something could be faster or more lightweight
Projects
None yet
Development

No branches or pull requests

1 participant