owned this note changed 3 years ago
Published Linked with GitHub

2021-12-02

RRC FTW

Welcome to the Rustc reading club!


Goals:

  • Get familiar with the "patterns" of rustc
  • Learn what supporting resources are available
  • Get vague idea of what code does what
  • Deepen understanding of specific pieces of code
  • Have fun!
    Image Not Showing Possible Reasons
    • The image file may be corrupted
    • The server hosting the image is unavailable
    • The image path is incorrect
    • The image format is not supported
    Learn More →
    Image Not Showing Possible Reasons
    • The image file may be corrupted
    • The server hosting the image is unavailable
    • The image path is incorrect
    • The image format is not supported
    Learn More →

Non-goals:

  • Rust tutorial
  • Polished lecture on how rustc works

To best do that:

  • We want to hear from everyone
  • Encourage all questions
  • It's ok to ask "what is this 'tcx lifetime I see on every other line of the code"

(If you don't know what I'm talking about, don't worry, you will)


This is not recorded


Plan for today


  • Read the Rustc Name Resolution code
  • Answer this:
    • What are the most interesting pieces of this code to you?

Broad, deep, broad

Answer The Question 3 times:

  • Broad: look at the module as a whole
  • Deep: pick one function or area to focus on
  • Broad: go back to the module as a whole
    • informed by previous two rounds

Let's go broad

  • Take 10 minutes to read code
  • Questions to answer:
    • What are the most interesting pieces of this code to you?
    • What is something you might like to "go deep" on in the next round?

Let's go deep

  • We'll pick a function / module / whatever to dive deep on based on what we heard
  • Take 10 minutes to read code
  • Read for 10 minutes, annotating, and thinking about:
    • What are the primary structures that are interested to you? (And why?)

Let's go broad again

  • Take 10 minutes to read code
  • Questions to answer:
    • Did you see anything that you didn't realize before?

An experiment
Image Not Showing Possible Reasons
  • The image file may be corrupted
  • The server hosting the image is unavailable
  • The image path is incorrect
  • The image format is not supported
Learn More →

muppets


How did it go?

  • Next time we had planned to repeat with new question
  • Other ideas for future events:
    • Pick a bug and work through it
    • ?
Select a repo