Rust Programming Language Book
doc.rust-lang.org
doc.rust-lang.org
Packt also has a book on Rust which should be available soon, though I've never heard of the author and so I can't speak as to the quality: https://www.packtpub.com/application-development/rust-essent...
There's also this draft of a Kickstarter for a book on Rust, though again I've not heard of the author before: https://www.kickstarter.com/projects/1712125778/1409335994?t...
Oh, and there's at least one more book in the pipe, and this one in particular is being developed by members of the Rust community... expect an announcement soon. :)
Nowadays, it seems like they're trying to output as many books as possible regardless of the qualities. Most of the books are around 100-150 pages ugh.
On the other hand, Manning Publishing keep on taking my money, I really hope they start putting out book quality similar to Packt so I can stop spending money on them.
O'Reily have some really good book too like wise with No Starch Publishing. No Starch Pub have some of the best book material I've ever encountered minus web design books. Pragmatic Bookshelf have some quality books too and classic.
Manning is also great. Pragprog is also pretty great.
The other greats for quality of content are Morgan Kaufmann, and Springer.
It's a pity that the official website does not directly propose these. There are many scenarios where an ebook makes more sense than a website.
There are some code snippets that are not highlighted, though. It'll be fixed in the next version.
(The book is, just like the Rust compiler, licensed as MIT/Apache2 if you were wondering.)
I was recently complaining to myself about some style and grammar issues (e.g. "Book" is redundant in the title of a book), but I realized I'm complaining about style and grammar issues of comprehensive documentation for a recently released programming language!
I respect the effort Rust and Steve have invested in documentation and hope their effort is replicated elsewhere.
Generally speaking, I would love complaints about style and grammar issues, to a point anyway. It's important to me that the informal / conversational tone remains, but generally speaking, I try to get the details right.
(We don't have 'book' in the title of the book, that's just the HN title.)
I really hope you reconsider your stance on the conversational tone, which made reading the book difficult at times. Being informal or conversational is not bad per se, but it leads to verbosity that obscures the content. Cutting out some of the current verbosity would make the book a lot clearer and easier to digest, and I think you can do this without sacrificing the friendliness and approachability of the book.
For you. I find good rhetorical writing easier to read and more likely to stick.
It would be awesome if there were more/better documentation on how to think about things in the Rust-style, as opposed to the OOP way that Ruby or Python or PHP (or to a lesser extent, Javascript) tend to espouse.
[1] C isn't really crazy on the generic/meta-programming compared to C++, it seems.
C was already the Go of its generation(Mesa, Algol 68, CLU,PL/I, PL/M) so, yeah.
There are many other similar problems throughout the book. More work needs to be done.
Rust needs a better tutorial of ownership. It's novel, so it warrants the most explanation.
http://doc.rust-lang.org/book/ownership.html and the following three pages discuss it in some detail.
http://blog.skylight.io/rust-means-never-having-to-close-a-s...
http://arthurtw.github.io/2014/11/30/rust-borrow-lifetimes.h...
I don't seem to have any problems with any of the other concepts used by the language except where they overlap with the borrow checker (e.g. destructuring a Box using).
The Rust book is intended to be a quickstart to reading and writing Rust code. However it's when you start perusing the std crate docs that you really learn how to efficiently use the language.
Bonus points for the "src" link in the Rust docs. It always hurts when I have to read C++ stdlib implementation -- but I find Rust's stdlib source a quite pleasant read and a good source of examples.
failed to parse manifest at `/home/john/data/projects/rust/hello/src/Cargo.toml`
Caused by: either a [lib] or [[bin]] section must be present [/CODE]
Not a real good start for a introduction.