Skip to content

Commit 2bef7ae

Browse files
authored
Merge pull request #822 from apiraino/add-more-working-areas-refs
Add more references for compiler working areas
2 parents 0e27843 + 50d4aab commit 2bef7ae

File tree

1 file changed

+46
-33
lines changed

1 file changed

+46
-33
lines changed

src/compiler/working-areas.md

Lines changed: 46 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,61 @@
11
# Working Areas
22

3-
Much of the ongoing work and initiatives from the compiler team are performed by groups of people interested in specific areas of work. These groups of are a great way for new contributors to get involved as they provide a stream of tasks all focused around one area and have designated channels for help and advice. Here is a list of areas where work is being carried on:
3+
Much of the ongoing work and initiatives from the compiler team are performed by groups of people interested in specific areas of work. These groups are a great way for new contributors to get involved as they provide a stream of tasks focused around one area and have designated channels for help and advice. Here is a list of areas where work is being carried on:
44

5-
Name | Status | Short Description | Zulip Stream
6-
---- | ------ | ----------------- | ------------
7-
[Async-await Implementation](working-groups/async-await/) | Active | Implementing async-await | [#wg-async][async-await_stream]
8-
[Diagnostics](working-groups/diagnostics/) | Active | Use crates.io crates for diagnostics rendering and make emitting diagnostics nicer. | [#t-compiler/diagnostics][diagnostics_stream]
9-
[LLVM](working-groups/llvm/) | Active | Working with LLVM upstream to represent Rust in its development | [#t-compiler/llvm][llvm_stream]
10-
[MIR Optimizations](working-groups/mir-opt/) | Active | Write MIR optimizations and refactor the MIR to be more optimizable. | [#t-compiler/mir-opts][mir-opts-stream]
11-
[Parallel-rustc](working-groups/parallel-rustc/) | Paused | Making parallel compilation the default for rustc | [#t-compiler/parallel-rustc][parallel-rustc_stream]
12-
[Polonius](working-groups/polonius/) | Active | Exploring the integration of the "NLL 2.0"-like ["Polonius analysis"][Polonius] into rustc | [#t-types/polonius][polonius_stream]
13-
[RLS 2.0](working-groups/rls-2.0/) | Active | Experimenting with a new compiler architecture tailored for IDEs | [#t-compiler/rust-analyzer][rls20_stream]
14-
[Rustc Dev Guide](working-groups/rustc-dev-guide/) | Active | Make the compiler easier to learn by ensuring that rustc-dev-guide is "complete" | [#t-compiler/rustc-dev-guide][rustc-dev-guide_stream]
5+
Name | Short Description | Code | Zulip Stream
6+
---- | ----------------- | ---------- | ------------
7+
Async-await Implementation | Implementing async-await | [Link][async-await_code] | [#wg-async][async-await_stream]
8+
Diagnostics | Use crates.io crates for diagnostics rendering and make emitting diagnostics nicer. | [rustc_errors], [rustc_lint], [annotate-snippets] | [#t-compiler/diagnostics][diagnostics_stream]
9+
LLVM | Working with LLVM upstream to represent Rust in its development | [rustc], [LLVM][llvm_code] | [#t-compiler/llvm][llvm_stream]
10+
MIR Optimizations | Write MIR optimizations and refactor the MIR to be more optimizable. | [MIR transform](mir_transform_code) | [#t-compiler/mir-opts][mir-opts-stream]
11+
Parallel-rustc | Making parallel compilation the default for rustc | [rustc] | [#t-compiler/parallel-rustc][parallel-rustc_stream]
12+
Polonius | Exploring the integration of the "NLL 2.0"-like ["Polonius analysis"][Polonius] into rustc | [borrow check][borrowck], [rust-lang/polonius][P], [rust-lang/datafrog][DF] | [#t-types/polonius][polonius_stream]
13+
RLS 2.0 | Experimenting with a new compiler architecture tailored for IDEs | [rust-analyzer][ra-repo] | [#t-compiler/rust-analyzer][rls20_stream]
14+
Rustc Dev Guide | Make the compiler easier to learn by ensuring that rustc-dev-guide is "complete" | [rustc], [rustc-dev-guide][rustc-dev-guide-repo] | [#t-compiler/rustc-dev-guide][rustc-dev-guide_stream]
1515

1616
For historical record here's a list of Working Groups that are not active anymore (either because they reached their goals or because work stalled):
1717

18-
Name | Status | Short Description | Zulip Stream
19-
---- | ------ | ----------------- | ------------
20-
[Meta](working-groups/meta/) | Paused | How compiler team organizes itself | [#z-archived-t-compiler/wg-meta][meta_stream]
21-
[Non-Lexical Lifetimes (NLL)](working-groups/nll/) | Retired | Implementing non-lexical lifetimes | [#z-archived-t-compiler/wg-nll][nll_stream]
22-
[Polymorphization](working-groups/polymorphization/) | Active | Implement an analysis to detect when functions can remain polymorphic during code generation. | [#z-archived-t-compiler/wg-polymorphization][polymorphization_stream]
23-
[Prioritization](working-groups/prioritization/) | Active | Triaging bugs, mainly deciding if bugs are critical (potential release blockers) or not. | [#t-compiler/prioritization][prioritization_stream]
24-
[Profile-Guided Optimization](working-groups/pgo/) | Retired | Implementing profile-guided optimization for rustc | [#z-archived-t-compiler/wg-profile-guided-optimization][pgo_stream]
25-
[RFC 2229](working-groups/rfc-2229/) | Retired | Make a closure capture individual fields of the variable rather than the entire composite variable | [#z-archived-t-compiler/wg-rfc-2229][rfc-2229-stream]
26-
[Rustc pipelining](working-groups/pipelining/) | Retired | Enable Cargo to invoke rustc in a pipelined fashion, speeding up crate graph compiles. | [#z-archived-t-compiler/wg-pipelining][pipelining-stream]
27-
[Self-Profile](working-groups/self-profile/) | Active | Improving the `-Z self-profile` feature | [#z-archived-t-compiler/wg-self-profile][self-profile_stream]
28-
[Traits](working-groups/traits/) | Active | Improving the trait-system design + implementation | [#z-archived-t-compiler/wg-traits][traits_stream]
18+
Name | Short Description | Zulip Stream
19+
---- | ----------------- | ------------
20+
Meta | How compiler team organizes itself | [#z-archived-t-compiler/wg-meta][meta_stream]
21+
Non-Lexical Lifetimes (NLL) | Implementing non-lexical lifetimes | [#z-archived-t-compiler/wg-nll][nll_stream]
22+
Polymorphization | Implement an analysis to detect when functions can remain polymorphic during code generation. | [#z-archived-t-compiler/wg-polymorphization][polymorphization_stream]
23+
Prioritization | Triaging regressions, mainly deciding if there are potential release blockers | [#t-compiler/prioritization][prioritization_stream]
24+
Profile-Guided Optimization | Implementing profile-guided optimization for rustc | [#z-archived-t-compiler/wg-profile-guided-optimization][pgo_stream]
25+
RFC 2229 | Make a closure capture individual fields of the variable rather than the entire composite variable | [#z-archived-t-compiler/wg-rfc-2229][rfc-2229-stream]
26+
Rustc pipelining | Enable Cargo to invoke rustc in a pipelined fashion, speeding up crate graph compiles. | [#z-archived-t-compiler/wg-pipelining][pipelining-stream]
27+
Self-Profile | Improving the `-Z self-profile` feature | [#z-archived-t-compiler/wg-self-profile][self-profile_stream]
28+
Traits | Improving the trait-system design + implementation | [#z-archived-t-compiler/wg-traits][traits_stream]
2929

3030
[Weekly, in Zulip]: #meeting-calendar
31-
[nll_stream]: https://rust-lang.zulipchat.com/#narrow/channel/122657-z-archived-t-compiler.2Fwg-nll
31+
[Polonius]: https://github.com/rust-lang/polonius
32+
[rustc]: https://github.com/rust-lang/rust/tree/master/compiler
33+
[async-await_stream]: https://rust-lang.zulipchat.com/#narrow/channel/187312-wg-async
34+
[async-await_code]: https://github.com/rust-lang/wg-async-foundations
35+
[diagnostics_stream]: https://rust-lang.zulipchat.com/#narrow/channel/147480-t-compiler.2Fdiagnostics
3236
[llvm_stream]: https://rust-lang.zulipchat.com/#narrow/stream/187780-t-compiler.2Fwg-llvm
37+
[llvm_code]: https://github.com/rust-lang/llvm-project
3338
[meta_stream]: https://rust-lang.zulipchat.com/#narrow/channel/185694-z-archived-t-compiler.2Fwg-meta
34-
[rls20_stream]: https://rust-lang.zulipchat.com/#narrow/channel/185405-t-compiler.2Frust-analyzer
35-
[traits_stream]: https://rust-lang.zulipchat.com/#narrow/stream/144729-t-compiler.2Fwg-traits
36-
[async-await_stream]: https://rust-lang.zulipchat.com/#narrow/channel/187312-wg-async
37-
[self-profile_stream]: https://rust-lang.zulipchat.com/#narrow/stream/187831-t-compiler.2Fwg-self-profile
38-
[pgo_stream]: https://rust-lang.zulipchat.com/#narrow/channel/187830-z-archived-t-compiler.2Fwg-profile-guided-optimization
39-
[parallel-rustc_stream]: https://rust-lang.zulipchat.com/#narrow/stream/187679-t-compiler.2Fwg-parallel-rustc
40-
[rfc-2229-stream]: https://rust-lang.zulipchat.com/#narrow/channel/189812-z-archived-t-compiler.2Fwg-rfc-2229
4139
[mir-opts-stream]: https://rust-lang.zulipchat.com/#narrow/stream/189540-t-compiler.2Fwg-mir-opt
40+
[mir_transform_code]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_mir_transform
41+
[nll_stream]: https://rust-lang.zulipchat.com/#narrow/channel/122657-z-archived-t-compiler.2Fwg-nll
42+
[parallel-rustc_stream]: https://rust-lang.zulipchat.com/#narrow/stream/187679-t-compiler.2Fwg-parallel-rustc
43+
[pgo_stream]: https://rust-lang.zulipchat.com/#narrow/channel/187830-z-archived-t-compiler.2Fwg-profile-guided-optimization
4244
[pipelining-stream]: https://rust-lang.zulipchat.com/#narrow/channel/195180-z-archived-t-compiler.2Fwg-pipelining
4345
[polonius_stream]: https://rust-lang.zulipchat.com/#narrow/channel/186049-t-types.2Fpolonius
4446
[polymorphization_stream]: https://rust-lang.zulipchat.com/#narrow/channel/216091-z-archived-t-compiler.2Fwg-polymorphization
45-
[rustc-dev-guide_stream]: https://rust-lang.zulipchat.com/#narrow/stream/196385-t-compiler.2Fwg-rustc-dev-guide
46-
[Polonius]: https://github.com/rust-lang/polonius
47-
[diagnostics_stream]: https://rust-lang.zulipchat.com/#narrow/channel/147480-t-compiler.2Fdiagnostics
4847
[prioritization_stream]: https://rust-lang.zulipchat.com/#narrow/channel/227806-t-compiler.2Fprioritization
48+
[rfc-2229-stream]: https://rust-lang.zulipchat.com/#narrow/channel/189812-z-archived-t-compiler.2Fwg-rfc-2229
49+
[rls20_stream]: https://rust-lang.zulipchat.com/#narrow/channel/185405-t-compiler.2Frust-analyzer
50+
[rustc-dev-guide_stream]: https://rust-lang.zulipchat.com/#narrow/stream/196385-t-compiler.2Fwg-rustc-dev-guide
51+
[self-profile_stream]: https://rust-lang.zulipchat.com/#narrow/stream/187831-t-compiler.2Fwg-self-profile
52+
[traits_stream]: https://rust-lang.zulipchat.com/#narrow/stream/144729-t-compiler.2Fwg-traits
53+
[repo]: https://github.com/rust-lang/rust
54+
[DF]: https://github.com/rust-lang/datafrog
55+
[P]: https://github.com/rust-lang/polonius
56+
[borrowck]: https://github.com/rust-lang/rust/tree/ae9173d7dd4a31806c950c90dcc331f1508b4d17/compiler/rustc_borrowck
57+
[ra-repo]: https://github.com/rust-analyzer/rust-analyzer
58+
[rustc-dev-guide-repo]: https://github.com/rust-lang/rustc-dev-guide
59+
[rustc_errors]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_errors
60+
[rustc_lint]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_lint
61+
[annotate-snippets]: https://crates.io/crates/annotate-snippets

0 commit comments

Comments
 (0)