From 8c5825321784575d3607396bea3b89d711ea5e48 Mon Sep 17 00:00:00 2001 From: Igor Petruk Date: Mon, 23 Jan 2023 11:05:46 +0000 Subject: [PATCH] Update the Speaker Notes of the type-inference.md (#214) * Update the Speaker Notes of the type-inference.md I think this is one of the critical moments in understanding Rust. This behavior is different from many static and dynamic programming languages. * Fix typo Co-authored-by: Andrew Walbran --- src/basic-syntax/type-inference.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/basic-syntax/type-inference.md b/src/basic-syntax/type-inference.md index 034bc30e..2cc1960b 100644 --- a/src/basic-syntax/type-inference.md +++ b/src/basic-syntax/type-inference.md @@ -24,6 +24,10 @@ fn main() {
This slide demonstrates how the Rust compiler infers types based on constraints given by variable declarations and usages. + +It is very important to emphasize that variables declared like this are not of some sort of dynamic "any type" that can +hold any data. The machine code generated by such declaration is identical to the explicit declaration of a type. +The compiler does the job for us and helps us to write a more concise code. The following code tells the compiler to copy into a certain generic container without the code ever explicitly specifying the contained type, using `_` as a placeholder: