Skip to content
New issue

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

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

Already on GitHub? # to your account

[WIP] Array-based List type #2154

Draft
wants to merge 3 commits into
base: fable3
Choose a base branch
from
Draft

[WIP] Array-based List type #2154

wants to merge 3 commits into from

Conversation

ncave
Copy link
Collaborator

@ncave ncave commented Sep 9, 2020

  • Faster than F# linked list, when micro-benchmarked.
  • Overall, still slower in larger tests (FCS-JS) than using JS linked list.

@ncave
Copy link
Collaborator Author

ncave commented Sep 11, 2020

Rebased from #2156.

@alfonsogarciacaro
Copy link
Member

This is still marked as WIP, so you want to merge it?

@ncave
Copy link
Collaborator Author

ncave commented Sep 12, 2020

@alfonsogarciacaro It's ready, but it does result in about 10% perf impact, so further optimizations are needed. We can keep it on the back-burner for now.

@ncave ncave force-pushed the next2 branch 10 times, most recently from 54b3257 to 8b6c529 Compare September 15, 2020 01:39
@ncave ncave force-pushed the next2 branch 3 times, most recently from e134310 to bf476bc Compare September 29, 2020 00:41
@ncave ncave force-pushed the next2 branch 2 times, most recently from bcea005 to 0e809d3 Compare October 6, 2020 00:13
@ncave ncave force-pushed the next2 branch 3 times, most recently from c9a6aa2 to 849fe9a Compare October 13, 2020 13:36
@ncave ncave force-pushed the next2 branch 3 times, most recently from 4a2924a to 300c888 Compare October 31, 2020 20:46
@alfonsogarciacaro
Copy link
Member

alfonsogarciacaro commented Nov 19, 2020

Do you think it would help if we allocated a few slots in advance and increase it as we add more elements? (I think System.Generic.Collections.List does this, although maybe the JS engine does the same internally)

ncave and others added 3 commits May 28, 2021 15:46

Verified

This commit was signed with the committer’s verified signature.
dpogue Darryl Pogue

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature. The key has expired.
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants