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

Faster and more correct eagerization. #9

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Commits on Jul 31, 2017

  1. Improved eagerization by directly handling all Clojure and Java

    container types. The eagerization is now 4 times faster, and can handle
    eagerizing Clojure deftype and Java Arrays. It can also properly
    eagerize container's who's .toString or print-method have been modified
    in a way which does not visit the elements.
    didibus committed Jul 31, 2017
    Configuration menu
    Copy the full SHA
    bb1ba1d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    3334b16 View commit details
    Browse the repository at this point in the history
  3. Re-implemented eagerize/eagerize using protocols.

    This is 3x faster then
    cond, and is now open for extenssion, so if users have custom container
    types, they can simply extend them to support eagerize and it will work
    fine with special.
    
    For some reason, it doesn't work to extend object arrays for subtypes,
    so I had to implement it as part of the java.lang.Object case.
    didibus committed Jul 31, 2017
    Configuration menu
    Copy the full SHA
    0dba876 View commit details
    Browse the repository at this point in the history