This document provides an overview of key concepts in Haskell including:
- Functions are defined without variables and evaluate to the same result given the same parameters.
- Haskell is a purely functional programming language that uses lazy evaluation.
- It has a static type system where types are known at compile time.
- Custom types can be defined and typeclasses like Eq and Ord can be implemented for these types.
- Type parameters allow types to be generic and type synonyms provide aliases.