bonsoir , quelqu'un peut m'aider comment utiliser map en haskell?
bonsoir , quelqu'un peut m'aider comment utiliser map en haskell?
C'est une fonction d'ordre supérieure, autrement dit son premier paramètre est la fonction à appliquer à chaque élément de la liste donnée en second paramètre :
Code Haskell : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 f x = x * 2 liste = map f [1,2,3]
`map f [1,2,3]` produit donc la liste `[f 1, f 2, f 3]` c'est-à-dire `[2, 4, 6]`.
Note que dans cet exemple j'ai défini la fonction `f` à part mais on peut la définir localement :
ou en utilisant une lambda expression (fonction anonyme) :
Code Haskell : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 liste = map f [1,2,3] where f x = x * 2
ou même avec une section d'opérateur :
Code Haskell : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 liste = map (\x -> x * 2) [1,2,3]
Code Haskell : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 liste = map (*2) [1,2,3]
Il est bien sûr possible d'utiliser des fonctions des librairies :
Code Haskell : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 longueurDesTextes = map length listeDeTextes
--
Jedaï
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager