feat: implement arithmetic on numeric generics#4958
Closed
michaeljklein wants to merge 3 commits intomasterfrom
Closed
feat: implement arithmetic on numeric generics#4958michaeljklein wants to merge 3 commits intomasterfrom
michaeljklein wants to merge 3 commits intomasterfrom
Conversation
…ith operation, move constant/named-generic into sub-struct, add unit and test_programs tests
5 tasks
github-merge-queue bot
pushed a commit
that referenced
this pull request
May 9, 2024
# Description ## Problem\* Resolves #4953 ## Summary\* Adds an elaborator - a concept borrowed from dependently typed languages - which performs name resolution and type checking simultaneously. The new elaborator is currently disabled (inaccessible from user code) since it is not hooked up to the `dc_crate` module. This PR is extremely large (sorry!) but is 99% a pseudo copy-paste of existing code from the name resolver and type checker, only slightly adapted to be able to work in tandem. Unfortunately, this also means that we'll need to duplicate any changes made to the name resolver & type checker in the elaborator as well until we can remove the old name resolution and type checking passes. For example, #4958 will need to be integrated into the elaborator as well. ## Additional Context After this PR the plan is to 1. Connect the elaborator to `dc_crate`, enabling it with a command-line option. 2. Insert logic for the comptime scanning pass in the elaborator as well. 3. Test the elaborator against all existing tests. 4. Once it passes, we can use the elaborator by default and delete the name resolution, type checking, and comptime scanning passes. ## Documentation\* Check one: - [x] No documentation needed. - [ ] Documentation included in this PR. - [ ] **[For Experimental Features]** Documentation to be submitted in a separate PR. # PR Checklist\* - [x] I have tested the changes locally. - [ ] I have formatted the changes with [Prettier](https://prettier.io/) and/or `cargo fmt` on default settings.
5 tasks
Member
|
Closing in favour of #5060 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Problem*
Resolves #4784
Summary*
Additional Context
Documentation*
Check one:
PR Checklist*
cargo fmton default settings.