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