Skip to content

[ refactor ] ScopedSnocList: Swap Scope on SnocList (Phase 2) #3513

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

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

Conversation

GulinSS
Copy link

@GulinSS GulinSS commented Mar 19, 2025

Should be considered to merge ONLY AFTER applying #3512 and actual rebasing.

It is a DEMO place for discussion about coming changes at full amount of changes.

Should this change go in the CHANGELOG?

  • If this is a fix, user-facing change, a compiler change, or a new paper
    implementation, I have updated CHANGELOG_NEXT.md (and potentially also
    CONTRIBUTORS.md).

@GulinSS
Copy link
Author

GulinSS commented Mar 25, 2025

@spcfox prepared a report of building packages.

TLDR; all builds reached complete step of compilation. 🎉

GulinSS and others added 3 commits May 12, 2025 12:04
Core idea is to split the process of transition from List-based Context on SnocList-based Context on 2 phases:

1. Apply a refactor which does not make any transition (even no observable changes for Idris users) actually but prepare the code for future update.
2. Roll out the transition with limited code changes invasion because it was partially done at the step before.

Co-authored-by: Viktor Yudov <[email protected]>
* [ refactor ] Replace `rev` with `reverse` and make `LengthMatch` arguments erased

* [ refactor ] Move `embed'` definition into `FreelyEmbeddable` implementation

* [ refactor ] Optimize `mkPatClause.mkNames` in `CaseBuilder`

* [ refactor ] Swap parameters of `NamedPats`

* [ refactor ] Remove `snoc` for `NamedPats`

* [ refactor ] Use `List` for forward order in `CaseBuilder.idr`

* [ refactor ] Swap the arguments of `PatClause`, `Group` and `ScoredPats` like `NamedPats`

* [ refactor ] Merge simillar cases in `nextNames'` and `mkNames`

* [ cleanup ] Remove redudant functions

Cherry-picked from #16
Fully authored by Viktor Yudov <[email protected]>

Co-authored-by: Viktor Yudov <[email protected]>
@GulinSS GulinSS force-pushed the scoped-snoc-list-swap branch from ff61ad5 to 9367788 Compare May 12, 2025 11:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant