1938 Commits

Author SHA1 Message Date
Steve Klabnik
7bb0cd76f3 Write the 'primitive types' section of TRPL
A brief introduction to each type, with pointers to the primitive pages
for more info.
2015-04-09 20:05:10 -04:00
Steve Klabnik
12e9d7ced0 Rollup merge of #24178 - steveklabnik:new_toc, r=nikomatsakis
Basically, the overall structure is this:

* Getting Started - getting an environment up and running
* Learn Rust - project-based learning the basics
* Effective Rust - higher level concepts that lead to writing good rust
* Syntax and Semantics - chunks of exactly what it sounds like
* Nightly Rust - unstable stuff, a staging area for documenting features
* Glossary - self-explanatory

There's a number of weaknesses with the current TOC, but I'll just focus on the strengths of the new one:

We start off with getting our environment set up. That's "getting started".

Then, we basically present you with two choices: do you want to start small, with bits of syntax? Or do you want to dive in with projects?

I'm guessing more people will choose the second, so that's the next part: "Learn Rust." I don't have any chapters here, but this would have an updated guessing game, a tutorial on building a little `wc` clone, and something else I haven't decided yet. Lots of options. But the idea is to just dive in and get your hands dirty. I'll heavily link to the 'syntax and semantics' sections that are relevant.

Then, a section I'm calling 'Effective Rust'. it feels greedy to steal that title, so I'm hoping to give it another name. These are higher-level things than syntax that Rust programmers should know: error handling is a great example. Most of these are sort of 'how do I use the standard library together' kinds of things. This also contains informations about systems programming that those new to it might not know: the stack vs the heap, for example.

Then, "Syntax and Semantics." This has one section for each bit of Rust. Small, focused, but explains _everything_. These are positioned to be almost entirely in-order, but heavily cross-link, so you can go out of order if you want to, but you can also use it as a reference.

Next, "Nightly Rust," where documenting unstable things goes. If we want to get good feedback on new features, they'll need to be documented, but we don't want to taint the main docs, so that's what this is for.

Finally, the glossary. Straightforward enough.

--------------------------------

This is going to be a terrible PR to review, so I just did the TOC re-organization, with basically no editing. So it'll be a bit jumbled at first. But next steps are to go through and edit / revise / tweak / add stuff to get it in tip-top shape for 1.0!
2015-04-08 11:34:12 -04:00
York Xiang
c9454b1a02 Update "let is used to introduce variables" paragraph 2015-04-08 10:29:11 +08:00
Steve Klabnik
0027253f18 Import real content. 2015-04-07 22:16:02 -04:00
Steve Klabnik
f354c8a580 New TOC 2015-04-07 19:44:49 -04:00
Manish Goregaokar
fe2cff74f4 Rollup merge of #24148 - xfq:patch-2, r=steveklabnik
People use programming language *implementations* like Ruby MRI, CPython, and SpiderMonkey for executing programs.
2015-04-08 01:19:38 +05:30
Manish Goregaokar
6295406d9f Rollup merge of #24139 - xfq:patch-1, r=steveklabnik
Use HTTPS where possible to avoid plaintext HTTP connections.
2015-04-08 01:19:37 +05:30
Manish Goregaokar
322e4a18e3 Rollup merge of #24112 - joshtriplett:patch-1, r=steveklabnik
traits.md said:

If we add a `use` line right above `main` and make the right things public,
everything is fine:

However, the use line was actually placed at the top of the file instead.  Move
the use line to right above main.  That also makes the example more evocative
of cases where the module is defined in a separate file.
2015-04-07 18:13:12 +05:30
Manish Goregaokar
50cb31f0e7 Rollup merge of #24088 - GuillaumeGomez:patch-1, r=alexcrichton
Fixes #24060.
2015-04-07 18:12:55 +05:30
Manish Goregaokar
4faf0befaa Rollup merge of #24042 - callahad:bug_24030, r=steveklabnik
Fixes #24030

Of the four code samples with modules in TRPL:

    - 2 use `mod test`
    - 2 use `mod tests`

We should be consistent here, but which is right? The stdlib is split:

    $ grep -r 'mod tests {' src/lib* | wc -l
          63
    $ grep -r 'mod test {'  src/lib* | wc -l
          58

Subjectively, I like the plural, but both the language reference and the
style guide recommend the singular. So we'll go with that here, for now.

