Skip to content
Permalink
Branch: master
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
84 lines (59 sloc) 4.16 KB

Triage meeting on 2019-03-04

Info

Zulip thread.

Summary

We followed up on the goals from last time.

Lifetime problems around async-await

We discussed how we found a way to resolve the async fn complications by changing the async fn desugaring, and hence don't need any deep trait action. We are still interested in trying to find a way to solve the "captures problem" for impl Trait, however, and alexreg and nikomatsakis may do some follow-up there.

Explore use cases for lazy normalization

Some investigation occurred. Current plan to continue documenting the way that the current normalization code plays out and to hold some sort of meeting to document that and walk through it. That meeting will hopefully happen this week and will be recorded.

Explorse use cases for GATs

Not a lot of progress here. (Yet!)

Once we do make progress, though, the logical next step is probably to try and model those use cases some in Chalk, as well as to investigate more deeply how rustc could be extended to handle the cases natively (without blocking on full chalk integration).

Dig into the chalk transition

We have a meeting scheduled for tomorrow with the RLS 2.0 folks, planning to talk about how the type checker is working in that context.

We are thinking that integrating Chalk first into the RLS 2.0 project may be a better idea than starting with rustc, particularly as it can help get RLS 2.0 to a "working product" faster, but also because we may be able to use that to pursue the idea of sharing more code between chalk + compiler than we could readily do with rustc. Specifically, we should be able to have:

  • a library to share the definition of types between chalk + RLS 2.0
  • shared code for lowering traits + impls into logical rules

We also talked about other possible work on chalk, in particular the idea of chalk-specific refactorings but also building a benchmarking harness for the chalk-engine crate.

Miscellaneous discussion

There are a few other things we talked about this week:

Plans for the coming week

We settled on the following plans for the coming week:

So plans for this week are:

  • Describe how normalization works today and hold a (recorded) call to try and explain it to others. Trace through some of the examples where lazy norm would be helpful. (nikomatsakis)
  • Explore the use cases for GATs (aturon, centril)
  • Discuss RLS 2.0 type checker and contemplate how to integrate chalk into it (nikomatsakis, scalexm)
  • Maybe discuss other chalk improvements? (e.g., benchmarking harness) (nikomatsakis)
  • Maybe discuss the "lifetime capture" problem in impl Trait? (nikomatsakis, alexreg)
You can’t perform that action at this time.