A collection of problems, concepts, and explorations Iβve practiced while learning Haskell. This repository serves as a personal journey through functional programming, with examples ranging from beginner concepts to more advanced functional patterns.
This repo contains:
- β Solved problems β coding challenges implemented in Haskell.
- β Concept explorations β experiments with Haskellβs core concepts like recursion, higher-order functions, type classes, monads, etc.
- β Notes & references β explanations and takeaways for quick revision.
Whether youβre just starting out with Haskell or revisiting functional programming fundamentals, you might find these snippets useful.
haskell-dsa/
βββ problems/ # Coding challenges & exercises
βββ README.md # You are here
Make sure you have GHC (Glasgow Haskell Compiler) or GHCup installed:
ghc --versionYou can install via GHCup:
curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | shTo compile and run a file:
ghc filename.hs -o output
./outputOr run directly with runghc:
runghc filename.hsSome of the Haskell concepts Iβve explored here include:
- Functions & Recursion
- Higher-Order Functions
- Pattern Matching & Guards
- List Comprehensions
- Type Classes & Instances
- Functors, Applicatives, and Monads
- IO in Haskell
- Problem-solving with a functional mindset
- Strengthen my functional programming skills
- Build a solid foundation in Haskell
- Document my learning journey
This repo is mainly for my personal practice, but if you spot improvements or want to add new problems/concepts, feel free to open a pull request or issue.
This project is open-source under the MIT License.