This repository contains the material and code developed during my university classes on Functional Programming, using Haskell as the primary language.
The repository is organized into different sections that cover the main topics of Functional Programming, including:
- Simple recursion: Basic examples of recursive functions.
- Recursion techniques: Advanced methods to optimize recursion.
- General recursion: Applications of recursion to solve more complex problems.
- List manipulation, including filtering, mapping, and reducing elements.
- Implementation of sorting algorithms using recursion.
- Using combinators to create more complex functions from simpler ones.
- Examples of solving mathematical problems using Haskell.
- Creating and manipulating recursive types.
- Using higher-order functions for greater abstraction.
- An implementation of the "Space Invaders" game made entirely in Haskell using CodeWorld.