JS - Chapitre 09 - Functors Flashcards
Qu’est ce qu’un functor
c’est un objet avec un opération “map” qui respecte les loi des functors
Comment est fait un functor (exemple)
function F(value) {
function map(f) {
const newValue = f(value);
return F(newValue);
}
return {
map
}
}
Que doit respecter le functor
la loi de l’identité et les lois de la composition
La loi de l’identité
Si on passe la fonction identité dans le map du functor on doit obtenir le même functor
La loi de composition
la loi de composition est que h(x) = g(f(x));
Quel est l’equation que doit respecter le functor pour la composition
functor.map(f).map(g) === functor(x => g(f(x)))
Array map?
le mapping des tableaux est un functor qui respect la loi de l’identité et de la composition
Array map?
le mapping des tableaux est un functor qui respect la loi de l’identité et de la composition