 
   [[:subsection {:tags "corps_de_fonction" :title "Corps de fonction"}]]
 
-"Votre corps de la fonction peut contenir des formes. Clojure retourne automatiquement la dernière forme évalué:"
+"Votre corps de la fonction peut contenir des forms. Clojure retourne automatiquement la dernière forme évalué:"
 
 (comment
   (defn illustrative-function


"Notez que la valeur d'un *let* forme est la dernière forme dans son corps qui obtient évaluée.

*let* formes suivent les règles de déstructuration qui nous introduit dans «Appel d'une fonction\" ci-dessus.

Une façon de penser *let* formes, ce est qu'ils fournissent des paramètres et leurs arguments secondaires à côte. *let* formes ont deux utilisations principales:

* Ils fournissent la clarté en vous permettant de nommer les choses
* Ils vous permettent d'évaluer une expression qu'une seule fois et ré-utiliser le résultat. Ceci est particulièrement important lorsque vous avez besoin de réutiliser le résultat d'un appel de fonction coûteux, comme un appel d'API de réseau. Il est également important lorsque l'expression a des effets secondaires.

    (def error-message (str error-message "DOOOOOOOMED!")))
  )

"Vous apprendrez tout ce qu'il ya à savoir sur les appels de macro et les forms spéciales dans le chapitre \"Clojure Alchemy: lecture, l'évaluation et les macros». Pour l'instant, cependant, la principale caractéristique qui rend forms spéciales \"spécial\", ce est qu'ils ne évaluent pas toujours tous leurs opérandes, contrairement appels de fonction.
Prenez if , par exemple. Sa structure générale est:"

(comment
