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

Compare performance between sequency, lazyjs, goodstream, etc #2

Open
ChiriVulpes opened this issue Jul 29, 2019 · 1 comment
Open

Comments

@ChiriVulpes
Copy link
Member

The reason this module exists is because I had a suite of IterableIterator prototype extensions, they were all generator functions and they were not performant at all.

It seems like Sequency is written in a similar way to goodstream (IE, using Iterator stuff without generators), the only difference is that the code is a lot easier to read. (Most of goodstream was made specifically to be performant, the code being "maintainable" is much less a priority).

It'd be a good idea to test performance between the modules to see where additional perf gains could be in goodstream, and if the optimisations I've done are even that great.

@ChiriVulpes
Copy link
Member Author

ChiriVulpes commented Sep 2, 2019

Update after some investigation into performance — sad trombone

The way goodstream was written actually made performance worse (I'm guessing due to things like too many field initialisations, many of those being arrays). From some early testing, it seems to average about 4x slower than sequency.

It's okay though, because that means when we rewrite it to make it more maintainable we'll be simultaneously speeding it up!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant