Aller au contenu

« Utilisateur:Gxtaillon/Brouillon » : différence entre les versions

Une page de Wikipédia, l'encyclopédie libre.
Contenu supprimé Contenu ajouté
Gxtaillon (discuter | contributions)
Aucun résumé des modifications
Gxtaillon (discuter | contributions)
Aucun résumé des modifications
Ligne 4 : Ligne 4 :
En [[informatique]], la '''[[programmation fonctionnelle]]''' est un [[paradigme (programmation)|paradigme de programmation]] permettant d'exprimer les [[sémantique opérationnelle|opérations]] nécessaire à l’[[exécution (informatique)|exécution]] d'un [[programme informatique|programme]] comme l'évaluation de [[fonction (mathématique)|fonctions mathématiques]]. Historiquement, les langages fonctionnels et spécialement ceux étant [[purement fonctionnel|pures]] n'ont pas fait l'objet d'une adoption importante au sein des professionnels informatique et encore aujourd'hui, il peut être difficile de trouver de la main d’œuvre qualifiée pour les utiliser<ref name="tiobe2015"/>. Les motivations principales qui ont alimentées le développement des langages fonctionnel sont la robustesse accrue des logiciels résultant, leur prédictibilité, et la simplification de la vérification de la [[calculabilité]] des problèmes<ref name="hudak1989"/><ref name="hudak2007"/>.
En [[informatique]], la '''[[programmation fonctionnelle]]''' est un [[paradigme (programmation)|paradigme de programmation]] permettant d'exprimer les [[sémantique opérationnelle|opérations]] nécessaire à l’[[exécution (informatique)|exécution]] d'un [[programme informatique|programme]] comme l'évaluation de [[fonction (mathématique)|fonctions mathématiques]]. Historiquement, les langages fonctionnels et spécialement ceux étant [[purement fonctionnel|pures]] n'ont pas fait l'objet d'une adoption importante au sein des professionnels informatique et encore aujourd'hui, il peut être difficile de trouver de la main d’œuvre qualifiée pour les utiliser<ref name="tiobe2015"/>. Les motivations principales qui ont alimentées le développement des langages fonctionnel sont la robustesse accrue des logiciels résultant, leur prédictibilité, et la simplification de la vérification de la [[calculabilité]] des problèmes<ref name="hudak1989"/><ref name="hudak2007"/>.


Cependant, ces même principes font leur apparition dans les langages impératifs comme [[c (langage)|C]]<ref name="hartel2004"/>, [[C++]]<ref name="socpp0001"/><ref name="funccpp2015"/>, [[C sharp|C#]]<ref name="socsharp0001"/>,
Cependant, ces même principes font leur apparition dans les langages impératifs comme [[c (langage)|C]]<ref name="hartel2004"/>, [[C++]]<ref name="socpp0001"/><ref name="funccpp2015"/>, [[C sharp|C#]]<ref name="socsharp0001"/><ref name="petricek2009"/>,




Ligne 24 : Ligne 24 :


<ref name="socsharp0001">{{cite web | url = http://stackoverflow.com/q/393757/1275256 | title = Why is C# a functional programmming language? | last = Rosenthal | first = Juliet | last2 = Cheng | first2 = Morgan | website = stackoverflow.com | accessdate = 2015-10-24 }}</ref>
<ref name="socsharp0001">{{cite web | url = http://stackoverflow.com/q/393757/1275256 | title = Why is C# a functional programmming language? | last = Rosenthal | first = Juliet | last2 = Cheng | first2 = Morgan | website = stackoverflow.com | accessdate = 2015-10-24 }}</ref>

<ref name="petricek2009">{{cite book | last = Petricek | first = Tomas | title = Real-World Functional Programming With examples in F# and C# | publisher = [[:en:Manning Publications]] | edition = 1st | date = 2010-12-25 | pages = 500 | language = English | url = https://www.manning.com/books/real-world-functional-programming | isbn = 9781933988924 }}</ref>
}}
}}

Version du 31 octobre 2015 à 20:40

Programmation fonctionnelle dans les langages non-fonctionnels

En informatique, la programmation fonctionnelle est un paradigme de programmation permettant d'exprimer les opérations nécessaire à l’exécution d'un programme comme l'évaluation de fonctions mathématiques. Historiquement, les langages fonctionnels et spécialement ceux étant pures n'ont pas fait l'objet d'une adoption importante au sein des professionnels informatique et encore aujourd'hui, il peut être difficile de trouver de la main d’œuvre qualifiée pour les utiliser[1]. Les motivations principales qui ont alimentées le développement des langages fonctionnel sont la robustesse accrue des logiciels résultant, leur prédictibilité, et la simplification de la vérification de la calculabilité des problèmes[2][3].

Cependant, ces même principes font leur apparition dans les langages impératifs comme C[4], C++[5][6], C#[7][8],



Références

  1. « TIOBE Programming Community Index », TIOBE Software BV (consulté le )
  2. Paul Hudak, « Conception, evolution, and application of functional programming languages », ACM Computing Surveys, vol. 21, no 3,‎ , p. 359–411 (DOI 10.1145/72551.72554, lire en ligne [PDF], consulté le )
  3. Paul Hudak, Hughes, J., Jones, S. P. et Wadler, P. « A history of Haskell: being lazy with class » () (DOI 10.1145/1238844.1238856, lire en ligne, consulté le )
    Third ACM SIGPLAN Conference on History of Programming Languages
  4. Pieter Hartel, Henk Muller et Hugh Glaser, « The Functional C experience », The Journal of Functional Programming, vol. 14, no 2,‎ , p. 129–135 (DOI 10.1017/S0956796803004817, lire en ligne [PDF]); David Mertz, « Functional programming in Python, Part 3 », IBM developerWorks (consulté le )(Part 1, Part 2)
  5. Derrick Turk, « Functional Programming in C++ », sur stackoverflow.com, (consulté le )
  6. Giorgos Dimtsas, « Functional C++, Abusing the type system like never before. », sur functionalcpp.wordpress.com (consulté le )
  7. Juliet Rosenthal et Morgan Cheng, « Why is C# a functional programmming language? », sur stackoverflow.com (consulté le )
  8. (en) Tomas Petricek, Real-World Functional Programming With examples in F# and C#, 1st, , 500 p. (ISBN 9781933988924, lire en ligne)