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

Add MemoWise #1103

Merged
merged 1 commit into from
Mar 17, 2023
Merged

Add MemoWise #1103

merged 1 commit into from
Mar 17, 2023

Conversation

ms-ati
Copy link
Contributor

@ms-ati ms-ati commented Mar 17, 2023

Project

MemoWise is the wise choice for Ruby memoization.

Title and urls (GitHub, RubyGems, project page, blog posts, ...).

What is this Ruby project?

MemoWise is the wise choice for Ruby memoization, featuring:

What are the main difference between this Ruby project and similar ones?

Compared to...

  • Dry::Core::Memoizable
    • MemoWise avoids hash collision bugs made possible by an unsound optimization
    • Is faster in reading memoized values for every single method form except for the () no-args case.
  • Memery, DDMemoize, Memoist, Memoized, Memoizer
    • Is faster, sometimes by an order of magnitude, in all cases.

MemoWise also boasts the fullest test coverage and documentation, and serves the full set of memoization use cases in Ruby.

Awesome Ruby Quality Standard


Please help us to maintain this collection by using reactions (:+1:, :-1:) and comments to express your feelings.

MemoWise is the wise choice for Ruby memoization.

AwesomeRuby Guidelines
  * Generally used (at least 30k downloads) and useful to the community.
      - 229k downloads as of 3/17/2023
      - Use in widely used gems such as [nanoc](https://github.com/nanoc/nanoc/search?q=memo_wise), etc, as well as internally at Panorama Education
  * Actively maintained (even if that just means take care of open issues and/or keep compatibility with current Ruby versions).
      - Yes
  * Stable.
      - Yes, and follows Semantic Versioning
  * Documented.
      - Yes
  * Tests.
      - Yes, and 100% test coverage
@markets
Copy link
Owner

markets commented Mar 17, 2023

Thanks @ms-ati such a nice library! 🎉

@markets markets merged commit 0373034 into markets:master Mar 17, 2023
@ms-ati ms-ati deleted the patch-1 branch March 17, 2023 14:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants