Functional Programming with C#
summary
Shows how to write functional C# using only built‑in features: LINQ and IEnumerable, Func delegates, extension methods, switch expressions, records and init properties. Demonstrates concrete patterns — CSV parser, NINO validator turned into an array of Funcs + .All, fork/map/join, Aggregate-based reporting — and implements Identity and Maybe/Either monads (bind/map), currying/partial application helpers, and memory/speed tradeoffs. Claims code becomes ~half the size and far easier to unit test and parallelize.
AI-written summary · about
chapters (20)
- 0:00Introduction
- 1:26Functional programming history
- 3:11Functional programming versus object-oriented programming
- 6:44Core FP principles
- 10:59Where FP fits best
- 14:29When FP isn't ideal
- 16:13FP benefits in C#
- 17:38Imperative vs functional code
- 20:46Validating data functionally
- 24:00Pattern matching for validation
- 27:33Forking and joining data
- 30:49Pattern matching in C#
- 32:57Immutability in C#
- 36:31Records and updates
- 38:14Currying in C#
- 41:50Aggregation and functional data processing
- 45:42Monads and railway architecture
- 53:46Errors and nulls with monads
- 59:27FP libraries for C#
- 1:02:52Q&A
related talks
58mFunctional Programming with C#
01h 03mFunctional Programming with C#
56mFunctional Programming on .NET - The Best of Both Worlds
01h 08mThinking Functionally with C#
44mFunctional Programming You Already Know
37mLet's get more functional
58mFunctional Techniques for C#
43mTransforming your C# code to Functional Style
