En programmation impérative, nous avons généralement du code qui ressemble à ceci :
func addOneToSlice(xs []int) []int { rs := make([]int, len(xs)) for i, value := range xs { rs[i] = value 1 } return rs }
Cependant, notez ce qui suit à propos de la boucle for :
Comparez comment la même tâche serait effectuée en F# :
let rec addOneToList = function | [] -> [] | x :: xs -> x 1 :: addOneToList xs
Considérez maintenant ce qui suit :
Compte tenu de ces restrictions, ajouter 1 à tout élément y qui ne se trouve pas en tête de liste modifierait considérablement la structure de notre fonction.
Comparez maintenant la progression du calcul dans les deux styles :
Dans un style fonctionnel, marier les deux portées avec les progrès informatiques a les conséquences suivantes :
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3