Functional Programming is becoming increasingly popular and relevant with each year that goes by. With so much discussion around languages such as F#, Haskell and Erlang, it can seem as though getting started with Functional programming would mean first learning a whole new syntax...but what if it didn't? Most .NET developers are familiar with the use of Linq, and basic constructs such as IEnumerable, Func delegates, arrow functions and ternary expressions, but did you know that you can use all of this to implement some of the most powerful patterns and techniques from the world of functional programming? This talk will demonstrate how, using only familiar features available in out-of-the-box C#, to write Functional code that is:
I've been working as a .NET developer for over 16 years now in a variety of industries including government, retail and manufacturing. But I've been hacking around with computer code since I was old enough to read my Dad's copy of the ZX Spectrum BASIC coders manual. I've been speaking about Functional C# at various user groups and conferences around the UK, USA, Europe and Australia and am particularly interested in seeing just how far we can push C# without breaking it. I'm currently working on a book for O'Reilly publications about functional programming with C#. Expected to appear in bookshops some time in 2023. When I'm not coding, or running after my two small children, I have been known to enjoy the classic series of Doctor Who, Fighting Fantasy Gamebooks, Cryptic Crosswords, and rather more coffee than is probably good for me.