Haskell est un langage de programmation purement fonctionnel basé entièrement sur des processus mathématiques et logiques. La programmation fonctionnelle est une forme de programmation déclarative, ce qui signifie que le programme se concentre sur sa nature et ce qu'il doit accomplir plutôt que de détailler et d'ordonner comment cela doit être fait (comme le fait la programmation impérative). La nature purement fonctionnelle de Haskell fournit aux développeurs un code simple qu'ils peuvent étudier pour comprendre clairement la logique du programme, sans parcourir les commandes et les longues sections de code.
Caractéristiques de Haskell et programmation fonctionnelle
La programmation fonctionnelle rend le code plus facile à analyser; c'est logique, mathématique et spécifique. Haskell est l'un des principaux exemples d'un langage purement fonctionnel. Il a été nommé en l'honneur de Haskell Brooks Curry, un mathématicien et logicien dont les travaux ont jeté les bases des langages de programmation fonctionnelle à développer. Haskell est populaire parmi certaines entreprises, comme la finance et la technologie, qui nécessitent des processus mathématiques très spécifiques, corrects et explicites.
Les caractéristiques de Haskell (et de la programmation purement fonctionnelle en général) comprennent:
Pur fonctions ils sont plus faciles à analyser et à tester et sont indépendants des événements extérieurs. Les fonctions pures, en d'autres termes, renvoient la même réponse à chaque fois, sans affecter les autres sections du programme.
Non effets secondaires parce que les fonctions renvoient la même valeur à chaque fois qu'elles sont appelées, elles n'ont pas d'effets secondaires ailleurs dans le programme. Un effet secondaire modifie souvent l'état du programme lui-même, pas seulement la zone locale dans laquelle il apparaît. Parce que les fonctions sont pures, les développeurs sont capables d'éviter tout effet secondaire lorsqu'ils travaillent dans Haskell.
Évaluation paresseuse le programme n'évaluera une fonction que lorsqu'il le faut absolument. Il n'évaluera pas les fonctions simplement parce que. C'est plus efficace.
Typage statique le programmeur doit attribuer un type de données à une variable lors du développement du programme. En règle générale, le programme prendra alors ce type pour chaque instance suivante de la variable.