|
2 | 2 |
|
3 | 3 | <!-- toc --> |
4 | 4 |
|
5 | | -Now that we have [seen what the compiler does][orgch], let's take a |
6 | | -look at the structure of the [`rust-lang/rust`] repository, where the `rustc` |
7 | | -source code lives. |
| 5 | +Now that we have [seen what the compiler does][orgch], |
| 6 | +let's take a look at the structure of the [`rust-lang/rust`] repository, |
| 7 | +where the rustc source code lives. |
8 | 8 |
|
9 | 9 | [`rust-lang/rust`]: https://github.com/rust-lang/rust |
10 | 10 |
|
@@ -104,12 +104,11 @@ explanation of these crates here. |
104 | 104 |
|
105 | 105 | ### Big picture |
106 | 106 |
|
107 | | -The dependency structure of Rust is influenced by two main factors: |
| 107 | +The dependency structure of the compiler is influenced by two main factors: |
108 | 108 |
|
109 | 109 | 1. Organization. The compiler is a _huge_ codebase; it would be an impossibly |
110 | 110 | large crate. In part, the dependency structure reflects the code structure |
111 | | - of the compiler. Restructuring `rust-lang/rust` as a monorepo is an ongoing |
112 | | - debate with convincing technical and qualitative arguments for and against. |
| 111 | + of the compiler. |
113 | 112 | 2. Compile-time. By breaking the compiler into multiple crates, we can take |
114 | 113 | better advantage of incremental/parallel compilation using cargo. In |
115 | 114 | particular, we try to have as few dependencies between crates as possible so |
@@ -190,12 +189,11 @@ from [`src/tools/`], such as [`tidy/`] or [`compiletest/`]. |
190 | 189 | [`tidy/`]: https://github.com/rust-lang/rust/tree/master/src/tools/tidy |
191 | 190 | [bootstch]: ./building/bootstrapping.md |
192 | 191 |
|
193 | | -## Standard library (`std`) |
| 192 | +## Standard library |
194 | 193 |
|
195 | 194 | This code is fairly similar to most other Rust crates except that it must be |
196 | | -built in a special way because it can use unstable ([`nightly`]) features. The |
197 | | -standard library is sometimes referred to as [`libstd or the "standard |
198 | | -facade"`]. |
| 195 | +built in a special way because it can use unstable ([`nightly`]) features. |
| 196 | +The standard library is sometimes referred to as [`libstd or the "standard facade"`]. |
199 | 197 |
|
200 | 198 | [`libstd or the "standard facade"`]: https://rust-lang.github.io/rfcs/0040-libstd-facade.html |
201 | 199 | [`nightly`]: https://doc.rust-lang.org/nightly/nightly-rustc/ |
|
0 commit comments