Stream: t-compiler

Topic: planning meeting 2019.08.30


nikomatsakis (Aug 30 2019 at 12:40, on Zulip):

Hey @T-compiler/meeting -- we have a planning meeting scheduled for today. Normally this would be used (in theory...) to review open PRs on the planning repo, though there aren't any (yet). I think we should still hold the meeting to talk a bit about our focus and what to do over the next few months. Maybe plan a few meetings. So...meeting in ~80 minutes? Wave if you'll be available, it'd be good to get a rough idea of who might be able to attend.

nikomatsakis (Aug 30 2019 at 12:43, on Zulip):

Also, free to open a meeting proposal before the meeting -- I hope to open one or two.

matklad (Aug 30 2019 at 13:38, on Zulip):

I'll open one about IDE story

nikomatsakis (Aug 30 2019 at 13:54, on Zulip):

@matklad do you have something to open? I can make a placeholder otherwise

matklad (Aug 30 2019 at 13:55, on Zulip):

30 secs

nikomatsakis (Aug 30 2019 at 13:55, on Zulip):

I got a late start because reasons

nikomatsakis (Aug 30 2019 at 13:55, on Zulip):

ok, great

matklad (Aug 30 2019 at 13:56, on Zulip):

https://github.com/rust-lang/compiler-team/issues/160

nikomatsakis (Aug 30 2019 at 13:57, on Zulip):

great, that looks roughly like what I was going to write

nikomatsakis (Aug 30 2019 at 14:01, on Zulip):

Hello @T-compiler/meeting -- planning meeting

nikomatsakis (Aug 30 2019 at 14:01, on Zulip):

As I wrote above, the point of this meeting is primarily to plan the next 4 weeks. But we've not had meetings in a while, so I'm open to some further discussion, though I'd like to keep things a bit organized. =)

nikomatsakis (Aug 30 2019 at 14:01, on Zulip):

To start though, let's give people time to arrive.

nikomatsakis (Aug 30 2019 at 14:01, on Zulip):

Announcements

nikomatsakis (Aug 30 2019 at 14:03, on Zulip):

One thing that might interest folks here -- we had a discussion about noalias in the lang-team meeting as it affects async-await. Relevant to our own attempts to re-enable noalias on &mut references (e.g., #54878). There's a summary here.

nikomatsakis (Aug 30 2019 at 14:03, on Zulip):

Oh, I just thought of something else I wanted to propose

nikomatsakis (Aug 30 2019 at 14:03, on Zulip):

/me makes a quick issue

nikomatsakis (Aug 30 2019 at 14:06, on Zulip):

OK, let's get started :)

nikomatsakis (Aug 30 2019 at 14:06, on Zulip):

So there are a number of meeting proposals opened

nikomatsakis (Aug 30 2019 at 14:07, on Zulip):
Vadim Petrochenkov (Aug 30 2019 at 14:08, on Zulip):

noalias

I've just had a tangentially related discussion at work this week about implementing a kind of "hardware micro-threads" extension in RISC-V, and how great it would be to be able to break functions into "independent" regions for this in the compiler, and how hard C++ makes this due to its aliasing rules.

nikomatsakis (Aug 30 2019 at 14:08, on Zulip):

ah, interesting :)

nikomatsakis (Aug 30 2019 at 14:08, on Zulip):

rust ftw!

nikomatsakis (Aug 30 2019 at 14:08, on Zulip):

(polonius actually would help the most, because it tracks aliasing data more precisely)

nikomatsakis (Aug 30 2019 at 14:08, on Zulip):

anyway, in terms of those meeting proposals, as I wrote, the idea is to see if we can schedule some things for the next 3 weeks

nikomatsakis (Aug 30 2019 at 14:09, on Zulip):

I guess we can briefly summarize what each is about to start

nikomatsakis (Aug 30 2019 at 14:09, on Zulip):

this is by me, I just opened it, it's really just a sketch -- but the idea was that I often get requests (or just observe) people asking for help in reducing their compilation team. Sometimes these requests come associated with offers of contracting $$.

nikomatsakis (Aug 30 2019 at 14:10, on Zulip):

I have no good answer, and I was hoping we might brainstorm sol'ns. But this might not deserve a real meeting, at least not yet

nikomatsakis (Aug 30 2019 at 14:11, on Zulip):

tl;dr rust-analyzer has been doing well but not getting a lot of interaction from t-compiler. @matklad and I were thinking that a good next step is to get more aggressive about extracting shared libraries. The meeting would probably be to discuss specifics of that process, and maybe of particular libraries? I think it'd be good to try to narrow down what is best to talk about, it would also affect scheduling.

