Dans la partie de 3 : Nous allons utiliser le functor Maybe avec l’instruction bind.
Soit le tableau suivant.
1 2 3 4 5 | |
nous voulons afficher une liste avec une titre et et une image.
Nous allons utilisez la fonction suivante
1 2 3 4 5 6 | |
Exemple d’utilisation.
1 2 3 4 | |
Le résultat
1 2 3 | |
Pour extraire les images utilisons notre Maybe
1 2 3 4 5 6 | |
Le résultat
1 2 3 | |
Avec le bind
Ré-ecrivons pour utiliser le bind. (Nous utilisons l’idée que la fonction que j’injecte dans le container renvoie elle-mème un Some ou Nothing)

1 2 3 4 5 6 | |
La fonction devient.
1 2 3 4 5 6 | |
En conclusion
- Si j’utilise la fonction
map(parfois on parle aussi defmap) j’utilise le Maybe en tant que Functor. - Si j’utilise la fonction
bindj’utilise le Maybe en tant que Monad.
Nous allons continuer notre voyage avec les listes dans le prochain post.
- Partie 1 : Monade/Functor
- Partie 2 : Le functor Maybe
- Partie 3 : Le functor Maybe avec le Bind
- Partie 4 : Les listes
- Interlude : Les évaluations partielles
- Partie 5 : Les applicatives
- Partie 6 : Les applicatives et les listes