- Leads: @blitzerr, @nikomatsakis
- Meeting Notes: NOTES
- FAQs: FAQ
This working group aims to accomplish the following:
- Finish, optimize, and test the implementation of RFC-2229. RFC 2229 changes the way closure-capture works so that we no longer capture entire individual variables, instead capture the actual path to fields of the variable, that is used. This helps to eliminate borrow check errors.
- Produce documentation of how the closures in Rust are implemented in the rustc-guide along the way. Currently, the rustc guide does not have a section on closures. We would like to change it.
If you are interested in getting involved in this working group, you are welcome to introduce yourself in the Zulip stream. You can be added to the GitHub and Zulip group for the working group if you are interested in being pinged when there are available tasks.
- Desired experience level: Any
- Relevant repositories:
rust-lang/rust
- Zulip stream:
#t-compiler/wg-rfc-2229
on Zulip
There are a few videos recorded by niko that give an excellent overview of how rustc implements closures and a detailed code walk-through. The videos can be found here.
Definitely, you can. If you would like to have a deep understanding of closures but don't intend to write any code, help us add a section to the rustc-guide. One way to do that will be to watch these videos and to summarize the closure implementation details discussed there in a new closure section of the rustc-guide.
The project roadmap can be found here.