r? @steveklabnik
2015-04-07 18:12:32 +05:30
Manish Goregaokar
4dd6edda9c Rollup merge of #23277 - aochagavia:intro, r=steveklabnik
cc @steveklabnik
2015-04-07 18:12:22 +05:30
Xue Fuqiao
6eea4266ec Update hello-world.md
People use programming language *implementations* like Ruby MRI, CPython, and SpiderMonkey for executing programs.
2015-04-07 18:07:10 +08:00
Xue Fuqiao
600101bdfd Update intro.md
Use HTTPS where possible to avoid plaintext HTTP connections.
2015-04-07 13:35:26 +08:00
Josh Triplett
59d889805e traits.md: Fix example of using traits to match description
traits.md said:

If we add a `use` line right above `main` and make the right things public,
everything is fine:

However, the use line was actually placed at the top of the file instead.  Move
the use line to right above main.  That also makes the example more evocative
of cases where the module is defined in a separate file.
2015-04-06 08:14:11 -07:00
Guillaume Gomez
92d00262c3 Replace alpha state by pre-1.0 2015-04-06 11:14:21 +02:00
bors
cf51e55274 Auto merge of #24087 - mossberg:docs-comma, r=steveklabnik
Correct mistyped comma, and slightly improve sentence.

r? @steveklabnik
2015-04-06 02:00:21 +00:00
Mark Mossberg
52aa5d0039 Documentation fix
Correct mistyped comma, and slightly improve sentence.
2015-04-05 02:56:16 -04:00
mdinger
85f6c9ff84 Alignment nitpick 2015-04-04 20:34:59 -04:00
bors
1169693f03 Auto merge of #24016 - aquach:master, r=Manishearth
Ran across this one while learning from the Book.
2015-04-04 21:19:31 +00:00
bors
b3315881f5 Auto merge of #23987 - liammonahan:master, r=Manishearth
I ran across a comma splice.

I didn't set the "note:" off inside parenthesis.  I looked around in other places and saw it both ways, but without surrounding parenthesis seemed to be the more common convention followed elsewhere in the docs.  Let me know if you have an overriding preference about that and I'll change it.

r? @steveklabnik
2015-04-04 15:51:03 +00:00
bors
04e0125a58 Auto merge of #23981 - chastell:book_crates-and-modules_io_sync, r=Manishearth
This syncs the _Crates and Modules_ chapter of the book with current output:

