Functor generics
Open
Nobody has claimed this yet.
design needed
enhancement
language
- Dominant language
- Rust
- Stars
- 1k
- Forks
- 212
- Avg merge
- 3d 8h
- Merged PRs (30d)
- 65
Description
There's a pattern in Q# of using *A, *C, *CA suffixes operations that take in other operations as arguments, and that themselves inherit the functors of the given operation. Q# should have a way to abstract over this, like a type parameter for functors.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by mapping how Q# represents operations and their *A, *C, and *CA functor combinations, then identify the compiler and type-system entry points involved. Define what a functor type parameter should express and how existing operation declarations would be checked; done means the design is agreed and covered by appropriate compiler tests.
Written by the indexing model from the issue text.
Assessment
- Domain
- compilers, quantum-computing
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100