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

Cache Pure Top Level Definitions on startup #5379

Merged
merged 45 commits into from
Oct 9, 2024
Merged

Cache Pure Top Level Definitions on startup #5379

merged 45 commits into from
Oct 9, 2024

Commits on Sep 26, 2024

  1. Configuration menu
    Copy the full SHA
    76d633b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    706e785 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    2c11521 View commit details
    Browse the repository at this point in the history
  4. Attempt to pre-eval

    ChrisPenner committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    4240517 View commit details
    Browse the repository at this point in the history
  5. Edit CodeLookup

    ChrisPenner committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    eefff5b View commit details
    Browse the repository at this point in the history
  6. Compiling somehow

    ChrisPenner committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    4b2c490 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    d5a802b View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    5ea32f0 View commit details
    Browse the repository at this point in the history
  9. Add type aliases for refs

    ChrisPenner committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    df95712 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    151f345 View commit details
    Browse the repository at this point in the history
  11. Cleanup

    ChrisPenner committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    f367824 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    da9a588 View commit details
    Browse the repository at this point in the history
  13. Debugging info

    ChrisPenner committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    1940a4a View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    d0a95e9 View commit details
    Browse the repository at this point in the history
  15. Store srcCombs in SCache

    ChrisPenner committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    e0bacf1 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    47fd299 View commit details
    Browse the repository at this point in the history
  17. Configuration menu
    Copy the full SHA
    e7ca2f5 View commit details
    Browse the repository at this point in the history
  18. Split CombIx out of RComb

    ChrisPenner committed Sep 26, 2024
    Configuration menu
    Copy the full SHA
    e7d01c0 View commit details
    Browse the repository at this point in the history

Commits on Sep 27, 2024

  1. Configuration menu
    Copy the full SHA
    699a23d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2fb33a2 View commit details
    Browse the repository at this point in the history
  3. Serialization WIP

    ChrisPenner committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    c662bfc View commit details
    Browse the repository at this point in the history
  4. Resolve conflicts

    ChrisPenner committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    22913b7 View commit details
    Browse the repository at this point in the history
  5. Rewrite pre-evaluation

    ChrisPenner committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    336c1a4 View commit details
    Browse the repository at this point in the history
  6. Fixed closure embedding

    ChrisPenner committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    5a946f8 View commit details
    Browse the repository at this point in the history
  7. Don't serialize Closures

    ChrisPenner committed Sep 27, 2024
    Configuration menu
    Copy the full SHA
    6ea04b8 View commit details
    Browse the repository at this point in the history

Commits on Sep 30, 2024

  1. Configuration menu
    Copy the full SHA
    44d2f82 View commit details
    Browse the repository at this point in the history
  2. automatically run ormolu

    ChrisPenner authored and github-actions[bot] committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    cd60a76 View commit details
    Browse the repository at this point in the history
  3. PR Cleanup

    ChrisPenner committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    493daeb View commit details
    Browse the repository at this point in the history
  4. Tweak MCode Let representation

    This introduces a minor change to the structure of MCode Let
    bindings. Before various refactoring, a Let would use a CombIx to
    indicate where execution should resume once the binding is
    evaluated. Now the code is resolved ahead of time and referred to
    directly. However, logically this code is just a further Section;
    the rest of the actual function that contained the Let.
    
    The purpose of using a Comb was to store stack protection
    information, so that the stack check can be performed upon reentry.
    This is necessary if the continuation has been captured and we are
    resuming in a context that was not the original entry point of the
    resumption.
    
    Now, though, a top level 'comb' can be either code or a memoized
    value, but a resumption will never be the latter. So Let has been
    changed to store the relevant information, instead of delegating to
    Comb.
    dolio committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    ad3225f View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4ff96ef View commit details
    Browse the repository at this point in the history
  6. Remove now unnecessary prettyIx

    dolio committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    3164f82 View commit details
    Browse the repository at this point in the history
  7. automatically run ormolu

    dolio authored and github-actions[bot] committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    42f6d76 View commit details
    Browse the repository at this point in the history
  8. Fix unused binding warning

    dolio committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    0ea57fc View commit details
    Browse the repository at this point in the history
  9. Merge remote-tracking branch 'refs/remotes/origin/cp/cache-toplevel' …

    …into cp/cache-toplevel
    dolio committed Sep 30, 2024
    Configuration menu
    Copy the full SHA
    5fdac2f View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    bfdf6c5 View commit details
    Browse the repository at this point in the history

Commits on Oct 4, 2024

  1. Factor GComb a bit, and make PAp more correct

    A PAp should only contain an actual combinator, not a cached value.
    So, the combinator case has been factored out of and unpacked into
    GComb. This way a PAp can refer to the factored-out part.
    dolio committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    eeadb6d View commit details
    Browse the repository at this point in the history
  2. automatically run ormolu

    dolio authored and github-actions[bot] committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    3c70787 View commit details
    Browse the repository at this point in the history
  3. Include cacheability information in Code values

    This allows code sent between machines to pre-evaluate things if
    applicable. Naturally, this requires serialization version changes.
    Some tweaks have been made to avoid changing hashes as much as
    possible between versions.
    
    Old serialized values and code can still be loaded, but obviously
    they will be treated as completely uncacheable.
    dolio committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    2982c5e View commit details
    Browse the repository at this point in the history
  4. Merge remote-tracking branch 'refs/remotes/origin/cp/cache-toplevel' …

    …into cp/cache-toplevel
    dolio committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    af19b0c View commit details
    Browse the repository at this point in the history
  5. automatically run ormolu

    dolio authored and github-actions[bot] committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    4b45eea View commit details
    Browse the repository at this point in the history
  6. Fix MCode tests

    dolio committed Oct 4, 2024
    Configuration menu
    Copy the full SHA
    545f5ea View commit details
    Browse the repository at this point in the history

Commits on Oct 8, 2024

  1. Fix a guard in unison-runtime

    It was meant to be a test in a `match` expression, but was missing
    a #:when
    dolio committed Oct 8, 2024
    Configuration menu
    Copy the full SHA
    d8d2f69 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1660ea4 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8d6f283 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    b3d9d63 View commit details
    Browse the repository at this point in the history