WG-Polonius meeting minutes 2019.04.30

WG-Polonius meeting minutes: 2019/04/30

Relevant links:

In this meeting, we started with a short review of the previous week’s work:

  • Albin continued work on implementing liveness in Polonius, and opened the rustc part of this work: generating the facts needed by the Polonius computation.
  • Niko wrote up some more notes on continuing the liveness work: the next major part being computing the region_live_at facts in Polonius analyses instead of rustc.
  • Rémy continued the previous week’s work of using the results of LocInsensitive in DatafrogOpt via the Hybrid analysis, especially looking for changes in behaviour using polonius and rustc’s tests, and ran into the task mentioned the week before: the rustc ui test suite under polonius has more failures than expected.
  • @lokalmatador looked into building rustc and the various bits they would need for profiling.

Since the liveness work is a bit complex, has many moving parts, and is generally hard to test, we talked about correctness, testing, rustc’s test suite and the need to have a reasonable test suite in general. A first step will be to look into rustc’s test suite failures, ignoreing irrelevant tests or add blessed output, at the very least to track changes and regressions more easily.

The WIP plan about polonius features and rustc integration/subsumption looks clear:

  • liveness, which we are actively working on now.
  • moves, which should hopefully be smaller, has precedent in the work on Lark, and could be partially/possibly applicable to rustc.
  • regions and region logic, for which we have started working on the easier parts, but also crosses paths with the traits WG and chalk effort for the more complex ones.

Useful future tasks we mentioned:

  • after the inaugural talk, it’d be useful to continue the “explaining Polonius” series of videos/talks, focusing on the analysis rules and examples to learn, or remember, why they are the way they are.

For the following week:

  • Albin will continue on liveness.
  • Rémy will look at the rustc tests in more detail.
  • Niko will prepare the next steps in the liveness, to stay ahead of Albin’s progress.
  • @lokalmatador will familiarize with the steps Niko wrote, with available help from the rest of the WG.