Skip to content

Commit 26ef866

Browse files
committed
Add dedicated table for Zulip usernames and sponsorship info
1 parent 74d30bd commit 26ef866

File tree

1 file changed

+50
-24
lines changed

1 file changed

+50
-24
lines changed

posts/inside-rust/2022-02-22-compiler-team-ambitions-2022.md

Lines changed: 50 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -173,34 +173,33 @@ As of this writing, we have 69 [open issues tagged I-unsound](https://github.com
173173

174174
In theory, any unsoundness issue potentially undermines Rust's promise of reliability. We want, by the end of this year, to have a clear understanding of how each of those I-unsound issues came to be. We are looking into systematically detecting such issues and whether we can deploy mitigations or fixes for entire classes of issues, instead of addressing them on a case by case basis.
175175

176-
[oli-obk], from Amazon Web Services, will be the primary owner of work in this space. Please reach out to [oli-obk] and [pnkfelix] (also from Amazon Web Services) if you are interested in helping resolve these issues! They are `@**oli**` and `@**pnkfelix**` [on zulip].
177-
176+
[oli-obk] will be the primary owner of work in this space. Please reach out to [oli-obk] and [pnkfelix] if you are interested in helping resolve these issues!
178177

179178
### Async Rust Initiatives (🦀, 👩‍💻)
180179

181180
There is significant overlap between async rust and other areas of this document, such as debugging and language expressiveness.
182181

183182
#### async traits
184183

185-
Rust today does not allow `async fn` in a trait, so Async Rust code usually ends up with components that are too tightly coupled; one cannot write reusable, general-purpose libraries without using workarounds like `#[async_trait]` that impose hidden costs. [nikomatsakis], from Amazon Web Services, and [tmandry], from Google, are driving the [async fn in traits initiative](https://github.com/rust-lang/async-fundamentals-initiative/issues/5), which will unlock the ability to write `async` methods in traits, natively. They are `@**nikomatsakis**` and `@**tmandry**` [on zulip].
184+
Rust today does not allow `async fn` in a trait, so Async Rust code usually ends up with components that are too tightly coupled; one cannot write reusable, general-purpose libraries without using workarounds like `#[async_trait]` that impose hidden costs. [nikomatsakis] and [tmandry] are driving the [async fn in traits initiative](https://github.com/rust-lang/async-fundamentals-initiative/issues/5), which will unlock the ability to write `async` methods in traits, natively.
186185

187186
#### async crashdump dissection
188187

189-
[michaelwoerister], from Microsoft, is driving the [async crashdump initiative](https://rust-lang.github.io/async-crashdump-debugging-initiative/), which will enable developers to understand the control-flow stacks encoded in crashdumps for their async Rust programs. He is `@**mw**` [on zulip].
188+
[michaelwoerister] is driving the [async crashdump initiative](https://rust-lang.github.io/async-crashdump-debugging-initiative/), which will enable developers to understand the control-flow stacks encoded in crashdumps for their async Rust programs.
190189

191190
There is a ton of other work being done in the Async Rust space. Check out the [Async Vision web site](https://rust-lang.github.io/wg-async/welcome.html) for more information.
192191

193192
### Debugging Initiatives (🦀)
194193

195-
[wesleywiser], from Microsoft, and [pnkfelix] are spinning up a wg-debugging working group. It will cover at least the following sub-items: improving Rust's debuginfo quality ([michaelwoerister], [wesleywiser]), supporting split debuginfo ([davidtwco], from Huawei R&D UK), and better integration with trace-based debuggers like `rr` ([pnkfelix]). They are `@**Wesley Wiser**`, `@**pnkfelix**`, `@**mw**` and `@**davidtwco**` [on zulip].
194+
[wesleywiser] and [pnkfelix] are spinning up a wg-debugging working group. It will cover at least the following sub-items: improving Rust's debuginfo quality ([michaelwoerister], [wesleywiser]), supporting split debuginfo ([davidtwco]), and better integration with trace-based debuggers like `rr` ([pnkfelix]).
196195

197196
The immediate goals for this initiative: establish the working group, determine priorities for the backlog of debugging issues, and find out what active users of debuggers miss most when they operate on Rust code.
198197

199198
### Faster Builds Initiatives (👩‍💻, 🛠️)
200199

201200
The Rust compiler's end-to-end latency is known to be a problem.
202201

203-
[lqd], sponsored by the Internet Security Research Group, is dedicating the majority of 2022 to working on this, partnering with Rust's compiler-performance working group as well as performance experts like [nnethercote] (from Futurewei Technologies). [lqd] has their own [living document](https://hackmd.io/3Dp68rTDSpWvRDfWF6lbMw?view) that lists areas under investigation, and [nnethercote] has a [roadmap under development](https://hackmd.io/YJQSj_nLSZWl2sbI84R1qA). They are `@**lqd**` and `@**nnethercote**` [on zulip].
202+
[lqd] is dedicating the majority of 2022 to working on this, partnering with Rust's compiler-performance working group as well as performance experts like [nnethercote]. [lqd] has their own [living document](https://hackmd.io/3Dp68rTDSpWvRDfWF6lbMw?view) that lists areas under investigation, and [nnethercote] has a [roadmap under development](https://hackmd.io/YJQSj_nLSZWl2sbI84R1qA).
204203

205204
[ISRG]: https://www.abetterinternet.org/
206205

@@ -217,9 +216,7 @@ Generic Associated Types, or [GATs](https://github.com/rust-lang/generic-associa
217216

218217
[`async fn` in traits](https://github.com/rust-lang/async-fundamentals-initiative/issues/5) is an ongoing effort (already mentioned above) owned by [tmandry]. This is one of the most frequently requested features for async rust: supplying first class support for traits like `trait Foo { async fn bar(&self); }`
219218

220-
The [safe transmute](https://github.com/rust-lang/lang-team/issues/21) project, led by [jswrenn] from Amazon Web Services, is expected to be feature-complete in summer 2022. It will enable a large class of types to be transmuted (i.e. zero-cost type conversion) without any risk of injecting undefined behavior.
221-
222-
You can reach these owners as `@**Jack Huey**`, `@**tmandry**`, and `@**Jack Wrenn**` [on zulip].
219+
The [safe transmute](https://github.com/rust-lang/lang-team/issues/21) project, led by [jswrenn], is expected to be feature-complete in summer 2022. It will enable a large class of types to be transmuted (i.e. zero-cost type conversion) without any risk of injecting undefined behavior.
223220

224221
### Librarification Initiatives (🛠️)
225222

@@ -233,7 +230,7 @@ These are initiatives dedicated to the "librarification" of the compiler: breaki
233230

234231
Chalk has been years in development, and has been experimentally integrated into rustc in the past. This year, [jackh726] and [nikomatsakis] own the task of improving the chalk integration, to drive it to the point where the team can consider migrating to chalk as the implementation of the trait system. This will unlock many features that up until now have been too difficult to implement in the old trait system implementation, and its declarative structure will provide a proper foundation for people to reason about the *correctness* of the trait system.
235232

236-
If you want to help out with this, reach out to [jackh726] and [nikomatsakis]. They are `@**Jack Huey**` and `@**nikomatsakis**` [on zulip].
233+
If you want to help out with this, reach out to [jackh726] and [nikomatsakis].
237234

238235
## Aspirations
239236

@@ -243,9 +240,9 @@ If you are interested in helping with any items here, please do reach out to the
243240

244241
### P-high Aspirations (🦀)
245242

246-
[pnkfelix] and [wesleywiser], as team leads, are deploying processes to help us get a handle on the "high priority, but *not critical*" issues that the compiler has accumulated. We will be gradually identifying owners for each who will move progress forward, and in general working to keep better track of the set overall.
243+
[pnkfelix] and [wesleywiser], as Compiler Team leads, are deploying processes to help us get a handle on the "high priority, but *not critical*" issues that the compiler has accumulated. We will be gradually identifying owners for each who will move progress forward, and in general working to keep better track of the set overall.
247244

248-
If you would like to help with the task of reviewing or resolving such issues, reach out to [wesleywiser] and [apiraino], who are co-leads of WG-prioritization. They are `@**Wesley Wiser**` and `@**apiraino**` [on zulip].
245+
If you would like to help with the task of reviewing or resolving such issues, reach out to [wesleywiser] and [apiraino], who are co-leads of WG-prioritization.
249246

250247
### Debugging Aspirations (👩‍💻)
251248

@@ -255,38 +252,38 @@ We want to improve expression evaluation support: Today, most forms of method in
255252

256253
We want to revisit our debugger extension architecture for rendering Rust data structures, which is currently mostly independent sets of Python scripts.
257254

258-
If you want to help out here, please reach out to [pnkfelix] and [wesleywiser]. They are `@**pnkfelix**` and `@**Wesley Wiser**` [on zulip].
255+
If you want to help out here, please reach out to [pnkfelix] and [wesleywiser].
259256

260257
### Faster Builds Aspirations (👩‍💻, 🛠️)
261258

262259
#### Parallel Compilation
263260

264261
Parallel Compilation is one avenue for improving compiler performance. It is also a very complex area, especially when it comes to the tradeoff of how much of a hit one is willing to take on single core builds in order to enable more parallel computation. We already parallelize our LLVM invocations, but the parallelization of the rest of the compiler remains in an experimental state. This is an area we think needs long-term collaborative effort with the compiler team. We do not expect to deliver a solution here this year.
265262

266-
If you want to discuss more with us about past attempts and ideas for the future, please reach out to [pnkfelix] and [wesleywiser]. They are `@**pnkfelix**` and `@**Wesley Wiser**` [on zulip].
263+
If you want to discuss more with us about past attempts and ideas for the future, please reach out to [pnkfelix] and [wesleywiser].
267264

268265
#### Incremental Compilation Aspirations
269266

270267
Incremental compilation performance and stability are both ongoing concerns to the team. We *know* there is significant room to improve the effectiveness of incremental compilation, in terms of reducing the amount of redundant work done by successive `rustc` invocations.
271268

272269
In addition, there is a significant amount of work that could be done to improve our testing infrastructure for incremental compiliation which does not require deep knowledge of the compiler.
273270

274-
If you want to learn more, reach out to [cjgillot] and [Aaron Hill]. They are `@**cjgillot**` and `@**Aaron Hill**` [on zulip].
271+
If you want to learn more, reach out to [cjgillot] and [Aaron Hill].
275272

276273
#### Inter-crate Sharing Aspirations
277274

278275
nnethercote has noted that there may be opportunities
279276
to improve end-to-end compilation time for multi-crate builds by identifying redundant activity that can be shared between builds of distinct crates. (For example, the metadata from libstd is read and decoded on every single crate compile.)
280277

281-
If you are interested in exploring this idea further, reach out to [nnethercote] and [lqd]. They are `@**nnethercote**` and `@**lqd**` [on zulip].
278+
If you are interested in exploring this idea further, reach out to [nnethercote] and [lqd].
282279

283280
### Expressiveness Aspirations (🦀, 👩‍💻)
284281

285282
const generics and const eval are making steady progress. There are a *lot* of feature flags, which implies there's a lot of knobs that could be turned on and off.
286283

287284
What we can probably use the most help with is in identifying what subset of the features we should be striving to stabilize in order to unlock specific use cases for Rust developers.
288285

289-
So, if you or your team is enthuastically awaiting const generics or const eval, reach out to [lcnr] (supported via [sponsorship][sponsor-lcnr]) and [oli-obk]. They are `@**lcnr**` and `@**oli**` [on zulip].
286+
So, if you or your team is enthuastically awaiting const generics or const eval, reach out to [lcnr] and [oli-obk].
290287

291288
[sponsor-lcnr]: https://lcnr.de/funding/
292289

@@ -302,7 +299,7 @@ For example, [Kani] is a bit-precise model-checker for Rust under development at
302299
[Prusti]: https://github.com/viperproject/prusti-dev#prusti
303300
[Creusot]: https://github.com/xldenis/creusot#about
304301

305-
Reach out to [xldenis], from the LMF at the University of Paris-Saclay (and co-lead of the Rust Formal Methods working group), and [pnkfelix] if you are interested in helping us here. They are `@**Xavier Denis**` and `@**pnkfelix**` [on zulip].
302+
Reach out to [xldenis], from the LMF at the University of Paris-Saclay (and co-lead of the Rust Formal Methods working group), and [pnkfelix] if you are interested in helping us here.
306303

307304
### Compiler Team Operations Aspirations (🛠️)
308305

@@ -312,7 +309,7 @@ One common task for compiler developers is to create a [minimal complete verifia
312309

313310
This is an area where you do not need any knowledge of the `rustc` source code at all. Anyone with an interest in programming language technology can get involved; e.g. one might consider adding IDE commands for certain code reducing transformations.
314311

315-
If you are interested in helping in this area, please reach out to [pnkfelix]. They are `@**pnkfelix**` [on zulip].
312+
If you are interested in helping in this area, please reach out to [pnkfelix].
316313

317314
[E-needs-mcve]: https://github.com/rust-lang/rust/issues?q=is%3Aopen+is%3Aissue+label%3AE-needs-mcve+
318315
[mcve blog post]: https://blog.pnkfx.org/blog/2019/11/18/rust-bug-minimization-patterns/
@@ -323,7 +320,7 @@ If you are interested in helping in this area, please reach out to [pnkfelix]. T
323320

324321
The performance working group has many ideas for things to improve in these tools, but limited resources. This is an area where you don't need any compiler expertise to make a huge impact; for example, our Web Front-end could use work. And Data Scientists might have useful insights into our problems. Beyond just measuring the compiler's own performance, we're also interested in measuring the runtime performance of produced binaries.
325322

326-
Reach out to [rylev], from Microsoft, and [Mark-Simulacrum] (supported via [sponsorship](https://github.com/sponsors/Mark-Simulacrum)), performance working group lead, if you want to help. They are `@**rylev**` and `@**simulacrum**` [on zulip].
323+
Reach out to [rylev] and [Mark-Simulacrum], performance working group lead, if you want to help.
327324

328325
[@rust-timer]: https://github.com/rust-timer
329326
[perf]: https://perf.rust-lang.org/
@@ -332,13 +329,13 @@ Reach out to [rylev], from Microsoft, and [Mark-Simulacrum] (supported via [spon
332329

333330
#### Ease writing new backends
334331

335-
One source of tedium when defining a new Rust compiler backend is implementing the intrinsics that each backend must provide. But a small change to the intrinsic system: namely, allowing intrinsics to define a [fallback MIR implementation][], could ease that burden. Reach out to [scottmcm] if you are interested in helping out here. They are `@**scottmcm**` [on zulip].
332+
One source of tedium when defining a new Rust compiler backend is implementing the intrinsics that each backend must provide. But a small change to the intrinsic system: namely, allowing intrinsics to define a [fallback MIR implementation][], could ease that burden. Reach out to [scottmcm] if you are interested in helping out here.
336333

337334
[fallback MIR implementation]: https://github.com/rust-lang/rust/issues/93145
338335

339336
#### Cranelift
340337

341-
The [Cranelift Code Generator][Cranelift] is getting a lot of attention from various parties. rustc has a [Cranelift backend][]. If you are interested in helping out with it, reach out to [bjorn3] (supported via [sponsorship][sponsor-bjorn3]). They are `@**bjorn3**` [on zulip].
338+
The [Cranelift Code Generator][Cranelift] is getting a lot of attention from various parties. rustc has a [Cranelift backend][]. If you are interested in helping out with it, reach out to [bjorn3].
342339

343340
[sponsor-bjorn3]: https://liberapay.com/bjorn3
344341

@@ -349,14 +346,14 @@ The [Cranelift Code Generator][Cranelift] is getting a lot of attention from var
349346

350347
In addition to the LLVM and Cranelift backends, there is also a new backend under development that uses `libgccjit` from GCC (which, as many have clarified, is usable for ahead-of-time as well as just-in-time compilation). This backend enables Rust to target more platforms that are not supported by LLVM.
351348

352-
If you are interested in helping out with this project, reach out to [antoyo] (supported via [sponsorship](https://github.com/sponsors/antoyo)) and [bjorn3]. They are `@**antoyo**` and `@**bjorn3**` [on zulip].
349+
If you are interested in helping out with this project, reach out to [antoyo] and [bjorn3].
353350

354351

355352
### Diagnostics Aspirations (👩‍💻)
356353

357354
The Rust compiler has pretty good diagnotics. But the good news is, there's a [full employment theorem](https://en.wikipedia.org/wiki/Full_employment_theorem) for diagnostics engineers which is supported by the 1,500+ [open diagnostics issues](https://github.com/rust-lang/rust/issues?q=is%3Aopen+is%3Aissue+label%3AA-diagnostics) we have.
358355

359-
Diagnostics improvements are an *excellent* first step for learning about how to contribute to the Rust compiler. If you're interested in helping out but don't have any idea where to start, fixing diagnostic bugs is a great jumping off point, and you can reach out to [estebank], at Amazon Web Services, to find out more about how to help. They are `@**Esteban Küber**` [on zulip].
356+
Diagnostics improvements are an *excellent* first step for learning about how to contribute to the Rust compiler. If you're interested in helping out but don't have any idea where to start, fixing diagnostic bugs is a great jumping off point, and you can reach out to [estebank] to find out more about how to help.
360357

361358

362359
## Conclusion
@@ -396,3 +393,32 @@ This is not a problem! Many members of our community learned about compilers by
396393
[Contributing to the Compiler]: https://www.youtube.com/watch?v=vCODCbUSA_w
397394

398395
In addition, there are areas in this project where people without compiler expertise can have impact. For example, as mentioned in the [Performance Dashboard](#Performance-Dashboard) section, some of our internal tools could use some web front-end work.
396+
397+
### How can I contact an item's owners or sponsor their work on Rust?
398+
399+
This table lists the item owners mentioned above, their [Zulip] username and if they are accepting sponsorships to help them work on Rust:
400+
401+
Owner | Zulip Username | Accepting sponsorships?
402+
-|-|-
403+
[Aaron Hill] | `@Aaron Hill` | No
404+
[antoyo] | `@antoyo` | Yes: [GitHub Sponsors](https://github.com/sponsors/antoyo)
405+
[apiraino] | `@apiraino` | No
406+
[bjorn3] | `@bjorn3` | Yes: [Librapay](https://liberapay.com/bjorn3)
407+
[cjgillot] | `@cjgillot` | No
408+
[davidtwco] | `@davidtwco` | No: works on Rust at Huawei R&D UK
409+
[estebank] | `@Esteban Küber` | No: works on Rust at Amazon Web Services
410+
[jackh726] | `@Jack Huey` | No
411+
[jswrenn] | `@Jack Wrenn` | No: works on Rust at Amazon Web Services
412+
[lcnr] | `@lcnr` | Yes: https://lcnr.de/funding/
413+
[lqd] | `@lqd` | No: sponsored by the Internet Security Research Group
414+
[Mark-Simulacrum] | `@simulacrum` | Yes, [GitHub Sponsors](https://github.com/sponsors/Mark-Simulacrum)
415+
[michaelwoerister] | `@mw` | No: works on Rust at Microsoft
416+
[nikomatsakis] | `@nikomatsakis` | No: works on Rust at Amazon Web Services
417+
[nnethercote] | `@nnethercote` | No: works on Rust at Futurewei
418+
[oli-obk] | `@oli` | No: works on Rust at Amazon Web Services
419+
[pnkfelix] | `@pnkfelix` | No: works on Rust at Amazon Web Services
420+
[rylev] | `@rylev` | No: works on Rust at Microsoft
421+
[scottmcm] | `@scottmcm` | No
422+
[tmandry] | `@tmandry` | No: works on Rust at Google
423+
[wesleywiser] | `@Wesley Wiser` | No: works on Rust at Microsoft
424+
[xldenis] | `@Xavier Denis` | No

0 commit comments

Comments
 (0)