# Functional Programming ## 📘 Resources - [xgrommx/awesome-functional-programming](https://github.com/xgrommx/awesome-functional-programming) - Yet another resource for collecting articles, videos etc. regarding functional programming - [lucasviola/awesome-functional-programming](https://github.com/lucasviola/awesome-functional-programming) - A curated list of functional programming resources such as blog posts, communities, discussion topics, wikis and more. ## 📕 Articles - [Functional C#: Immutability](https://enterprisecraftsmanship.com/posts/functional-c-immutability/) - [Functional C#: Primitive obsession](https://enterprisecraftsmanship.com/posts/functional-c-primitive-obsession/) - [Functional C#: Non-nullable reference types](https://enterprisecraftsmanship.com/posts/functional-c-non-nullable-reference-types/) - [Functional C#: Handling failures, input errors](https://enterprisecraftsmanship.com/posts/functional-c-handling-failures-input-errors/) - [Union types in C# - Event-Driven.io](https://www.notion.so/mehdihadeli/Union-types-in-C-Event-Driven-io-4737f97b80e84ba2b5f5c530cbe4eae0) ## 📺 Videos - [Functional Programming for Pragmatists • Richard Feldman • GOTO 2021](https://www.youtube.com/watch?v=3n17wHe5wEw) - [Domain Modeling Made Functional - Scott Wlaschin - KanDDDinsky 2019](https://www.youtube.com/watch?v=2JB1_e5wZmU) ## 📦 Libraries - [mcintyre321/OneOf](https://github.com/mcintyre321/OneOf) - Easy to use F#-like ~discriminated~ unions for C# with exhaustive compile time matching - [ardalis/Result](https://github.com/ardalis/Result) - A result abstraction that can be mapped to HTTP response codes if needed.