* Remove statement that data is moved when assigning
The distinction between non-`Copy` and `Copy` types is tricky to explain. One problem is that people often focus on _moving_ vs _copying_ when both variable types always copy data.
This PR removes the statement about moving data (since that is wrong on its own).
* Apply suggestions from code review
Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
* Apply suggestions from code review
Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
---------
Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
* Rust isn't functional, but it does have functional elements
* End sentence
Co-authored-by: Martin Geisler <martin@geisler.net>
* add info about OO
---------
Co-authored-by: Martin Geisler <martin@geisler.net>
* Fix solution in Link Checker in Concurrency Morning exercises.
This change fixes the following issues with the current solution:
1. It is not listed on the "solutions" page.
2. It is not multi-threaded and does not use channels.
---------
Co-authored-by: Dustin J. Mitchell <djmitche@google.com>
* compound types: disambiguate that length is not 'same'
* basic syntax: clarify preference for consts and quickly justify unsafety of static mut
* basic-syntax: take review feedback into account on consts/statics
* basic-syntax: be careful not to call `const` defns variables
variables in rust are `place`s in a formal sense and name objects in an informal one; `const` merely abbreviates an expression
* removed $ from code-blocks in build_all.sh
* separate the code from the output
* added shell indicator for the code block
* added shell indicator for the code block
* update logging.md
* separate the code from the output in other files as well
* update the output code-blocks to text
* exercises: health-statistics: weight -> height
weight may be a sensitive topic for some readers; use height instead as this isn't important to the content of the course
* exercises: health-statistics: add health report
this lets us see a non-setter use case for &mut self
it also makes the 'statistics' side of this exercise more explicit as we count doctor visits
* exercises: health-statistics: normalize variable names
* remove $ from code blocks in translations
* remove $ from code blocks in the other markdown files as well
* Revert "remove $ from code blocks in the other markdown files as well"
This reverts commit eda922dab9.
* remove $ from code blocks in setup.md
* re-added the previous changes
* revert logging.md
Outlines an alternative implementation for Polygon::length. This exercise is aimed at novice users and we want to keep the implementation simple. For users familiar with iterator concepts this comment points to an alternative.
* control-flow: blocks: clarify prose around block values/types
specify what determines the type of a block
move the last expression note to the discussion of blocks rather than functions to clarify that it applies to both
* control-flow: if-let: correct sense of 'non-returning'
rename 'designing a library' example
library design in Rust is its own topic that this course does not cover; to avoid confusion, let's stick to describing things in terms of books