* the runs are supposed to be in the project’s directory,
* `rustc` has slightly different error messages (and things like macro line:col numbers),
* Cargo now compiles things into `target/debug`.
2015-04-04 13:07:34 +00:00
Manish Goregaokar
b62c11023c Fix doc (fixup #24031) 2015-04-04 12:50:43 +05:30
Manish Goregaokar
29582d39bd Rollup merge of #24040 - hackaugusto:patch-1, r=steveklabnik 2015-04-04 10:58:07 +05:30
Manish Goregaokar
a20aff3185 Rollup merge of #24032 - steveklabnik:beta_install, r=alexcrichton
Default is now beta, add nightly in the unstable section
2015-04-04 10:56:56 +05:30
Dan Callahan
cb1e6a2dc4 book: use mod test consistently
Fixes #24030

Of the four code samples with modules in TRPL:

    - 2 use `mod test`
    - 2 use `mod tests`

We should be consistent here, but which is right? The stdlib is split:

    $ grep -r 'mod tests {' src/lib* | wc -l
          63
    $ grep -r 'mod test {'  src/lib* | wc -l
          58

Subjectively, I like the plural, but both the language reference and the
style guide recommend the singular. So we'll go with that here, for now.
2015-04-03 22:48:00 -05:00
Augusto Hack
eb2a6d9866 Removed repeated sentence. 2015-04-03 22:56:34 -03:00
Steve Klabnik
925a52cb93 Update Rust install instructions in TRPL
Default is now beta, add nightly in the unstable section
2015-04-03 19:09:41 -04:00
Dan Callahan
3b73a6e3ce Remove old_io from trpl/concurrency.md
Also: the std_misc feature flag is removed; it's not needed in Beta.

Hat tip to @tshepang in #23871

Fixes #24023
2015-04-03 17:33:12 -05:00
Alex Quach
c3b27be942 Delete duplicated sentence. 2015-04-03 12:56:28 -07:00
Alex Quach
c5df38efa3 Fixing copy/paste typo. 2015-04-03 11:17:15 -07:00
Liam Monahan
06bc99918c doc/trpl: Fixing a comma splice in iterators.md. 2015-04-02 20:02:57 -04:00
Piotr Szotkowski
d97325c9b8 Book: sync ‘Crates and Modules’ with current output 2015-04-02 23:18:47 +02:00
bors
3e8a773bc5 Auto merge of #23822 - tanadeau:remove-box-syntax-in-pointers-doc, r=steveklabnik
This is the first use of `box`. It's an unstable feature and also isn't
consistent with the use of `Box` in the "original" code above it.

r? @steveklabnik
2015-04-02 10:02:30 +00:00
Trent Nadeau
00d929dcb3 Moved use of box_syntax unstable feature in docs to Unstable section.
Create a new section under the Unstable section for `box` syntax and
patterns and removed their discussion from the Pointers section.
2015-04-01 21:53:37 -04:00
Alex Crichton
f92e7abefd rollup merge of #23860: nikomatsakis/copy-requires-clone
Conflicts:
	src/test/compile-fail/coherence-impls-copy.rs
2015-04-01 18:37:54 -07:00
Alex Crichton
fd182f41dc rollup merge of #23933: kgv/kgv_fix
Fix example and some text for: `read_line` takes `&mut String` and return `Result` instead `IoResult`.

r? @steveklabnik
2015-04-01 13:22:12 -07:00
Steve Klabnik
eac94fa097 Re-write closures chapter 2015-04-01 15:21:03 -04:00
Niko Matsakis
c35c46821a Fallout in public-facing and semi-public-facing libs 2015-04-01 11:23:45 -04:00
kgv
343c110e76 Fix rust book error-handling.md for new std::io.
Fix example and some text for: `read_line` takes `&mut String` and return `Result` instead `IoResult`.
2015-04-01 09:37:19 +03:00
Alex Crichton
6ebb6e60b9 rollup merge of #23923: steveklabnik/gh23688
Fixes #23688

r? @alexcrichton
2015-03-31 18:06:42 -07:00
Steve Klabnik
371ba00da2 Add description of + for multiple trait bounds
Fixes #23688
2015-03-31 19:45:09 -04:00
Alex Crichton
66598656a5 rollup merge of #23920: steveklabnik/gh23881
Fixes #23881
2015-03-31 16:12:38 -07:00
Steve Klabnik
8da08317a6 Move benchmark tests to unstable section
Fixes #23881
2015-03-31 19:02:32 -04:00
Alex Crichton
3422be3666 rollup merge of #23288: alexcrichton/issue-19470
This is a deprecated attribute that is slated for removal, and it also affects
all implementors of the trait. This commit removes the attribute and fixes up
implementors accordingly. The primary implementation which was lost was the
ability to compare `&[T]` and `Vec<T>` (in that order).

This change also modifies the `assert_eq!` macro to not consider both directions
of equality, only the one given in the left/right forms to the macro. This
modification is motivated due to the fact that `&[T] == Vec<T>` no longer
compiles, causing hundreds of errors in unit tests in the standard library (and
likely throughout the community as well).

Closes #19470
[breaking-change]
2015-03-31 15:59:35 -07:00
Alex Crichton
0cac5b6158 rollup merge of #23906: steveklabnik/spellin 2015-03-31 15:58:57 -07:00
Alex Crichton
82889f709e rollup merge of #23902: freebroccolo/master 2015-03-31 15:58:57 -07:00
Alex Crichton
d4a2c94180 std: Clean out #[deprecated] APIs
This commit cleans out a large amount of deprecated APIs from the standard
library and some of the facade crates as well, updating all users in the
compiler and in tests as it goes along.
2015-03-31 15:49:57 -07:00
Steve Klabnik
e48c7c61eb Fix spelling 2015-03-31 17:44:45 -04:00
Alex Crichton
5cf126ae2f std: Remove #[old_orphan_check] from PartialEq
This is a deprecated attribute that is slated for removal, and it also affects
all implementors of the trait. This commit removes the attribute and fixes up
implementors accordingly. The primary implementation which was lost was the
ability to compare `&[T]` and `Vec<T>` (in that order).

This change also modifies the `assert_eq!` macro to not consider both directions
of equality, only the one given in the left/right forms to the macro. This
modification is motivated due to the fact that `&[T] == Vec<T>` no longer
compiles, causing hundreds of errors in unit tests in the standard library (and
likely throughout the community as well).

cc #19470
[breaking-change]
2015-03-31 13:39:14 -07:00
Darin Morrison
9ba7974b35 book: reword timer bit 2015-03-31 14:17:13 -06:00