rust-lang / rust-lang/rustc-dev-guide

Clarify why Salsa is mentioned

Open
#1,867 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

A-incr-comp A-query-system E-medium I-confusing T-compiler
Dominant language
HTML
Stars
1.9k
Forks
613
Avg merge
17h 24m
Merged PRs (30d)
39

Description

I admit I'm quite confused by the part of the book about Salsa.
Not the content, it feels relatively clear after the previous sections explains in details the idea of the algoritm.
But why it is mentioned.

First, in incremental compilation, I read

> 1 I have long wanted to rename it to the Salsa algorithm, but it never caught on. -@nikomatsakis

Then I realize in how salsa works that something is called Salsa.
So I guess the book should clarify somehow how the algorithm wannabe-name and the library are related. In particular, that the Salsa library is not an implementation of what nikomatsakis calls the Salsa algorithm, even if the talk is by the same person. I admit that it's relatively confusing here.

More importantly, I think, is, why is this section in the rustc-dev-guide if rustc does not use it. The actual implementation was linked to in the "in detail" section. So I guess the point is not to tell us the red-green algorithm is really used.
If the point is only to state "by the way, this is a clearly related topic you might be interested", I suspect you should explicitly state that, while interesting, one won't learn anything about rustc specifically in this section

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the linked incremental compilation and how Salsa works pages, focusing on the Salsa discussion and the transition between them. Done means the guide clearly distinguishes the algorithm's name from the Salsa library and explains why this related topic appears despite not describing rustc's actual implementation.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.