Haskell is an open-source functional computer programming language that was first conceived in 1990. Haskell is named after Haskell Curry, a mathematician and logician famous for creating combinatory logic, the primary concept behind functional programming language. Haskell is also considered to be a purely functional programming language because all computation is performed on the basis of the evaluation of expressions.
Haskell incorporates all of its functions and structure from a mathematical system, more specifically lambda calculus. The language operates on immutable data and expressions, where the primary structure of the program is preserved while still maintaining the amended structure. Some of the key features of Haskell programming language are the implementation of:
Lazy Evaluation/Lazy: The evaluation of expressions is held back until required by other computations/expressions.
Polymorphism: The type of a value can be or can take different type based on how it is used within the functional context.
Statically Typed: All errors in a program can be checked before execution or run time.