métaboulie
Update functional_programming/README.md
30a81e1 unverified
# Learn Functional Programming
_🚧 This collection is a [work in progress](https://github.com/marimo-team/learn/issues/51)._
This series of marimo notebooks introduces the powerful paradigm of functional
programming through Python. Taking inspiration from Haskell and Category
Theory, we'll build a strong foundation in FP concepts that can transform how
you approach software development.
## What You'll Learn
**Using only Python's standard library**, we'll construct functional
programming concepts from first principles.
Topics include:
+ Currying and higher-order functions
+ Functors, Applicatives, and Monads
+ Category theory fundamentals
## Running Notebooks
### Locally
To run a notebook locally, use
```bash
uvx marimo edit <URL>
```
For example, run the `Functor` tutorial with
```bash
uvx marimo edit https://github.com/marimo-team/learn/blob/main/functional_programming/05_functors.py
```
### On Our Online Playground
You can also open notebooks in our online playground by appending `marimo.app/` to a notebook's URL like:
https://marimo.app/https://github.com/marimo-team/learn/blob/main/functional_programming/05_functors.py
### On Our Landing Page
Open the notebooks in our landing page page [here](https://marimo-team.github.io/learn/functional_programming/05_functors.html)
## Collaboration
If you're interested in collaborating or have questions, please reach out to me
on Discord (@eugene.hs).
## Description of notebooks
Check [here](https://github.com/marimo-team/learn/issues/51) for current series
structure.
| Notebook | Title | Key Concepts | Prerequisites |
|----------|-------|--------------|---------------|
| [05. Functors](https://github.com/marimo-team/learn/blob/main/functional_programming/05_functors.py) | Category Theory and Functors | Category Theory, Functor, fmap, Bifunctor | Basic Python, Functions |
| [06. Applicatives](https://github.com/marimo-team/learn/blob/main/functional_programming/06_applicatives.py) | Applicative programming with effects | Applicative Functor, pure, apply, Effectful programming, Alternative | Functors |
**Authors.**
Thanks to all our notebook authors!
- [métaboulie](https://github.com/metaboulie)
**Reviewers.**
Thanks to all our notebook reviews!
- [Haleshot](https://github.com/Haleshot)