Bonjour, j'essaye de suivre un tutorial Clojure, et il y a un exemple que j'ai du mal à saisir (source).
Le voici :
Le sujet est les fonctions retournants des fonctions. Je ne comprends pas pourquoi le % retourne 7 dans la fonction inc-maker, dans l'exemple utilisé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 ;; inc-by is in scope, so the returned function has access to it even ;; when the returned function is used outside inc-maker (defn inc-maker "Create a custom incrementor" [inc-by] #(+ % inc-by)) (def inc3 (inc-maker 3)) (inc3 7) ; => 10
Tel que je le vois actuellement :
1) La fonction in3 et exécutée avec en paramètre (inc-maker 3)
2) La liste [inc-by] est le paramètre 3?
3) D'où sort le %=7 dans la fonction anonyme # ??
Merci de vos lumières.
P.S. je ne savais pas où mettre ma question, dans Lisp ou non...![]()
Partager