diff --git a/control.md b/control.md
index b9e6842f3b1a261378f19306e0056857e0f3284b..2f4913358b5278c51be7a4a3b41318aa58dd62b4 100644
--- a/control.md
+++ b/control.md
@@ -115,7 +115,7 @@ fn main() {
 
 - On sort d'une boucle avec `break`{.rust}
 
-    <pre><code data-trim="hljs rust" class="lang-rust">
+<pre><code data-trim="hljs rust" class="lang-rust">
 fn main() {
     let mut i = 0;
     loop {
@@ -129,7 +129,7 @@ fn main() {
         }
     }
 }
-    </code></pre>  
+</code></pre>  
 
 ## La boucle `while`{.rust}
 
diff --git a/fonctions.md b/fonctions.md
index 50d95e86d717b88bf7f29fe057c1d2a714f9df32..5b487302d0d3ff88862811de4815dcda664b57f7 100644
--- a/fonctions.md
+++ b/fonctions.md
@@ -22,7 +22,7 @@ sansfont: Sans Serif
 <!-- slide-numbers: true -->
 ---
 
-# Les instructions et les expressions
+# Instructions et expressions
 
 ## Les instructions (statements)
 
@@ -32,7 +32,7 @@ sansfont: Sans Serif
     ```{.lang-rust}
     let x = 1; // une instruction
     ```
-- On ne peut pas assigner une instruction
+- On ne peut pas assigner une instruction `let`{.rust}
 
 <pre><code data-trim="hljs rust" class="lang-rust">
     fn main() {
@@ -50,14 +50,42 @@ sansfont: Sans Serif
     ```
 
 - La plupart du code rust est une expression.
-- N'importe quel bloc peut effectuer des opérations et retourner une valeur.
+- N'importe quel **bloc** peut effectuer des opérations et retourner une valeur.
 
 <pre><code data-trim="hljs rust" class="lang-rust">
-    fn main() {
-        let y = {
-            let x = 5 + 3;
-            x - 9
-        };
-        println!("5 + 3 - 9 = {}", y);
-    }
+fn main() {
+    let y = {
+        let x = 5 + 3;
+        x - 9
+    };
+    println!("5 + 3 - 9 = {}", y);
+}
 </code></pre>
+
+- **Important:** Une expression sans `;` dans un bloc retourne la valeur evaluée de l'expression.
+
+# Fonctions
+
+## Généralités
+
+- Les fonctions s'écrivent en *snake_case* (le compilateur vous avertiras...).
+- La définition d'une fonction commence par un `fn`{.rust}.
+- La définition des fonctions peut se faire avant ou après l'endroit où elle est appelée.
+
+    <pre><code data-trim="hljs rust" class="lang-rust">
+fn main() {
+    println!("La fonction main est une fonction.");
+
+    fonction_fonction();
+}
+
+fn fonction_fonction() {
+    println!("La fonction fonction_fonction est une fonction.");
+}
+    </code></pre>
+
+## Paramètres de fonctions
+
+- Une fonction peut prendre des arguments séparés par des `,`{.rust}.
+- Le type des arguments doit toujours être explicitement déclaré.
+- 
\ No newline at end of file