nikomatsakis (Aug 30 2019 at 14:12, on Zulip):

this is me trying to make good use of the term "ICE-breaker" and also help with the general problem of "what to do about random P-medium bugs". I sketched out the idea at triage meeting yesterday. Roughly it is to create "topical" groups (e.g., LLVM experts) that we can use to classify incoming bugs and try to draw attention to them, and maybe track overall progress. I think the meeting could be used to decide on specific conventions and maybe see if we can do more, but I think we might also just pick some things and try it and hold off on a meeting until we decide if it's working or not.

nikomatsakis (Aug 30 2019 at 14:13, on Zulip):

this is the old, general issue that @pnkfelix opened -- without him present, maybe better to wait. I've not reviewed. I think we'd probably want to focus on some sub-part of the general write-up that he made.

nikomatsakis (Aug 30 2019 at 14:13, on Zulip):

ok, fin

nikomatsakis (Aug 30 2019 at 14:13, on Zulip):

I open the floor to thoughts -- either about those proposals or other things that people think might be good to try and talk about as a group

nikomatsakis (Aug 30 2019 at 14:15, on Zulip):

My opinion: I think a rust-analyzer meeting would be very good. I'm not sure what would be best area to focus on. e.g., I could imagine trying to present some specific ideas around chalk integration, which rust-analyzer has done great work on, and where work in rustc has stalled. But I personally feel a bit disconnected from that, it would have to be a few weeks out to give us time to "prepare" what we would say.

nikomatsakis (Aug 30 2019 at 14:15, on Zulip):

In general, I think having some meetings as a way to spread info about technical details seems good though -- a similar topic (that isn't on the above list) that might be good is to discuss (e.g.) lazy normalization.

nikomatsakis (Aug 30 2019 at 14:16, on Zulip):

(Although I guess the point of meetings is probably more to seek approval...)

matklad (Aug 30 2019 at 14:17, on Zulip):

For rust-analyzer meeting, it would be cool if folks could poke it before the meeting. Not sure how to facilitate that though...

nikomatsakis (Aug 30 2019 at 14:18, on Zulip):

Yeah. Part of the hope with pre-scheduling meetings was precisely to give people time to "do homework"

nikomatsakis (Aug 30 2019 at 14:18, on Zulip):

I'm also not sure how best to faciliate it -- there is already a decent-ish amount of docs.

nikomatsakis (Aug 30 2019 at 14:18, on Zulip):

I'll say that, in June or so, I was able to get fairly far into the source by poking about and reading docs

nikomatsakis (Aug 30 2019 at 14:18, on Zulip):

which was nice :)

nikomatsakis (Aug 30 2019 at 14:18, on Zulip):

maybe we can make a quiz :P

nikomatsakis (Aug 30 2019 at 14:19, on Zulip):

I'm thinking that it's probably best not to go too crazy with meetings. We have three slots to discuss:

mw (Aug 30 2019 at 14:19, on Zulip):

knowing about when a meeting is is only part of having "time to do homework" unfortunately :)

nikomatsakis (Aug 30 2019 at 14:19, on Zulip):

I don't think we should try to fill them all

nikomatsakis (Aug 30 2019 at 14:20, on Zulip):

So let's focus on rust-analyzer a bit.

nikomatsakis (Aug 30 2019 at 14:20, on Zulip):

I'm curious to hear what might be better summaries of what to discuss?

nikomatsakis (Aug 30 2019 at 14:21, on Zulip):

that is, would it be good to focus on some particular library and present a rough plan for its extraction?

matklad (Aug 30 2019 at 14:22, on Zulip):

I think the main goal is to find which some library to extract. But to do that, one kind-of need a rough plan of extraction for every candidate.

matklad (Aug 30 2019 at 14:23, on Zulip):

I personally would be interested in hearing about "chalk", and I have some thoughts on extracting the parser.

nikomatsakis (Aug 30 2019 at 14:24, on Zulip):

I think the main goal is to find which some library to extract.

interesting

mw (Aug 30 2019 at 14:24, on Zulip):

so, from my perspective, I won't really have time to learn about rust-analyzer in-depth, so the best I could do would be to listen in and give comments about things I already know on the rustc side

nikomatsakis (Aug 30 2019 at 14:24, on Zulip):

I am thinking about "chalk" --

nikomatsakis (Aug 30 2019 at 14:25, on Zulip):

one thing I would to discuss is (a) can we extract the definition of types out from rustc? if we were to do so, what should it look like?

nikomatsakis (Aug 30 2019 at 14:26, on Zulip):

other things might be (b) deatils o how trait solving integrates into other parts of the compiler, e.g. lazy norm, etc...

