// BLOG

Elm #8 - Opérateurs

Les opérateurs c'est barbant ! Ce chapitre ne va pas être très passionnant, je vais juste énumérer les principaux opérateurs disponibles dans Elm à titre de pense bête.

Rédigé le 15.10.2018
Par Gilles Vauvarin

Elm Programmation fonctionnelle

Opérateurs

Ce chapitre ne va pas être très passionnant, je vais juste énumérer les principaux opérateurs disponibles dans Elm à titre de pense bête.

Les tableaux ci-dessous sont une traduction française des tableaux se trouvant à l’adresse : https://github.com/izdi/elm-cheat-sheet

Pour faire simple, les opérateurs Elm sont des fonctions qui prennent deux paramètres et renvoient un résultat.

Dans les tableaux ci-dessous, les opétareurs seront classés par catégories :

- Les opérateurs arithmétiques

- Les opérateurs bits

- Les opérateurs de comparaison

- Les opérateurs logiques

- Les opérateurs de composition de fonctions

- Les opérateurs autres

Arithmetique

Opérateur
Description
Type

+
addition
number -> number -> number

-
soustraction
number -> number -> number

*
multiplication
number -> number -> number

/
division avec décimale
Float -> Float -> Float

//
division entère
Int -> Int -> Int

^
exposant
number -> number -> number

%
modulo (reste de la division)
Int -> Int -> Int

Bits (bitwise)

Opérateur
Description
Type

and
bitwise AND
Int -> Int -> Int

or
bitwise OR
Int -> Int -> Int

xor
biwise XOR
Int -> Int -> Int

Comparaison

Opérateur
Description
Type

==
égalité
comparable -> comparable -> Bool

/=
non égale
comparable -> comparable -> Bool

<
inférieur à
comparable -> comparable -> Bool

<=
inférieur ou égal à
comparable -> comparable -> Bool

>
supérieur à
comparable -> comparable -> Bool

>=
supérieur ou égale à
comparable -> comparable -> Bool

Logique

Opérateur
Description
Type

&&
logique “and”
Bool -> Bool -> Bool

||
logique “or”
Bool -> Bool -> Bool

not
logique not
Bool -> Bool

Composition de fonctions

Opérateur
Description
Type

<|
backward (pipe) f <| x == f x
(a -> b) -> a -> b

|>
forward (pipe)x |> f == f x
a -> (a -> b) -> b

<<
compose plusieurs fonctions en une seule, les paramètres s’appliquent d’abord à la fonction de droite
(b -> c) -> (a -> b) -> a -> c

>>
Idem que ci-dessus sauf que les paramètres s’appliquent d’abord à la fonction de gauche
(a -> b) -> (b -> c) -> a -> c

Autre

Opérateur
Description
Type

++
concaténation
appendable -> appendable -> appendable

::
ajouter un élément en début de liste
a -> List a -> List a

as
mot clé pour créer un alias pour une valeur (x, y) as t == t = (x, y)
a -> a

Sources:
https://github.com/izdi/elm-cheat-sheet

Disclaimer:
Etant un total débutant dans le langage Elm et la programmation fonctionnel, il se peut que des incompréhensions ou des erreurs se soient glissées dans mes explications. Si vous en remarquez, merci de me les signaler pour que je puisse les corriger au plus vite.