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

Evaluate parens in refinement dispatch, ~10% speedup #145

Merged
merged 1 commit into from
Nov 5, 2015
Merged

Evaluate parens in refinement dispatch, ~10% speedup #145

merged 1 commit into from
Nov 5, 2015

Commits on Nov 5, 2015

  1. Evaluate parens in refinement dispatch, ~10% speedup

    The previous semi-hack of an evaluation trick so that get-words would
    evaluate in paths has been upgraded to a much less hacky trick.  This
    now allows for the evaluation of parens to be used to get the words to
    use as refinements in dispatch:
    
        >> append/(first [only])/(to-word "dup") [a b c] [d e] 2
        == [a b c [d e] [d e]]
    
    The method by which this is done--as well as reducing the number of
    writes done into call frames--has improved performance in a build of
    the hostilefork.com using the static builder by 10%.  This means Ren/C
    optimized non-debug builds are--for the first time--are ever so slightly
    faster than the rebolsource download (in that measurement).
    hostilefork committed Nov 5, 2015
    Configuration menu
    Copy the full SHA
    0c76e51 View commit details
    Browse the repository at this point in the history