Elixir et les paramètres par défaut
Pour définir un paramètre par défaut dans une fonction de module, Elixir
fournit l’opérateur //
:
$ elixir test.exs
a
z
Beaucoup d’autres langages permettent la même chose, en général à l’aide
de l’opérateur d’affection =
. Si Elixir utilise //
à la place de =
,
ça n’est pas par goût de l’étrange ou par snobisme. Avec Elixir l’opérateur
=
fait plus que de l’affectation, =
fait aussi du
pattern matching.
Et d’après ce que j’ai pu voir, le pattern matching est interdit dans
la définition des paramètres.
On peut bien sûr mixer paramètre normal et paramètre par défaut:
$ elixir test.exs
a b
a z
Encore une fois c’est comme avec un tas d’autres langages. On place les paramètres par défaut à la fin. Mais Elixir va plus loin en permettant de placer les paramètres par défaut n’importe où:
$ elixir test.exs
a z
C’est peut-être un classique de la programmation fonctionnelle, mais moi, c’est la première fois que je vois ça. Je ne sais pas encore si c’est utile, mais au moins c’est possible. Si vous connaissez d’autres langages qui permettent ce truc, laissez moi un commentaire, je suis curieux.
À demain.