Stream: t-compiler/wg-rls-2.0

Topic: rust-analyzer syntax trees deep dive


matklad (Feb 20 2019 at 16:31, on Zulip):

We plan to have a video call to dive into rust-analyzer representation of syntax trees and loseless error-tolerant parsing.

Here's the poll to select the time: https://doodle.com/poll/4vn2bsk75kz8dhmz.

@nikomatsakis if you attend, you could be a zoom host and record the video as well.

matklad (Feb 20 2019 at 17:08, on Zulip):

I still suggest reading README in https://github.com/apple/swift/tree/master/lib/Syntax before the call: it has pretty pictures!

matklad (Feb 21 2019 at 09:23, on Zulip):

Also, to avoid repeating the history, let's write down the agenda first, so that we can agree on it :)

The goal is to learn about the current implementation of syntax trees in rust-analyzer. The assumption is that the current API is roughly what we would want in the end (b/c every one else with a cool IDE uses it), so it makes sense to validate/reject this assumption.

My rough plan is:

matklad (Feb 22 2019 at 12:26, on Zulip):

The call will happen on Tuesday, 17:00--18:00 UTC. The event is on the calendar: https://calendar.google.com/calendar/embed?src=6u5rrtce6lrtv07pfi3damgjus%40group.calendar.google.com

matklad (Feb 22 2019 at 12:26, on Zulip):

cc @WG-rls2.0

pnkfelix (Feb 22 2019 at 12:42, on Zulip):

do try to record the call (e.g. via zoom) if you can

nikomatsakis (Feb 22 2019 at 19:34, on Zulip):

Want me to create a Zoom event?

nikomatsakis (Feb 22 2019 at 19:37, on Zulip):

Done, added the info to the calendar event

matklad (Feb 26 2019 at 16:37, on Zulip):

@WG-rls2.0 remainder, the meeting is in about 30 minutes

nikomatsakis (Feb 26 2019 at 16:59, on Zulip):

:wave:

nikomatsakis (Feb 26 2019 at 16:59, on Zulip):

If anybody needs help connecting, let me know.

matklad (Feb 26 2019 at 17:00, on Zulip):

could you paste meeting id here?

matklad (Feb 26 2019 at 17:00, on Zulip):

https://zoom.us/j/584448997

matklad (Feb 26 2019 at 17:01, on Zulip):

@Igor Matuszewski are you going to join?

Igor Matuszewski (Feb 26 2019 at 17:02, on Zulip):

y, hashing out stuff with my camera

Igor Matuszewski (Feb 26 2019 at 17:03, on Zulip):

please do start, I'll join shortly

nikomatsakis (Feb 26 2019 at 17:59, on Zulip):

@matklad very fun. I'm wondering if we can get @eddyb to talk about their ideas for representing ASTs that were specifically oriented about macro expansion =)

matklad (Feb 26 2019 at 17:59, on Zulip):

Thanks, talking this through was really helpful!

matklad (Feb 26 2019 at 18:00, on Zulip):

The issue with a list of constraints: https://github.com/rust-analyzer/rust-analyzer/issues/862

nikomatsakis (Feb 26 2019 at 18:01, on Zulip):

@matklad also, I'll make a "RLS 2.0" playlist I think for this video -- it's currently doing post-processing etc so it'll be a bit before I can get it uploaded

matklad (Feb 26 2019 at 18:02, on Zulip):

cool! Could you add https://www.youtube.com/watch?v=ANKBNiSWyfc to it as well?

nikomatsakis (Feb 26 2019 at 18:03, on Zulip):

in theory yes

nikomatsakis (Feb 26 2019 at 18:03, on Zulip):

if I can figure out how to navigate YouTube

nikomatsakis (Feb 26 2019 at 18:03, on Zulip):

also, we can (and should!) add links to the compiler-team directory...

nikomatsakis (Feb 28 2019 at 15:00, on Zulip):

video posted https://youtu.be/DGAuLWdCCAI

nikomatsakis (Feb 28 2019 at 15:00, on Zulip):

sorry for the delay!

Jeremy Kolb (Feb 28 2019 at 19:00, on Zulip):

@matklad what's your font/color scheme in that video?

Jeremy Kolb (Feb 28 2019 at 19:01, on Zulip):

i know that you're using the highlighting provided by the extension

matklad (Feb 28 2019 at 19:01, on Zulip):

The hard-coded zenburn, yeah

matklad (Feb 28 2019 at 19:02, on Zulip):

The font is fira-code, with ligatures

Last update: Nov 12 2019 at 16:15UTC