En premier lieu: le plus important
Une fonction en programmation fonctionnelle est comme une valeur
On peut commencer !
Les Fonctions
Fonction simple
let bonjour =
printfn "Coucou"
on donne le nom de la fonction bonjour et à la ligne après le = on défini ce qu’elle fait.
ici, elle affiche dans la console « Coucou »
Fonction avec un paramètre
On reprend la même fonction sauf que si on rajoute un mot après son nom, celui ci deviens un paramètre de la fonction
let bonjourToi prenom =
printfn "Coucou %s" prenom
donc le paramètre est prenom
Fonction avec plusieurs paramètres
Identique sauf que l’on rajoute le nombre de paramètres que l’on veux
let bonjourVous prenom prenom2 =
printfn "Coucou %s et %s" prenom prenom2
Fonction avec un retour
on passe sur un nouveau modèle :
let NOM_FONCTION [Param1 .... ] [ : TYPE_RETOUR] =
CE_QUE_LA_FONCTION_FAIT
Voici la même fonction que précédément mais qui n’affiche pas, elle retourne le résultat dans un string
let bonjourToiString prenom : string =
sprintf "Coucou %s" prenom
Utilisation des fonctions
bonjour
bonjourToi "toto"
bonjourVous "toto" "tata"
printfn "%s" (bonjourToiString "toto2")
On vois que contrairement au programmation traditionnelle, on n’a pas besoin de mettre nos paramètres entre parenthèse.
Par contre si on veux utiliser une fonction avec un/plusieurs paramètre(s) dans une autre fonction on utilise quand même celles-ci,
mais pour entourer la fonction et ses paramètres
Conclusion
Le plus important est de retenir ceci
let NOM_FONCTION [Param1 .... ] [ : TYPE_RETOUR] =
CE_QUE_LA_FONCTION_FAIT
Nom de la fonction, des paramètres optionnels comme le type de retour si il y en a un
et enfin le code de la fonction