nikomatsakis (Aug 30 2019 at 14:26, on Zulip):

it feels (to me) like there are so many questions, in part because I've not been active recently (something I hope to be changing, starting today)

matklad (Aug 30 2019 at 14:27, on Zulip):

So perhaps half of the meeting for surveying the land, and half for digging into chalk and related things?

nikomatsakis (Aug 30 2019 at 14:28, on Zulip):

so, from my perspective, I won't really have time to learn about rust-analyzer in-depth, so the best I could do would be to listen in and give comments about things I already know on the rustc side

I guess I think this is ok -- I think the point of meetings is kind of two-fold:

sometimes, a topic may not get a lot of feedback, but the act of talking things out helps anyway

nikomatsakis (Aug 30 2019 at 14:28, on Zulip):

So perhaps half of the meeting for surveying the land, and half for digging into chalk and related things?

in terms of surveying, it might be useful to e.g. talk over the various kinds of things that would have to interact and sketch out how that might happen

nikomatsakis (Aug 30 2019 at 14:29, on Zulip):

like "name resolution requires the HIR"

nikomatsakis (Aug 30 2019 at 14:29, on Zulip):

or whatever

nikomatsakis (Aug 30 2019 at 14:29, on Zulip):

I could imagine some of us trying to prepare a document sketching out the possibilities and what we see as the complications or connections required -- kind of roughly @matklad what you and I did on the call the other day

nikomatsakis (Aug 30 2019 at 14:30, on Zulip):

nothing super complex, we could probably do it over a call or two

nikomatsakis (Aug 30 2019 at 14:30, on Zulip):

or less :)

nikomatsakis (Aug 30 2019 at 14:30, on Zulip):

if I recall we had some unknowns -- e.g., we wanted to ask @Vadim Petrochenkov about how name resolution might be "layered" to generally reduce dependencies

nikomatsakis (Aug 30 2019 at 14:32, on Zulip):

so maybe we should say Sep 13 to discuss "libraryification and rust-analyzer" ? the goal being to (a) sketch out how we might extract libraries and (b) get general approval for the direction? and we can try to refine the details a bit over the next week or so?

nikomatsakis (Aug 30 2019 at 14:32, on Zulip):

I propose no meeting next week, which means the only question then is whether to also schedule something for the week after :)

nikomatsakis (Aug 30 2019 at 14:32, on Zulip):

in theory we were supposed to use that final slot for non-technical, but I would also be ok moving rust-analyzer there (sep 20) and then either leaving the other two open or scheduling something non-technical for sep 6 or sep 13

mw (Aug 30 2019 at 14:33, on Zulip):

no objections from me

matklad (Aug 30 2019 at 14:33, on Zulip):

I'd love to have ra one sooner rather than later: I feel that rust-analyzer is blocked on design and direction at the moment, and I'd love to unblock that

nikomatsakis (Aug 30 2019 at 14:34, on Zulip):

OK, two questions:

matklad (Aug 30 2019 at 14:35, on Zulip):

Sep 13 seems better: more opportunities to do the homework!

nikomatsakis (Aug 30 2019 at 14:36, on Zulip):

OK, let's do that

nikomatsakis (Aug 30 2019 at 14:36, on Zulip):
nikomatsakis (Aug 30 2019 at 14:36, on Zulip):

Anything else? Or shall we call it adjourned?

matklad (Aug 30 2019 at 14:38, on Zulip):

I think that there are some major plans for parallel rustc, but I don't see this in the proposed meetings

nikomatsakis (Aug 30 2019 at 14:39, on Zulip):

Yes, I considered that. I left it out because I wanted to touch base with @Aaron Turon and @Zoxc on that topic and have proposal come from that side. But it would be good for a follow-up

nikomatsakis (Aug 30 2019 at 14:39, on Zulip):

(As an aside, we may want to reconsider the West Coast-hostile timing of this meeting)

nikomatsakis (Aug 30 2019 at 14:39, on Zulip):

(Not to mention points "further west")

nikomatsakis (Aug 30 2019 at 14:42, on Zulip):

OK, not having heard anything else, I'm going to say a big Thank You :heart: to y'all for coming and write-up some announcements.

Zoxc (Aug 30 2019 at 14:46, on Zulip):

The time isn't problematic for the west coast of Norway =P

nikomatsakis (Aug 30 2019 at 14:49, on Zulip):

I wondered who would point at my provincial use of "west coast" =)

Tom Phinney (Aug 30 2019 at 16:13, on Zulip):

In this community "west coast" would be provincial but "West Coast" was not, particularly in the week after RustConf 2019

Last update: Nov 16 2019 at 01:45UTC